Zac Dannelly
/
serial2Way
2-way comms for mbed appBoard and Xbees
main.cpp@2:80be7d8aaaa3, 2015-02-15 (annotated)
- Committer:
- dannellyz
- Date:
- Sun Feb 15 04:47:03 2015 +0000
- Revision:
- 2:80be7d8aaaa3
- Parent:
- 1:2513e17b33db
added LCD
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dannellyz | 0:bbc1e8143334 | 1 | //Pins for xbee on appBord found on back |
dannellyz | 0:bbc1e8143334 | 2 | //tx = p9 |
dannellyz | 0:bbc1e8143334 | 3 | //rx = p10 |
dannellyz | 0:bbc1e8143334 | 4 | //status = p29 |
dannellyz | 0:bbc1e8143334 | 5 | //reset = p30 |
dannellyz | 0:bbc1e8143334 | 6 | |
dannellyz | 0:bbc1e8143334 | 7 | //Code to send and recieve serial comms on |
dannellyz | 0:bbc1e8143334 | 8 | //mbed appBoard with xbees |
dannellyz | 0:bbc1e8143334 | 9 | #include "mbed.h" |
dannellyz | 2:80be7d8aaaa3 | 10 | #include "C12832_lcd.h" // Include for LCD code |
dannellyz | 0:bbc1e8143334 | 11 | |
dannellyz | 0:bbc1e8143334 | 12 | //Initialize xbee |
dannellyz | 0:bbc1e8143334 | 13 | Serial xbee(p9, p10); |
dannellyz | 0:bbc1e8143334 | 14 | DigitalOut rst1(p30); |
dannellyz | 0:bbc1e8143334 | 15 | |
dannellyz | 0:bbc1e8143334 | 16 | //Initialize terminal |
dannellyz | 0:bbc1e8143334 | 17 | Serial pc(USBTX, USBRX); |
dannellyz | 2:80be7d8aaaa3 | 18 | |
dannellyz | 2:80be7d8aaaa3 | 19 | //Initialize lcd |
dannellyz | 2:80be7d8aaaa3 | 20 | C12832_LCD lcd; |
dannellyz | 0:bbc1e8143334 | 21 | |
dannellyz | 0:bbc1e8143334 | 22 | int main() { |
dannellyz | 0:bbc1e8143334 | 23 | // reset the xbees (at least 200ns) |
dannellyz | 0:bbc1e8143334 | 24 | rst1 = 0; |
dannellyz | 0:bbc1e8143334 | 25 | wait_ms(1); |
dannellyz | 0:bbc1e8143334 | 26 | rst1 = 1; |
dannellyz | 2:80be7d8aaaa3 | 27 | wait_ms(1); |
dannellyz | 2:80be7d8aaaa3 | 28 | //Setup LCD screen |
dannellyz | 2:80be7d8aaaa3 | 29 | lcd.cls(); //...they want to see which parameters they want to edit |
dannellyz | 2:80be7d8aaaa3 | 30 | lcd.locate(0,1); |
dannellyz | 0:bbc1e8143334 | 31 | while(1) { |
dannellyz | 2:80be7d8aaaa3 | 32 | //variable to get data from xbee |
dannellyz | 2:80be7d8aaaa3 | 33 | char toPrint; |
dannellyz | 2:80be7d8aaaa3 | 34 | |
dannellyz | 2:80be7d8aaaa3 | 35 | //If terminal data available send through xbee |
dannellyz | 0:bbc1e8143334 | 36 | if(pc.readable()) { |
dannellyz | 0:bbc1e8143334 | 37 | xbee.putc(pc.getc()); |
dannellyz | 0:bbc1e8143334 | 38 | } |
dannellyz | 2:80be7d8aaaa3 | 39 | //If xbee gets data send to terminal and lcd screen |
dannellyz | 0:bbc1e8143334 | 40 | if(xbee.readable()) { |
dannellyz | 2:80be7d8aaaa3 | 41 | toPrint = xbee.getc(); |
dannellyz | 2:80be7d8aaaa3 | 42 | pc.putc(toPrint); |
dannellyz | 2:80be7d8aaaa3 | 43 | lcd.printf("%c",toPrint); |
dannellyz | 0:bbc1e8143334 | 44 | } |
dannellyz | 0:bbc1e8143334 | 45 | } |
dannellyz | 0:bbc1e8143334 | 46 | } |