Motoo Tanaka
/
ticker_test_180226
test program to demonstrate the ticker problem in mbed lib v158, v159
main.cpp@0:484d9f94f221, 2018-03-12 (annotated)
- Committer:
- Rhyme
- Date:
- Mon Mar 12 05:34:14 2018 +0000
- Revision:
- 0:484d9f94f221
commit before publishing
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Rhyme | 0:484d9f94f221 | 1 | #include "mbed.h" |
Rhyme | 0:484d9f94f221 | 2 | Ticker *tokei ; |
Rhyme | 0:484d9f94f221 | 3 | uint32_t edge_time = 0 ; |
Rhyme | 0:484d9f94f221 | 4 | |
Rhyme | 0:484d9f94f221 | 5 | void inc_sec(void) |
Rhyme | 0:484d9f94f221 | 6 | { |
Rhyme | 0:484d9f94f221 | 7 | __disable_irq() ; // Disable Interrupts |
Rhyme | 0:484d9f94f221 | 8 | edge_time++ ; |
Rhyme | 0:484d9f94f221 | 9 | __enable_irq() ; // Enable Interrupts |
Rhyme | 0:484d9f94f221 | 10 | } |
Rhyme | 0:484d9f94f221 | 11 | |
Rhyme | 0:484d9f94f221 | 12 | void init_timer(void) |
Rhyme | 0:484d9f94f221 | 13 | { |
Rhyme | 0:484d9f94f221 | 14 | tokei = new Ticker() ; |
Rhyme | 0:484d9f94f221 | 15 | tokei->attach(inc_sec, 1.0) ; |
Rhyme | 0:484d9f94f221 | 16 | } |
Rhyme | 0:484d9f94f221 | 17 | |
Rhyme | 0:484d9f94f221 | 18 | int main() { |
Rhyme | 0:484d9f94f221 | 19 | uint32_t count = 0 ; |
Rhyme | 0:484d9f94f221 | 20 | init_timer() ; |
Rhyme | 0:484d9f94f221 | 21 | |
Rhyme | 0:484d9f94f221 | 22 | printf("Ticker test program\n") ; |
Rhyme | 0:484d9f94f221 | 23 | while(1) { |
Rhyme | 0:484d9f94f221 | 24 | printf("%d: %d\n", count++, edge_time) ; |
Rhyme | 0:484d9f94f221 | 25 | wait(1.0) ; |
Rhyme | 0:484d9f94f221 | 26 | } |
Rhyme | 0:484d9f94f221 | 27 | } |