123
Fork of LG by
DeviceUserProtocolEncoder.h@161:efd949e8d536, 2016-05-15 (annotated)
- Committer:
- Diletant
- Date:
- Sun May 15 19:12:12 2016 +0000
- Revision:
- 161:efd949e8d536
- Child:
- 167:bedc0a9d559a
Device & ... update. Not final!!!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Diletant | 161:efd949e8d536 | 1 | #ifndef __DEVICE_USER_PROTOCOL_ENCODER_H__ |
Diletant | 161:efd949e8d536 | 2 | #define __DEVICE_USER_PROTOCOL_ENCODER_H__ |
Diletant | 161:efd949e8d536 | 3 | |
Diletant | 161:efd949e8d536 | 4 | //Response encoding state |
Diletant | 161:efd949e8d536 | 5 | typedef struct _DeviceUserProtocolEncoder { |
Diletant | 161:efd949e8d536 | 6 | uint8_t error; //Encode error encountered |
Diletant | 161:efd949e8d536 | 7 | uint8_t count; //Encoded bytes count |
Diletant | 161:efd949e8d536 | 8 | uint16_t CRC; //Current/final CRC of encoded packet |
Diletant | 161:efd949e8d536 | 9 | } DeviceUserProtocolEncoder; |
Diletant | 161:efd949e8d536 | 10 | |
Diletant | 161:efd949e8d536 | 11 | void InitUserProtocolEncoder(void); |
Diletant | 161:efd949e8d536 | 12 | |
Diletant | 161:efd949e8d536 | 13 | //Encoder elementary functions |
Diletant | 161:efd949e8d536 | 14 | void Encode8(uint8_t); |
Diletant | 161:efd949e8d536 | 15 | void Encode16(uint16_t); |
Diletant | 161:efd949e8d536 | 16 | |
Diletant | 161:efd949e8d536 | 17 | //Encoder common functions |
Diletant | 161:efd949e8d536 | 18 | void EncodeStart(void); |
Diletant | 161:efd949e8d536 | 19 | void EncodeEnd(void); |
Diletant | 161:efd949e8d536 | 20 | void EncodeFail(void); |
Diletant | 161:efd949e8d536 | 21 | void EncodeAddress(void); |
Diletant | 161:efd949e8d536 | 22 | void EncodeMessage(void); |
Diletant | 161:efd949e8d536 | 23 | void EncodeParameters(void); |
Diletant | 161:efd949e8d536 | 24 | void EncodeCRC(void); |
Diletant | 161:efd949e8d536 | 25 | |
Diletant | 161:efd949e8d536 | 26 | //Encoder specific functions |
Diletant | 161:efd949e8d536 | 27 | void EncodeDeviceMode(void); |
Diletant | 161:efd949e8d536 | 28 | void EncodeSysRgR(void); |
Diletant | 161:efd949e8d536 | 29 | |
Diletant | 161:efd949e8d536 | 30 | void EncodeBINSDiff(void); |
Diletant | 161:efd949e8d536 | 31 | void EncodeValidBINS(void); |
Diletant | 161:efd949e8d536 | 32 | |
Diletant | 161:efd949e8d536 | 33 | #endif /* __DEVICE_USER_PROTOCOL_ENCODER_H__ */ |