📄 rs485.h
字号:
#define OUTPUTS_ON RD4
#define PKT_START 0x02
#define PKT_STOP 0x04
#define PKT_WAIT_START 0
#define PKT_WAIT_ADDR 1
#define PKT_WAIT_LEN 2
#define PKT_WAIT_CMD 3
#define PKT_WAIT_DATA 4
#define PKT_WAIT_STOP 5
#define PKT_WAIT_CRC_HIGH 6
#define PKT_WAIT_CRC_LOW 7
#define PKT_COMPLETE 8
#define PKT_VALID 9
#define PKT_INVALID 255
#define SENSOR_POLL_CMD 0xA1
#define SENSOR_PING_SYNC 0xA2
#define SENSOR_CONFIG 0xA3
#define SENSOR_GET_DATA 0xA4
#define SENSOR_ACK 0xB0
#define SENSOR_NAK 0xC0
#ifndef _485_LOC_
extern unsigned char cOurAddr;
extern unsigned char cRs485RxChar;
extern unsigned char cRS485State;
extern unsigned char cRetFlag;
extern unsigned char cStart,cStop;
extern unsigned char cNetAddr;
extern unsigned char cLenExpected;
extern unsigned char cCommand;
extern unsigned char cRxCrcHigh, cRxCrcLow;
extern unsigned char cCalcCrcHigh, cCalcCrcLow;
extern unsigned char cBufPtr;
bank1 extern unsigned char c485Buf[32];
#endif
unsigned char Rs485Process(void);
void Rs485Initialize(unsigned char cAddr);
unsigned char Rs485Decode( void );
void Rs485UpdateCrc(unsigned char cVal );
void CRC16_Init( void );
void CRC16_Update4Bits( unsigned char val );
void Rs485SendPacket( unsigned char cCmd, unsigned char cLen,unsigned char *cData );
void Rs485GetPacket( unsigned char *cCom,unsigned char *cLen,unsigned char *cData );
void Rs485SendChar(unsigned char c );
unsigned char PostValidatePacket(void);
unsigned char PacketHasPayload(void);
void ConfigureComms(void);
void Setup(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -