Li Weiyi
/
Cube
Microduino的cube小车。
Protocol.h@3:e4ac7c1a14de, 2016-05-27 (annotated)
- Committer:
- lixianyu
- Date:
- Fri May 27 01:44:31 2016 +0000
- Revision:
- 3:e4ac7c1a14de
- Parent:
- 1:758ccab13947
- Child:
- 4:0670023d3f36
???????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lixianyu | 3:e4ac7c1a14de | 1 | #include "Microduino_Protocol_HardSer.h" |
lixianyu | 1:758ccab13947 | 2 | |
lixianyu | 1:758ccab13947 | 3 | //BLE////////////////////// |
lixianyu | 3:e4ac7c1a14de | 4 | Serial pc(P0_4,P0_0); |
lixianyu | 3:e4ac7c1a14de | 5 | Protocol bleProtocol(&pc, TYPE_NUM); //软串口,校验数据类 |
lixianyu | 1:758ccab13947 | 6 | |
lixianyu | 1:758ccab13947 | 7 | #define this_node 1 //设置本机ID |
lixianyu | 1:758ccab13947 | 8 | #define other_node 0 |
lixianyu | 1:758ccab13947 | 9 | struct send_a { //发送 |
lixianyu | 1:758ccab13947 | 10 | uint32_t node_ms; //节点运行时间 |
lixianyu | 1:758ccab13947 | 11 | }; |
lixianyu | 1:758ccab13947 | 12 | struct receive_a { //接收 |
lixianyu | 1:758ccab13947 | 13 | uint32_t ms; |
lixianyu | 1:758ccab13947 | 14 | uint16_t rf_CH[CHANNEL_NUM]; |
lixianyu | 1:758ccab13947 | 15 | }; |
lixianyu | 1:758ccab13947 | 16 | |
lixianyu | 1:758ccab13947 | 17 | //Mode////////////////////// |
lixianyu | 1:758ccab13947 | 18 | enum _Mode { |
lixianyu | 1:758ccab13947 | 19 | NRF, |
lixianyu | 1:758ccab13947 | 20 | BLE |
lixianyu | 1:758ccab13947 | 21 | }; |
lixianyu | 1:758ccab13947 | 22 | |
lixianyu | 3:e4ac7c1a14de | 23 | bool protocolSetup(void) |
lixianyu | 1:758ccab13947 | 24 | { |
lixianyu | 3:e4ac7c1a14de | 25 | bleProtocol.begin(BLE_SPEED); |
lixianyu | 3:e4ac7c1a14de | 26 | return BLE; |
lixianyu | 1:758ccab13947 | 27 | } |
lixianyu | 1:758ccab13947 | 28 | |
lixianyu | 1:758ccab13947 | 29 | bool protocolRead(uint16_t *_channel, bool _mode) |
lixianyu | 1:758ccab13947 | 30 | { |
lixianyu | 3:e4ac7c1a14de | 31 | switch (bleProtocol.parse(_channel, MODE_WHILE)) { |
lixianyu | 3:e4ac7c1a14de | 32 | case P_NONE: //DATA NONE |
lixianyu | 3:e4ac7c1a14de | 33 | break; |
lixianyu | 3:e4ac7c1a14de | 34 | case P_FINE: //DATA OK |
lixianyu | 3:e4ac7c1a14de | 35 | return true; |
lixianyu | 3:e4ac7c1a14de | 36 | break; |
lixianyu | 3:e4ac7c1a14de | 37 | case P_ERROR: //DATA ERROR |
lixianyu | 1:758ccab13947 | 38 | #ifdef BLE_SoftSerial |
lixianyu | 3:e4ac7c1a14de | 39 | mySerial.stopListening(); |
lixianyu | 3:e4ac7c1a14de | 40 | mySerial.listen(); |
lixianyu | 1:758ccab13947 | 41 | #endif |
lixianyu | 3:e4ac7c1a14de | 42 | break; |
lixianyu | 3:e4ac7c1a14de | 43 | case P_TIMEOUT: //DATA TIMEOUT |
lixianyu | 1:758ccab13947 | 44 | #ifdef BLE_SoftSerial |
lixianyu | 3:e4ac7c1a14de | 45 | mySerial.stopListening(); |
lixianyu | 3:e4ac7c1a14de | 46 | mySerial.listen(); |
lixianyu | 1:758ccab13947 | 47 | #endif |
lixianyu | 3:e4ac7c1a14de | 48 | break; |
lixianyu | 1:758ccab13947 | 49 | } |
lixianyu | 1:758ccab13947 | 50 | return false; |
lixianyu | 1:758ccab13947 | 51 | } |