manu jose
/
1hourMaster
Master 1 hr . takes input form the serial connection of PC
main.cpp
- Committer:
- manujose
- Date:
- 2010-12-04
- Revision:
- 0:219eacd4c264
File content as of revision 0:219eacd4c264:
#include "problemb1.h" //void Timer2_IRQHandler(void); //Serial pc(p9,p10); Ticker debug; //static struct pt pt1,pt2,pt3; int main() { //wait(2); pc.printf("ENTERING MAIN JOBS\n"); sync.baud(460800); initialSetup(); int p; //On any sync request from slave, respond to it sync.attach(&resp_sync_request); timeval rt; runAtTrigger(&reportToggle); char c; int i; int count =0; unsigned int tt; union { timeval t; char BYTE[8]; } ttt; tt=NUM_MICRO_SEC*15; wait (4); while (1) { count++; if (pc.readable()) { c ='k'; i=0; pc.printf("DAT REC\n"); while (pc.readable() && (c !='S')) c=pc.getc(); c=pc.getc(); while (pc.readable() &&(c !='E')) { if (c!=' ') { tt=tt*10+atoi(&c); } c = pc.getc(); } while (pc.readable()) c = pc.getc(); // pc.printf(" RECV = %d \n",tt); if (tt>= NUM_MICRO_SEC) { ttt.t.tv_sec = tt/NUM_MICRO_SEC; ttt.t.tv_usec = tt - ttt.t.tv_sec*NUM_MICRO_SEC; } else { ttt.t.tv_sec =0; //less than a sec ttt.t.tv_usec = tt; } serial2.putc(ttt.BYTE[0]); serial2.putc(ttt.BYTE[1]); serial2.putc(ttt.BYTE[2]); serial2.putc(ttt.BYTE[3]); serial2.putc(ttt.BYTE[4]); serial2.putc(ttt.BYTE[5]); serial2.putc(ttt.BYTE[6]); serial2.putc(ttt.BYTE[7]); runAtTime(&pinToggle, &ttt.t); pc.printf("DATA RECV :%d SEC %d AND MICRO %d \n",tt,ttt.t.tv_sec,ttt.t.tv_usec); } } }