2-way comms for mbed appBoard and Xbees

Dependencies:   mbed C12832_lcd

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?

UserRevisionLine numberNew 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 }