New xbee sent protocol
Dependencies: mbed C12832 XBee
main.cpp@0:ce2085295a51, 2016-03-10 (annotated)
- Committer:
- nnoitre
- Date:
- Thu Mar 10 14:20:19 2016 +0000
- Revision:
- 0:ce2085295a51
- Child:
- 1:9ffff91aeeb2
Checking of the joystic and xbee commands work
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nnoitre | 0:ce2085295a51 | 1 | #include "mbed.h" |
nnoitre | 0:ce2085295a51 | 2 | |
nnoitre | 0:ce2085295a51 | 3 | DigitalOut myled1(LED1); |
nnoitre | 0:ce2085295a51 | 4 | DigitalOut myled2(LED2); |
nnoitre | 0:ce2085295a51 | 5 | DigitalOut myled3(LED3); |
nnoitre | 0:ce2085295a51 | 6 | DigitalOut myled4(LED4); |
nnoitre | 0:ce2085295a51 | 7 | |
nnoitre | 0:ce2085295a51 | 8 | DigitalIn down(p12); |
nnoitre | 0:ce2085295a51 | 9 | DigitalIn left(p13); |
nnoitre | 0:ce2085295a51 | 10 | DigitalIn up(p15); |
nnoitre | 0:ce2085295a51 | 11 | DigitalIn right(p16); |
nnoitre | 0:ce2085295a51 | 12 | |
nnoitre | 0:ce2085295a51 | 13 | Serial xbee(p9,p10); |
nnoitre | 0:ce2085295a51 | 14 | |
nnoitre | 0:ce2085295a51 | 15 | char Source=0b00000010; |
nnoitre | 0:ce2085295a51 | 16 | char Des,Item,Status,Checksum; |
nnoitre | 0:ce2085295a51 | 17 | |
nnoitre | 0:ce2085295a51 | 18 | |
nnoitre | 0:ce2085295a51 | 19 | |
nnoitre | 0:ce2085295a51 | 20 | void send(){ |
nnoitre | 0:ce2085295a51 | 21 | xbee.putc(0x7E); |
nnoitre | 0:ce2085295a51 | 22 | myled1=1; |
nnoitre | 0:ce2085295a51 | 23 | wait(0.01); |
nnoitre | 0:ce2085295a51 | 24 | xbee.putc(Source); |
nnoitre | 0:ce2085295a51 | 25 | myled2=1; |
nnoitre | 0:ce2085295a51 | 26 | wait(0.01); |
nnoitre | 0:ce2085295a51 | 27 | xbee.putc(Des); |
nnoitre | 0:ce2085295a51 | 28 | myled3=1; |
nnoitre | 0:ce2085295a51 | 29 | wait(0.01); |
nnoitre | 0:ce2085295a51 | 30 | xbee.putc(Item); |
nnoitre | 0:ce2085295a51 | 31 | myled4=1; |
nnoitre | 0:ce2085295a51 | 32 | wait(0.01); |
nnoitre | 0:ce2085295a51 | 33 | xbee.putc(Status); |
nnoitre | 0:ce2085295a51 | 34 | myled1=0; |
nnoitre | 0:ce2085295a51 | 35 | wait(0.01); |
nnoitre | 0:ce2085295a51 | 36 | xbee.putc(Checksum); |
nnoitre | 0:ce2085295a51 | 37 | myled2=0; |
nnoitre | 0:ce2085295a51 | 38 | wait(0.1); |
nnoitre | 0:ce2085295a51 | 39 | xbee.putc(0x7E); |
nnoitre | 0:ce2085295a51 | 40 | myled3=0; |
nnoitre | 0:ce2085295a51 | 41 | wait(0.1); |
nnoitre | 0:ce2085295a51 | 42 | xbee.putc(0xD); |
nnoitre | 0:ce2085295a51 | 43 | myled4=0; |
nnoitre | 0:ce2085295a51 | 44 | } |
nnoitre | 0:ce2085295a51 | 45 | |
nnoitre | 0:ce2085295a51 | 46 | int main() { |
nnoitre | 0:ce2085295a51 | 47 | while(1) { |
nnoitre | 0:ce2085295a51 | 48 | xbee.baud(57600); |
nnoitre | 0:ce2085295a51 | 49 | if(up&&!left&&!right){ |
nnoitre | 0:ce2085295a51 | 50 | myled1 = 1; |
nnoitre | 0:ce2085295a51 | 51 | } |
nnoitre | 0:ce2085295a51 | 52 | if(up&&right){ |
nnoitre | 0:ce2085295a51 | 53 | myled1=1; |
nnoitre | 0:ce2085295a51 | 54 | myled2=1; |
nnoitre | 0:ce2085295a51 | 55 | } |
nnoitre | 0:ce2085295a51 | 56 | if(right&&!up&&!down){ |
nnoitre | 0:ce2085295a51 | 57 | myled2 = 1; |
nnoitre | 0:ce2085295a51 | 58 | } |
nnoitre | 0:ce2085295a51 | 59 | if(down&&right){ |
nnoitre | 0:ce2085295a51 | 60 | myled2=1; |
nnoitre | 0:ce2085295a51 | 61 | myled3=1; |
nnoitre | 0:ce2085295a51 | 62 | } |
nnoitre | 0:ce2085295a51 | 63 | if(down&&!left&&!right){ |
nnoitre | 0:ce2085295a51 | 64 | myled3 = 1; |
nnoitre | 0:ce2085295a51 | 65 | } |
nnoitre | 0:ce2085295a51 | 66 | if(down&&left){ |
nnoitre | 0:ce2085295a51 | 67 | myled3=1; |
nnoitre | 0:ce2085295a51 | 68 | myled4=1; |
nnoitre | 0:ce2085295a51 | 69 | } |
nnoitre | 0:ce2085295a51 | 70 | if(left&&!up&&!down){ |
nnoitre | 0:ce2085295a51 | 71 | myled4 = 1; |
nnoitre | 0:ce2085295a51 | 72 | } |
nnoitre | 0:ce2085295a51 | 73 | if(up&&left){ |
nnoitre | 0:ce2085295a51 | 74 | myled1=1; |
nnoitre | 0:ce2085295a51 | 75 | myled4=1; |
nnoitre | 0:ce2085295a51 | 76 | } |
nnoitre | 0:ce2085295a51 | 77 | wait(0.2); |
nnoitre | 0:ce2085295a51 | 78 | myled1=0; |
nnoitre | 0:ce2085295a51 | 79 | myled2=0; |
nnoitre | 0:ce2085295a51 | 80 | myled3=0; |
nnoitre | 0:ce2085295a51 | 81 | myled4=0; |
nnoitre | 0:ce2085295a51 | 82 | send(); |
nnoitre | 0:ce2085295a51 | 83 | } |
nnoitre | 0:ce2085295a51 | 84 | } |