Current (on Nov. 15th, 2014) LPC1114 Ticker function has a trouble after one hour and 11 minutes after due to 32bit timer overflow. I hope this will be fine by mbed support team.
Please refer following Note.
http://developer.mbed.org/users/kenjiArai/notebook/lpc1114fn28---suggestion-for-improvement/#
main.cpp@0:d54a5362ac2a, 2014-11-15 (annotated)
- Committer:
- kenjiArai
- Date:
- Sat Nov 15 08:00:10 2014 +0000
- Revision:
- 0:d54a5362ac2a
This is a test program for Ticker function. After 1h12m, ticker function does NOT work anymore due to 32bit timer overflow.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kenjiArai | 0:d54a5362ac2a | 1 | /* |
kenjiArai | 0:d54a5362ac2a | 2 | * mbed Application program / Ticker has a bug!? |
kenjiArai | 0:d54a5362ac2a | 3 | * by Kenji Arai / JH1PJL |
kenjiArai | 0:d54a5362ac2a | 4 | * http://mbed.org/users/kenjiArai/ |
kenjiArai | 0:d54a5362ac2a | 5 | * Created: Nobember 15th, 2014 |
kenjiArai | 0:d54a5362ac2a | 6 | */ |
kenjiArai | 0:d54a5362ac2a | 7 | #include "mbed.h" |
kenjiArai | 0:d54a5362ac2a | 8 | |
kenjiArai | 0:d54a5362ac2a | 9 | Ticker t; |
kenjiArai | 0:d54a5362ac2a | 10 | |
kenjiArai | 0:d54a5362ac2a | 11 | uint32_t t_count; |
kenjiArai | 0:d54a5362ac2a | 12 | uint8_t flag; |
kenjiArai | 0:d54a5362ac2a | 13 | |
kenjiArai | 0:d54a5362ac2a | 14 | void cyclic(void){ flag = 1;} |
kenjiArai | 0:d54a5362ac2a | 15 | |
kenjiArai | 0:d54a5362ac2a | 16 | int main(void){ // PLease wait 1 hour 11 minutes and 34.9 seconds |
kenjiArai | 0:d54a5362ac2a | 17 | t.attach(&cyclic, 1.0); |
kenjiArai | 0:d54a5362ac2a | 18 | flag = 0; |
kenjiArai | 0:d54a5362ac2a | 19 | t_count = 0; |
kenjiArai | 0:d54a5362ac2a | 20 | while(true) { |
kenjiArai | 0:d54a5362ac2a | 21 | while(flag == 0){ |
kenjiArai | 0:d54a5362ac2a | 22 | wait(0.1); |
kenjiArai | 0:d54a5362ac2a | 23 | printf("."); |
kenjiArai | 0:d54a5362ac2a | 24 | } |
kenjiArai | 0:d54a5362ac2a | 25 | flag = 0; |
kenjiArai | 0:d54a5362ac2a | 26 | printf("\r\nt_count=%8d, TMR32B1=%14d\r\n", ++t_count, LPC_TMR32B1->TC); |
kenjiArai | 0:d54a5362ac2a | 27 | } |
kenjiArai | 0:d54a5362ac2a | 28 | } |