123
Fork of LG by
DeviceUserProtocolDecoder.h
- Committer:
- Diletant
- Date:
- 2016-07-03
- Revision:
- 177:672ef279c8e0
- Parent:
- 167:bedc0a9d559a
File content as of revision 177:672ef279c8e0:
#ifndef __DEVICE_USER_PROTOCOL_DECODER_H__ #define __DEVICE_USER_PROTOCOL_DECODER_H__ //Requests decoding state typedef struct _DeviceUserProtocolDecoder { uint8_t error; //Decode error encountered uint8_t canceled; //Decode canceled flag: continue decoding when clear (new data arrived) uint8_t count; //Decoded bytes count uint8_t last; //Last attempt decoded bytes count: do not send Decode8() debug message if (last > count) uint8_t address; //Decoded request address uint8_t version; //Decoded protocol version (currently only 0 version exist) uint16_t code; //Decoded command code uint16_t position;//Current decoder position in input buffer uint16_t CRC; //Current/final CRC of decoded packet uint32_t param0; //Function call parameter 0 uint32_t param1; //Function call parameter 1 uint32_t param2; //Function call parameter 2 uint32_t param3; //Function call parameter 3 } DeviceUserProtocolDecoder; void InitUserProtocolDecoderDefaultSettings(void); void InitUserProtocolDecoderState(void); void DeviceStartUserProtocolDecoder(void); //Host communication main functions void userDecodeRequests(void); //Decode requests from receive buffer void userDecodePin(void); //Decode hardware pin request void userEncodeResponse(void); //Encode response to transmit buffer //Decoder elementary functions uint8_t Decode8(void); uint16_t Decode16(void); uint32_t Decode32(void); //Decoder common functions void DecodeStart(void); void DecodeEnd(void); void DecodeCancel(void); void DecodeFail(void); void DecodeAddress(void); void DecodeCode(void); void DecodeExtentionCode(void); void DecodeCRC(void); //Decoder factory functions void DecodeFactory(void); //Decoder data output functions void DecodeDeviceMode(void); void DecodeDelta(void); //Decoder maintenance functions void DecodeMaintenanceMode(void); void DecodeMBasic(void); void DoMaintenanceClear(void); void DoMaintenanceMirror(void); void DoMaintenanceStart(void); void DoMaintenanceStop(void); void DecodeBITMode(void); void DecodeMStymul(void); void DecodeMReset(void); void DecodeMCtlR(void); void DecodeMCtlM(void); void DecodeMADCR(void); void DecodeMTmpW(void); void DecodeMTmpR(void); void DecodeMe5rW(void); void DecodeMCntR(void); void DecodeMFlgR(void); void DecodeMVibW(void); void DecodeMGphW(void); void DecodeMRate(void); void DecodeMRate2(void); void DecodeMRate3(void); void DecodeMParamR(void); void DecodeMParamW(void); void DecodeMe5raW(void); #endif /* __DEVICE_USER_PROTOCOL_DECODER_H__ */