Bus comms (external protocol) with xbee code for end device

Dependencies:   C12832_lcd mbed xbee_lib

Committer:
dannellyz
Date:
Sun Feb 15 06:26:55 2015 +0000
Revision:
0:1b9f7485eb2c
Bus comms (external protocol) with xbee

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dannellyz 0:1b9f7485eb2c 1 #include "mbed.h"
dannellyz 0:1b9f7485eb2c 2 #include "xbee.h" // Include for xbee code
dannellyz 0:1b9f7485eb2c 3 #include "C12832_lcd.h" // Include for LCD code
dannellyz 0:1b9f7485eb2c 4 #include <stdio.h> //Include for sprintf
dannellyz 0:1b9f7485eb2c 5
dannellyz 0:1b9f7485eb2c 6 xbee xbee1(p9,p10,p30); //Initalise xbee_lib varName(rx,tx,reset)
dannellyz 0:1b9f7485eb2c 7 DigitalOut rst1(p30);
dannellyz 0:1b9f7485eb2c 8 Serial pc(USBTX, USBRX); //Initalise PC serial comms
dannellyz 0:1b9f7485eb2c 9 C12832_LCD lcd; //Initialize LCD Screen
dannellyz 0:1b9f7485eb2c 10
dannellyz 0:1b9f7485eb2c 11 //Initialize the joystick on the appBoard as a Bus
dannellyz 0:1b9f7485eb2c 12 BusIn joy(p15,p12,p13,p16);
dannellyz 0:1b9f7485eb2c 13 //Set the button as a Digital In
dannellyz 0:1b9f7485eb2c 14 DigitalIn fire(p14);
dannellyz 0:1b9f7485eb2c 15
dannellyz 0:1b9f7485eb2c 16 int main()
dannellyz 0:1b9f7485eb2c 17 {
dannellyz 0:1b9f7485eb2c 18 // reset the xbees (at least 200ns)
dannellyz 0:1b9f7485eb2c 19 rst1 = 0;
dannellyz 0:1b9f7485eb2c 20 wait_ms(1);
dannellyz 0:1b9f7485eb2c 21 rst1 = 1;
dannellyz 0:1b9f7485eb2c 22 wait_ms(1);
dannellyz 0:1b9f7485eb2c 23 //Setup LCD screen
dannellyz 0:1b9f7485eb2c 24 lcd.cls();
dannellyz 0:1b9f7485eb2c 25 lcd.locate(0,1);
dannellyz 0:1b9f7485eb2c 26
dannellyz 0:1b9f7485eb2c 27 char sendData[1]; //Buffer to send value of bus
dannellyz 0:1b9f7485eb2c 28
dannellyz 0:1b9f7485eb2c 29 while(1) {
dannellyz 0:1b9f7485eb2c 30
dannellyz 0:1b9f7485eb2c 31 //Digital pin to check for button press
dannellyz 0:1b9f7485eb2c 32 int yes = 0;
dannellyz 0:1b9f7485eb2c 33
dannellyz 0:1b9f7485eb2c 34 //If pressed send 9
dannellyz 0:1b9f7485eb2c 35 if(fire) {
dannellyz 0:1b9f7485eb2c 36 yes = 1;
dannellyz 0:1b9f7485eb2c 37 sprintf (sendData, "%d", 9);
dannellyz 0:1b9f7485eb2c 38 }
dannellyz 0:1b9f7485eb2c 39 //Else send value of the Bus
dannellyz 0:1b9f7485eb2c 40 else{
dannellyz 0:1b9f7485eb2c 41 sprintf (sendData, "%d", joy.read());
dannellyz 0:1b9f7485eb2c 42 }
dannellyz 0:1b9f7485eb2c 43
dannellyz 0:1b9f7485eb2c 44 xbee1.SendData(sendData); //Send data to XBee
dannellyz 0:1b9f7485eb2c 45
dannellyz 0:1b9f7485eb2c 46 //Local of value sent
dannellyz 0:1b9f7485eb2c 47 lcd.printf("Value = %s \n", sendData);
dannellyz 0:1b9f7485eb2c 48 wait(0.1);
dannellyz 0:1b9f7485eb2c 49
dannellyz 0:1b9f7485eb2c 50
dannellyz 0:1b9f7485eb2c 51
dannellyz 0:1b9f7485eb2c 52 }
dannellyz 0:1b9f7485eb2c 53 }