![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
app4
Dependencies: mbed-rtos mbed CRC16
Fork of S5info_APP2 by
uart.h
- Committer:
- ericbisson
- Date:
- 2017-03-06
- Revision:
- 8:5b87b1f9d91f
- Child:
- 9:01be68364986
File content as of revision 8:5b87b1f9d91f:
#include <vector> #include "mbed.h" using std::vector; #define RETURN_EMPTYVECTOR(x) return vector<x>(); const char PREAMBULE = 0b01010101; const char START = 0b01111110; const char END = 0b01111110; const char FLAGS = 0x00; const char MAX_LENGTH = 80; vector<char> uart_read(Serial& COM, Serial& pc) { vector<char> result; while (COM.readable()) { result.push_back(COM.getc()); wait_ms(8); // 9600 bits/secondes, donc ~1ms par bit } if (result.size() > 7) { if (result[0] != PREAMBULE || result[1] != START || result[2] != result.size() - 7 || result.back() != END) { RETURN_EMPTYVECTOR(char); } result.push_back('\0'); // end of string pour pouvoir l'afficher return vector<char>(&result[4], &result[result.size()-4]); } RETURN_EMPTYVECTOR(char); }