FEP receive

Dependents:   34_emStop_FEP_receive

Committer:
THtakahiro702286
Date:
Fri Oct 08 07:23:21 2021 +0000
Revision:
0:b0bd3bee5ab4
new

Who changed what in which revision?

UserRevisionLine numberNew contents of line
THtakahiro702286 0:b0bd3bee5ab4 1 #ifndef FEP_H
THtakahiro702286 0:b0bd3bee5ab4 2 #define FEP_H
THtakahiro702286 0:b0bd3bee5ab4 3
THtakahiro702286 0:b0bd3bee5ab4 4 #include "mbed.h"
THtakahiro702286 0:b0bd3bee5ab4 5
THtakahiro702286 0:b0bd3bee5ab4 6 #define FEP_BUFFER_SIZE 22
THtakahiro702286 0:b0bd3bee5ab4 7 #define FEP_HEADER0 'R'
THtakahiro702286 0:b0bd3bee5ab4 8 #define FEP_HEADER1 'B'
THtakahiro702286 0:b0bd3bee5ab4 9 #define FEP_HEADER2 'N'
THtakahiro702286 0:b0bd3bee5ab4 10 #define TIMEOUT_COUNT 10
THtakahiro702286 0:b0bd3bee5ab4 11
THtakahiro702286 0:b0bd3bee5ab4 12 class FEP : public RawSerial
THtakahiro702286 0:b0bd3bee5ab4 13 {
THtakahiro702286 0:b0bd3bee5ab4 14 public :
THtakahiro702286 0:b0bd3bee5ab4 15 FEP(PinName tx, PinName rx, uint8_t addr, int baud=115200);
THtakahiro702286 0:b0bd3bee5ab4 16
THtakahiro702286 0:b0bd3bee5ab4 17 void startReceive(uint16_t dataSize);
THtakahiro702286 0:b0bd3bee5ab4 18 void getData(uint8_t data_[]);
THtakahiro702286 0:b0bd3bee5ab4 19 void sendData(uint8_t data_[], uint8_t length);
THtakahiro702286 0:b0bd3bee5ab4 20 bool status;
THtakahiro702286 0:b0bd3bee5ab4 21
THtakahiro702286 0:b0bd3bee5ab4 22 private :
THtakahiro702286 0:b0bd3bee5ab4 23 void receiveByte();
THtakahiro702286 0:b0bd3bee5ab4 24 void checkData();
THtakahiro702286 0:b0bd3bee5ab4 25 void timeoutLoop();
THtakahiro702286 0:b0bd3bee5ab4 26
THtakahiro702286 0:b0bd3bee5ab4 27 uint8_t *buffer;
THtakahiro702286 0:b0bd3bee5ab4 28 uint8_t bufferPoint;
THtakahiro702286 0:b0bd3bee5ab4 29 uint8_t receivedBytes;
THtakahiro702286 0:b0bd3bee5ab4 30
THtakahiro702286 0:b0bd3bee5ab4 31 uint16_t bufferSize;
THtakahiro702286 0:b0bd3bee5ab4 32 uint8_t* data;
THtakahiro702286 0:b0bd3bee5ab4 33
THtakahiro702286 0:b0bd3bee5ab4 34 uint8_t _address;
THtakahiro702286 0:b0bd3bee5ab4 35
THtakahiro702286 0:b0bd3bee5ab4 36 Ticker timeoutTicker;
THtakahiro702286 0:b0bd3bee5ab4 37 int timeout;
THtakahiro702286 0:b0bd3bee5ab4 38 };
THtakahiro702286 0:b0bd3bee5ab4 39
THtakahiro702286 0:b0bd3bee5ab4 40 #endif