yusuke takahashi
/
Xbee_test
go
Revision 0:30c83ede1f0b, committed 2013-03-28
- Comitter:
- yusuke_robocup
- Date:
- Thu Mar 28 07:43:56 2013 +0000
- Commit message:
- usart
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 30c83ede1f0b main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Thu Mar 28 07:43:56 2013 +0000 @@ -0,0 +1,65 @@ +#include "mbed.h" + +#define KEYCODE 120 +#define GOSA 8 + +BusOut mbedleds(LED4,LED3,LED2,LED1); + +Serial device(p13, p14); // tx, rx + +Serial pc(USBTX, USBRX); // tx, rx + +volatile int8_t data[8]; +volatile uint8_t value[4]; + +void dev_rx () { + static uint8_t count; + + data[count] = device.getc(); + + if(data[0] == KEYCODE){ + count++; + } else { + count = 0; + data[0] = 0; + data[1] = 0; //左スティック縦 + data[2] = 0; //左スティック横 + data[3] = 0; //右スティック縦 + data[4] = 0; //右スティック横 + data[5] = 0; //Lボタン + data[6] = 0; //Rボタン + data[7] = 0; + } + if(count > 7){ + if(data[7] == (data[1] ^ data[2] ^ data[3] ^ data[4] ^ data[5] ^ data[6])){ + if(data[1] < 0){ + value[0] = (-(data[1] + data[1])); + } else { + value[0] = (data[1] + data[1]); + } + if(data[2] < 0){ + value[1] = (-(data[2] + data[2])); + } else { + value[1] = (data[2] + data[2]); + } + if(data[4] < 0){ + value[2] = (-(data[4] + data[4])); + } else { + value[2] = (data[4] + data[4]); + } + } + count = 0; + } + +} + +int main() { + device.baud(9600); + device.attach(&dev_rx); + + for(;;){ + //pc.printf("%d\n",data[1]*-1); + //pc.printf("%d\n",data[2]); + //pc.printf("%d\n",data[4]); + } +}
diff -r 000000000000 -r 30c83ede1f0b mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Thu Mar 28 07:43:56 2013 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/3753e96f3c8b \ No newline at end of file