📄 comm.h
字号:
#ifndef _COMM_H_
#define _COMM_H_
#include "typedef.h"
////////////////////////////////////////////////////////////////////////////
// MACROS DEFINE BLOCK
#define EMPTY ((uint8_t)1)
#define FULL ((uint8_t)0)
#define COMM_RECE_MAX_BUF ((uint8_t)32) // receive data buffer size
#define COMM_RECE_READ_BUF ((uint8_t)16) // read receive data buffer size
#define COMM_SEND_MAX_BUF ((uint8_t)48) // send data buffer size
#define INBUF_MASK (uint8_t)((uint8_t)COMM_RECE_MAX_BUF - (uint8_t)1)
#define DATARANG (uint32_t)((uint32_t)0xFFFFFFFF-(uint32_t)COMM_RECE_MAX_BUF)
#define COMM_RECEIVE_NORMAL ((uint8_t)0x02)
#define COMM_RECEIVE_TRUE ((uint8_t)0x01)
#define COMM_RECEIVE_FALSE ((uint8_t)0x00)
////////////////////////////////////////////////////////////////////////////
// DATA TYPE DEFINE BLOCK
typedef struct
{
union UartState
{
struct BIT
{
uint8_t bAutotestSameCMD: 1,
bSending : 1,
bReserved : 6;
} BITS;
uint8_t ucValue;
} state;
uint8_t ucSendPush;
uint8_t ucSendPop;
uint8_t ucReadPush;
uint8_t ucReadPop;
uint8_t sendbuf[COMM_SEND_MAX_BUF];
uint8_t recebuf[COMM_RECE_MAX_BUF];
uint8_t ucProtocolStep;
uint8_t ucPackageStep;
uint8_t ucRet;
uint8_t ucLength;
uint8_t ucPreample;
uint8_t ucCommand;
uint8_t ucReceiveIndex;
uint8_t ucReadBuffer[COMM_RECE_READ_BUF];
} SERIAL_COMM_ST;
////////////////////////////////////////////////////////////////////////////
// GLOBAL EXTERN VARIABLES DEFINE BLOCK
extern SERIAL_COMM_ST stComm;
////////////////////////////////////////////////////////////////////////////
// GLOBAL EXTERN FUNCTIONS PROTOTYPE DEFINE BLOCK
uint8_t CommDataRead(uint8_t* buf, uint8_t len);
uint8_t CommDataSend(const uint8_t *p,uint8_t ucSendNum);
void SerialCommInit(void);
void AuToTestHandle(void);
#endif // #define _COMM_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -