Atsumi Toda
/
twe-_lite_receive
twe-liteを使った受信プログラム。透過モードに非ず。
main.cpp@0:b2737a0c9620, 2018-02-18 (annotated)
- Committer:
- Joeatsumi
- Date:
- Sun Feb 18 23:29:11 2018 +0000
- Revision:
- 0:b2737a0c9620
twe-lite?????????????????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Joeatsumi | 0:b2737a0c9620 | 1 | #include "mbed.h" |
Joeatsumi | 0:b2737a0c9620 | 2 | Serial twe(p9, p10); // tx, rx |
Joeatsumi | 0:b2737a0c9620 | 3 | Serial pc(USBTX,USBRX); |
Joeatsumi | 0:b2737a0c9620 | 4 | |
Joeatsumi | 0:b2737a0c9620 | 5 | char rpm_array[5] = "0000";//実は末尾にnullがあるので、要素が4つでも配列では5つの箱を用意している |
Joeatsumi | 0:b2737a0c9620 | 6 | char dam; |
Joeatsumi | 0:b2737a0c9620 | 7 | |
Joeatsumi | 0:b2737a0c9620 | 8 | int rpm=0; |
Joeatsumi | 0:b2737a0c9620 | 9 | |
Joeatsumi | 0:b2737a0c9620 | 10 | DigitalOut myled(LED1); |
Joeatsumi | 0:b2737a0c9620 | 11 | |
Joeatsumi | 0:b2737a0c9620 | 12 | void rpm_f()//文字列から数値への変換 |
Joeatsumi | 0:b2737a0c9620 | 13 | { |
Joeatsumi | 0:b2737a0c9620 | 14 | |
Joeatsumi | 0:b2737a0c9620 | 15 | rpm = atoi(rpm_array); |
Joeatsumi | 0:b2737a0c9620 | 16 | rpm-=1000; |
Joeatsumi | 0:b2737a0c9620 | 17 | |
Joeatsumi | 0:b2737a0c9620 | 18 | } |
Joeatsumi | 0:b2737a0c9620 | 19 | |
Joeatsumi | 0:b2737a0c9620 | 20 | |
Joeatsumi | 0:b2737a0c9620 | 21 | int main() { |
Joeatsumi | 0:b2737a0c9620 | 22 | |
Joeatsumi | 0:b2737a0c9620 | 23 | twe.baud(115200); |
Joeatsumi | 0:b2737a0c9620 | 24 | pc.baud(115200); |
Joeatsumi | 0:b2737a0c9620 | 25 | |
Joeatsumi | 0:b2737a0c9620 | 26 | while(1) { |
Joeatsumi | 0:b2737a0c9620 | 27 | |
Joeatsumi | 0:b2737a0c9620 | 28 | if(twe.getc()==':'){ |
Joeatsumi | 0:b2737a0c9620 | 29 | if(twe.getc()=='0'){//送信してきた相手のIDは0x01 |
Joeatsumi | 0:b2737a0c9620 | 30 | if(twe.getc()=='1'){ |
Joeatsumi | 0:b2737a0c9620 | 31 | dam=twe.getc();//数値とは関係ないのでdamに入れて無視をする |
Joeatsumi | 0:b2737a0c9620 | 32 | dam=twe.getc();// |
Joeatsumi | 0:b2737a0c9620 | 33 | for (int i = 0; i <= 4; i++) { |
Joeatsumi | 0:b2737a0c9620 | 34 | rpm_array[i] =twe.getc();//高度の受信rpm+1000の値を文字列として受け取る |
Joeatsumi | 0:b2737a0c9620 | 35 | |
Joeatsumi | 0:b2737a0c9620 | 36 | } |
Joeatsumi | 0:b2737a0c9620 | 37 | } |
Joeatsumi | 0:b2737a0c9620 | 38 | } |
Joeatsumi | 0:b2737a0c9620 | 39 | } |
Joeatsumi | 0:b2737a0c9620 | 40 | |
Joeatsumi | 0:b2737a0c9620 | 41 | rpm_f(); |
Joeatsumi | 0:b2737a0c9620 | 42 | pc.printf("Rpm=%d",rpm); |
Joeatsumi | 0:b2737a0c9620 | 43 | |
Joeatsumi | 0:b2737a0c9620 | 44 | }//while |
Joeatsumi | 0:b2737a0c9620 | 45 | }//int main() |