uart.h
来自「本文档用于描述一体化组合模块485监控板监控对象」· C头文件 代码 · 共 50 行
H
50 行
#ifndef __UART_H__
#define __UART_H__
void Init_UART0();
void UART_receive_loop();
void UART_Send();
void Response_error(U8 ErrorCode);
void Deal_data();
U16 CRC_generator(U8 *CrcArray, U8 length);
U8 Verify_CRC(U8 *CrcArray, U8 length);
void Add_CRC(U8 *CrcArray, U8 length);
U8 Decode_data();
void Code_data(U8 length);
void Command_distill(void);
#define RETURN_DATA() \
{ \
memcpy(UARTContext.TxBuff,UARTContext.RxBuff,UARTContext.RxLen); \
UARTContext.TxLen=UARTContext.RxLen; \
UART_Send(); \
}
#define RESET_RECEIVER() \
{ \
UARTContext.RxPt=UARTContext.RxBuff;/*Point to the receive buffer*/ \
UARTContext.RxLen=0; /*Clear Receive data Length*/ \
UARTContext.RxValidFlag=FALSE; /*None valid data*/ \
UARTContext.RxBeginFlag=FALSE; /*None Begin data*/ \
}
#define COMMAND_START 13
//===================================
// Response Code
//===================================
#define INERRANCY 0
#define CRC_ERROR 1
#define LENGTH_ERROR 2
#define ADDRESS_ERROR 3
//====================================
// Interface protocol length
//====================================
// | BEGIN | ADDRESS | COMMAND | FLAG | LENGTH | DATA | CRC | END |
// | 1 | 2 | 1 | 1 | 1 |unknow| 2 | 1 |
#define UART_LENGTH_LIMIT 9 // 1+2+1+1+1+unknow+2+1
#endif //__UART_H__
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?