Michael Chai
/
SimpleTimer
main.cpp@0:3f40f2168ae9, 2010-11-29 (annotated)
- Committer:
- mchai
- Date:
- Mon Nov 29 08:22:29 2010 +0000
- Revision:
- 0:3f40f2168ae9
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mchai | 0:3f40f2168ae9 | 1 | #include "mbed.h" |
mchai | 0:3f40f2168ae9 | 2 | #include "leds.h" |
mchai | 0:3f40f2168ae9 | 3 | #include "timers.h" |
mchai | 0:3f40f2168ae9 | 4 | |
mchai | 0:3f40f2168ae9 | 5 | Serial pc(USBTX, USBRX); // tx, rx |
mchai | 0:3f40f2168ae9 | 6 | |
mchai | 0:3f40f2168ae9 | 7 | TIMER0_INTERRUPT_HANDLER(void) |
mchai | 0:3f40f2168ae9 | 8 | { |
mchai | 0:3f40f2168ae9 | 9 | TIMER0_CLEAR_INTERRUPT(MR0_INT); |
mchai | 0:3f40f2168ae9 | 10 | LPC_TIM1->TC++; |
mchai | 0:3f40f2168ae9 | 11 | static int i = 0; |
mchai | 0:3f40f2168ae9 | 12 | i++; |
mchai | 0:3f40f2168ae9 | 13 | if(i%2) |
mchai | 0:3f40f2168ae9 | 14 | LEDS_SET(LED1); |
mchai | 0:3f40f2168ae9 | 15 | else |
mchai | 0:3f40f2168ae9 | 16 | LEDS_SET(LED2); |
mchai | 0:3f40f2168ae9 | 17 | } |
mchai | 0:3f40f2168ae9 | 18 | |
mchai | 0:3f40f2168ae9 | 19 | int main() { |
mchai | 0:3f40f2168ae9 | 20 | LEDS_INIT(); |
mchai | 0:3f40f2168ae9 | 21 | TIMER0_INIT(); |
mchai | 0:3f40f2168ae9 | 22 | TIMER0_SETPCLK(CCLK); |
mchai | 0:3f40f2168ae9 | 23 | TIMER0_SETPRESCALE(96); // 1ms |
mchai | 0:3f40f2168ae9 | 24 | TIMER0_SETMATCH(0, 1000000); |
mchai | 0:3f40f2168ae9 | 25 | TIMER0_SETMATCHCONTROL(0, MATCH_RESET | MATCH_INTERRUPT); // Reset and Interrupt each 100ms |
mchai | 0:3f40f2168ae9 | 26 | TIMER0_ENABLE_INTERRUPT(); |
mchai | 0:3f40f2168ae9 | 27 | TIMER0_START(); |
mchai | 0:3f40f2168ae9 | 28 | pc.printf("CCLK: %d", CCLK); |
mchai | 0:3f40f2168ae9 | 29 | |
mchai | 0:3f40f2168ae9 | 30 | int t = 0; |
mchai | 0:3f40f2168ae9 | 31 | while (1) { |
mchai | 0:3f40f2168ae9 | 32 | t = TIMER0_VALUE(); |
mchai | 0:3f40f2168ae9 | 33 | //pc.printf("TIMER: %d - %d", LPC_TIM1->TC, t); |
mchai | 0:3f40f2168ae9 | 34 | pc.printf("%d\n", LPC_TIM1->TC); |
mchai | 0:3f40f2168ae9 | 35 | wait(1); |
mchai | 0:3f40f2168ae9 | 36 | } |
mchai | 0:3f40f2168ae9 | 37 | } |