nkeynes@225: #include "../lib.h" nkeynes@225: #define TMU_CHANNEL 2 nkeynes@262: #define BASE_TICKS_PER_US 200 nkeynes@262: #define CLOCK_DIVIDER 16 nkeynes@225: #define TOCR 0xFFD80000 /* Output control register */ nkeynes@225: #define TSTR 0xFFD80004 /* Start register */ nkeynes@225: #define TCOR(c) (0xFFD80008 + (c*12)) /* Constant register */ nkeynes@225: #define TCNT(c) (0xFFD8000C + (c*12)) /* Count register */ nkeynes@225: #define TCR(c) (0xFFD80010 + (c*12)) /* Control register */ nkeynes@225: nkeynes@225: /** nkeynes@225: * Initialize the on-chip timer controller. We snag TMU channel 2 in its nkeynes@225: * highest resolution mode, and start it counting down from max_int. nkeynes@225: */ nkeynes@272: void timer_init() { nkeynes@262: unsigned int val = byte_read(TSTR); nkeynes@262: byte_write( TSTR, val & (~(1<