a

Dependencies:   TextLCD mbed

Committer:
akudohune
Date:
Tue Apr 30 09:06:57 2013 +0000
Revision:
1:ed00e9c4ba6e
Parent:
0:62ac378df546
ooo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
akudohune 0:62ac378df546 1
akudohune 0:62ac378df546 2 #include "mbed.h"
akudohune 0:62ac378df546 3 #include "uart1.h"
akudohune 0:62ac378df546 4
akudohune 0:62ac378df546 5 extern Serial device;
akudohune 1:ed00e9c4ba6e 6 extern BusOut mbedleds;
akudohune 1:ed00e9c4ba6e 7 //extern Serial pc;
akudohune 0:62ac378df546 8 extern int direction;
akudohune 0:62ac378df546 9 extern int Distance;
akudohune 0:62ac378df546 10 extern int IR_found;
akudohune 1:ed00e9c4ba6e 11 extern int AveDistance;
akudohune 0:62ac378df546 12 extern uint16_t ultrasonicVal[4];
akudohune 0:62ac378df546 13
akudohune 1:ed00e9c4ba6e 14 uint8_t xbee;
akudohune 1:ed00e9c4ba6e 15 uint8_t data[4];
akudohune 1:ed00e9c4ba6e 16
akudohune 1:ed00e9c4ba6e 17 extern uint8_t data2[5];
akudohune 0:62ac378df546 18
akudohune 0:62ac378df546 19 void dev_rx()
akudohune 0:62ac378df546 20 {
akudohune 1:ed00e9c4ba6e 21 static uint8_t count2 = 0;
akudohune 0:62ac378df546 22 static uint8_t RecData[RECEIVE_DATA_NUM];
akudohune 0:62ac378df546 23
akudohune 1:ed00e9c4ba6e 24
akudohune 1:ed00e9c4ba6e 25
akudohune 0:62ac378df546 26 RecData[count2] = device.getc();
akudohune 0:62ac378df546 27
akudohune 1:ed00e9c4ba6e 28 if(RecData[KEY2] == KEYCODE2){
akudohune 0:62ac378df546 29
akudohune 0:62ac378df546 30 count2++;
akudohune 0:62ac378df546 31 }else{
akudohune 0:62ac378df546 32 count2 = 0;
akudohune 0:62ac378df546 33 }
akudohune 0:62ac378df546 34 if(count2 >= RECEIVE_DATA_NUM){
akudohune 0:62ac378df546 35 if(RecData[CHECK2] == CHECKCODE2){
akudohune 1:ed00e9c4ba6e 36 //pc.printf("a");
akudohune 1:ed00e9c4ba6e 37 //mbedleds = 15;
akudohune 0:62ac378df546 38 data[0] = RecData[DATA1];
akudohune 0:62ac378df546 39 data[1] = RecData[DATA2];
akudohune 0:62ac378df546 40 data[2] = RecData[DATA3];
akudohune 0:62ac378df546 41 data[3] = RecData[DATA4];
akudohune 1:ed00e9c4ba6e 42 //pc.printf("%d\n",data[2]);
akudohune 0:62ac378df546 43 }
akudohune 0:62ac378df546 44 count2 = 0;
akudohune 0:62ac378df546 45 }
akudohune 0:62ac378df546 46 }
akudohune 0:62ac378df546 47
akudohune 0:62ac378df546 48 void dev_tx()
akudohune 0:62ac378df546 49 {
akudohune 1:ed00e9c4ba6e 50 static uint8_t count = 0;
akudohune 0:62ac378df546 51 static uint8_t SendData0[SEND_DATA_NUM];
akudohune 0:62ac378df546 52
akudohune 0:62ac378df546 53 if(count >= SEND_DATA_NUM){
akudohune 1:ed00e9c4ba6e 54 xbee = data2[0];
akudohune 0:62ac378df546 55 SendData0[KEY] = KEYCODE;
akudohune 0:62ac378df546 56 SendData0[DIRECTIONN] = direction;
akudohune 1:ed00e9c4ba6e 57 SendData0[DISTANCE] = AveDistance;
akudohune 0:62ac378df546 58 SendData0[SONIC1_1] = ultrasonicVal[0];
akudohune 0:62ac378df546 59 SendData0[SONIC1_2] = (ultrasonicVal[0] >> 8);
akudohune 0:62ac378df546 60 SendData0[SONIC2_1] = ultrasonicVal[1];
akudohune 0:62ac378df546 61 SendData0[SONIC2_2] = (ultrasonicVal[1] >> 8);
akudohune 0:62ac378df546 62 SendData0[SONIC3_1] = ultrasonicVal[2];
akudohune 0:62ac378df546 63 SendData0[SONIC3_2] = (ultrasonicVal[2] >> 8);
akudohune 0:62ac378df546 64 SendData0[SONIC4_1] = ultrasonicVal[3];
akudohune 0:62ac378df546 65 SendData0[SONIC4_2] = (ultrasonicVal[3] >> 8);
akudohune 1:ed00e9c4ba6e 66 SendData0[IR_FOUND] = IR_found;
akudohune 0:62ac378df546 67 SendData0[XBEE] = xbee;
akudohune 0:62ac378df546 68 SendData0[CHECK] = CHECKCODE;
akudohune 0:62ac378df546 69
akudohune 1:ed00e9c4ba6e 70 //pc.printf("%d\t%d\t%d\t%d\n",SendData0[DIRECTIONN],SendData0[DISTANCE],SendData0[IR_FOUND],SendData0[CHECK]);
akudohune 1:ed00e9c4ba6e 71
akudohune 0:62ac378df546 72 count = 0;
akudohune 0:62ac378df546 73 }
akudohune 0:62ac378df546 74 device.putc(SendData0[count]);
akudohune 0:62ac378df546 75
akudohune 0:62ac378df546 76 count++;
akudohune 0:62ac378df546 77 }