赤外線リモコンのパルス幅を表示します

Dependencies:   mbed IRRcevPulseWidth

Fork of irreceiver by Nobuki HIRAMINE

Committer:
nameless129
Date:
Sun May 15 15:52:48 2016 +0000
Revision:
1:cc9fd4010a3d
Parent:
0:883a77e07ad5
Child:
2:65739f894d3b
1????????????????;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nobuki 0:883a77e07ad5 1 #include "mbed.h"
nobuki 0:883a77e07ad5 2
nameless129 1:cc9fd4010a3d 3 DigitalIn g_dpinIrReceiver(p20);
nobuki 0:883a77e07ad5 4 Serial g_serial(USBTX, USBRX);
nobuki 0:883a77e07ad5 5
nobuki 0:883a77e07ad5 6 int main()
nobuki 0:883a77e07ad5 7 {
nobuki 0:883a77e07ad5 8 g_serial.baud(115200);
nobuki 0:883a77e07ad5 9
nobuki 0:883a77e07ad5 10 Timer timer;
nobuki 0:883a77e07ad5 11 timer.start();
nobuki 0:883a77e07ad5 12 int iMicroSec_prev = timer.read_us();
nameless129 1:cc9fd4010a3d 13 int iState,iState_prev = 1;
nameless129 1:cc9fd4010a3d 14 int iMicroSec,iMicroSec_diff;
nameless129 1:cc9fd4010a3d 15
nobuki 0:883a77e07ad5 16 while(1)
nobuki 0:883a77e07ad5 17 {
nameless129 1:cc9fd4010a3d 18 iState = g_dpinIrReceiver;
nobuki 0:883a77e07ad5 19 if( iState != iState_prev )
nobuki 0:883a77e07ad5 20 {
nobuki 0:883a77e07ad5 21 iState_prev = iState;
nameless129 1:cc9fd4010a3d 22 iMicroSec = timer.read_us();
nameless129 1:cc9fd4010a3d 23 iMicroSec_diff = iMicroSec - iMicroSec_prev;
nameless129 1:cc9fd4010a3d 24 if(iMicroSec_diff >= 1000000)
nameless129 1:cc9fd4010a3d 25 {
nameless129 1:cc9fd4010a3d 26 g_serial.printf( "\r\n\r\n");
nameless129 1:cc9fd4010a3d 27 }
nameless129 1:cc9fd4010a3d 28 else
nameless129 1:cc9fd4010a3d 29 {
nameless129 1:cc9fd4010a3d 30 g_serial.printf( "%d, ", iMicroSec_diff );
nameless129 1:cc9fd4010a3d 31 }
nobuki 0:883a77e07ad5 32 iMicroSec_prev = iMicroSec;
nobuki 0:883a77e07ad5 33 }
nobuki 0:883a77e07ad5 34 }
nobuki 0:883a77e07ad5 35 }