by Rob Toulson and Tim Wilmshurst from textbook "Fast and Effective Embedded Systems Design: Applying the ARM mbed"
Revision 0:3a237f51291d, committed 2013-05-24
- Comitter:
- robt
- Date:
- Fri May 24 21:48:08 2013 +0000
- Commit message:
- by Rob Toulson and Tim Wilmshurst from textbook "Fast and Effective Embedded Systems Design: Applying the ARM mbed"
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 3a237f51291d main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Fri May 24 21:48:08 2013 +0000 @@ -0,0 +1,35 @@ +/* Program Example 9.5: Tests Timer duration, displaying current time values to terminal + */ +#include "mbed.h" + +Timer t; +float s=0; //seconds cumulative count +float m=0; //minutes cumulative count +DigitalOut diag (LED1); +Serial pc(USBTX, USBRX); + +int main() { + pc.printf("\r\nTimer Duration Test\n\r"); + pc.printf("-------------------\n\n\r"); + t.reset(); //reset Timer + t.start(); // start Timer + while(1){ + if (t.read()>=(s+1)){ //has Timer passed next whole second? + diag = 1; //If yes, flash LED and print a message + wait (0.05); + diag = 0; + s++ ; + //print the number of seconds exceeding whole minutes + pc.printf("%1.0f seconds\r\n",(s-60*(m-1))); + } + if (t.read()>=60*m){ + printf("%1.0f minutes \n\r",m); + m++ ; + } + if (t.read()<s){ //test for overflow + pc.printf("\r\nTimer has overflowed!\n\r"); + for(;;){} //lock into an endless loop doing nothing + } + } //end of while +} +
diff -r 000000000000 -r 3a237f51291d mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Fri May 24 21:48:08 2013 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/b3110cd2dd17 \ No newline at end of file