daiki hiraoka
/
EMG
筋電センサプログラム
筋電
main.cpp
- Committer:
- dhpt
- Date:
- 2017-01-21
- Revision:
- 0:42ab58db8182
- Child:
- 1:91d6b2ee7a2e
File content as of revision 0:42ab58db8182:
/*** Include ***/ #include "mbed.h" #include "rtos.h" #include "typedef.h" /*** Define ***/ #define ON (1) #define OFF (0) #define SAMPLING_RATE (0.001) /* A/D sampling rate (1kHz) */ #define MAINCYCLE 200 /* [ms] */ /*** Global Variable ***/ DigitalOut myled(LED1); /* 起動確認用 */ Ticker sampling; /* Interval timer for A/D sampling */ AnalogIn wave_in(p20); /* Waveform input */ Serial pc(USBTX, USBRX); /* tx, rx */ Timer timer; UINT32 g_sendFlg; /*** Functions ***/ /* A/D変換割り込み */ void ad_sampling(){ INT32 i = 0; i++; /* A/D変換完了後送信 */ g_sendFlg = 1; } INT32 main() { INT32 i = 0; DBL64 st = 0; DBL64 et = 0; myled = 1; /* Start interval timer */ sampling.attach(&ad_sampling, SAMPLING_RATE); while(1) { /* timer read */ st = timer.read_ms(); /* メイン処理 */ myled = !myled; i++; /* データ送信判定 */ if(g_sendFlg == 1) { /* データ送信 */ i++; /* フラグリセット */ g_sendFlg = 0; } /* timer read */ et = timer.read_ms(); /* 制御周期まで待機 */ Thread::wait((uint32_t)(MAINCYCLE - (et - st))); } }