2019/09/13ver
Dependencies: SerialMultiByte QEI omni_wheel PID R1370MeasuringWheel IRsensor ikarashiMDC_2byte_ver
main.cpp@0:f68b460de813, 2019-09-13 (annotated)
- Committer:
- skouki
- Date:
- Fri Sep 13 02:17:39 2019 +0000
- Revision:
- 0:f68b460de813
2019/09/13ver
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
skouki | 0:f68b460de813 | 1 | #include"mbed.h" |
skouki | 0:f68b460de813 | 2 | #include"SerialMultiByte.h" |
skouki | 0:f68b460de813 | 3 | #include"pin_config.h" |
skouki | 0:f68b460de813 | 4 | |
skouki | 0:f68b460de813 | 5 | SerialMultiByte sita_s(S_SERIALTX,S_SERIALRX); |
skouki | 0:f68b460de813 | 6 | SerialMultiByte ue_s(U_SERIALTX,U_SERIALRX); |
skouki | 0:f68b460de813 | 7 | DigitalIn start(USER_BUTTON); |
skouki | 0:f68b460de813 | 8 | Serial pc(USBTX,USBRX,115200); |
skouki | 0:f68b460de813 | 9 | |
skouki | 0:f68b460de813 | 10 | DigitalOut debug_led_0(LED0); |
skouki | 0:f68b460de813 | 11 | DigitalOut debug_led_1(LED1); |
skouki | 0:f68b460de813 | 12 | DigitalOut debug_led_2(LED2); |
skouki | 0:f68b460de813 | 13 | DigitalIn debug_button(PC_4); |
skouki | 0:f68b460de813 | 14 | |
skouki | 0:f68b460de813 | 15 | int mode=0; |
skouki | 0:f68b460de813 | 16 | int u_mode=0,s_mode=0,m_mode=0; |
skouki | 0:f68b460de813 | 17 | unsigned char itidata[4]; |
skouki | 0:f68b460de813 | 18 | int X_,Y_; |
skouki | 0:f68b460de813 | 19 | int data_a; |
skouki | 0:f68b460de813 | 20 | |
skouki | 0:f68b460de813 | 21 | void to_sita(){ |
skouki | 0:f68b460de813 | 22 | unsigned char data[5]; |
skouki | 0:f68b460de813 | 23 | unsigned char getdata[1]; |
skouki | 0:f68b460de813 | 24 | data[0] = mode; |
skouki | 0:f68b460de813 | 25 | for(int i=0;i<4;i++){ |
skouki | 0:f68b460de813 | 26 | data[i+1] = itidata[i]; |
skouki | 0:f68b460de813 | 27 | } |
skouki | 0:f68b460de813 | 28 | sita_s.sendData(data,5); |
skouki | 0:f68b460de813 | 29 | sita_s.getData(getdata); |
skouki | 0:f68b460de813 | 30 | s_mode = getdata[0]; |
skouki | 0:f68b460de813 | 31 | } |
skouki | 0:f68b460de813 | 32 | |
skouki | 0:f68b460de813 | 33 | void to_ue(){ |
skouki | 0:f68b460de813 | 34 | unsigned char data[1]; |
skouki | 0:f68b460de813 | 35 | unsigned char getdata[5]; |
skouki | 0:f68b460de813 | 36 | data[0] = mode; |
skouki | 0:f68b460de813 | 37 | ue_s.sendData(data,1); |
skouki | 0:f68b460de813 | 38 | ue_s.getData(getdata); |
skouki | 0:f68b460de813 | 39 | u_mode=getdata[0]; |
skouki | 0:f68b460de813 | 40 | for(int i=0;i<4;i++){ |
skouki | 0:f68b460de813 | 41 | itidata[i] = getdata[i+1]; |
skouki | 0:f68b460de813 | 42 | } |
skouki | 0:f68b460de813 | 43 | } |
skouki | 0:f68b460de813 | 44 | |
skouki | 0:f68b460de813 | 45 | |
skouki | 0:f68b460de813 | 46 | int main() |
skouki | 0:f68b460de813 | 47 | { |
skouki | 0:f68b460de813 | 48 | sita_s.setHeaders('A','Z'); |
skouki | 0:f68b460de813 | 49 | sita_s.startReceive(1); |
skouki | 0:f68b460de813 | 50 | ue_s.setHeaders('A','Z'); |
skouki | 0:f68b460de813 | 51 | ue_s.startReceive(5); |
skouki | 0:f68b460de813 | 52 | debug_button.mode(PullDown); |
skouki | 0:f68b460de813 | 53 | while(1) |
skouki | 0:f68b460de813 | 54 | { |
skouki | 0:f68b460de813 | 55 | debug_led_0 = !debug_led_0; |
skouki | 0:f68b460de813 | 56 | to_ue(); |
skouki | 0:f68b460de813 | 57 | to_sita(); |
skouki | 0:f68b460de813 | 58 | if(!start)mode = 1; |
skouki | 0:f68b460de813 | 59 | if(mode==1&&s_mode ==2)mode = 2; |
skouki | 0:f68b460de813 | 60 | if(mode == 2&&u_mode == 0xff &&s_mode == 0xff)mode = 3; |
skouki | 0:f68b460de813 | 61 | if(mode == 3&&u_mode == 0xff &&s_mode == 0xff)mode = 5; |
skouki | 0:f68b460de813 | 62 | |
skouki | 0:f68b460de813 | 63 | |
skouki | 0:f68b460de813 | 64 | } |
skouki | 0:f68b460de813 | 65 | |
skouki | 0:f68b460de813 | 66 | |
skouki | 0:f68b460de813 | 67 | return 0; |
skouki | 0:f68b460de813 | 68 | } |