📄 define.h
字号:
//发送帧信息格式定义
typedef struct _SendFrame_OBJ
{
uchar RemoteFlag; //远程帧标志
uchar ExternFlag; //扩展帧标志
ulong ID; //标识符
uchar Priority; //优先级
uchar DataLen; //数据长度
uchar Data[8]; //数据域
}SendFrame_OBJ,*PSendFrame_OBJ;
SendFrame_OBJ SendFrame;
SendFrame_OBJ SendQue[20]; //发送帧信息存储结构数组
//接收帧信息格式定义
typedef struct _RecvFrame_OBJ
{
uchar RemoteFlag; //远程帧标志
uchar ExternFlag; //扩展帧标志
ulong ID; //标识符
ulong PGN; //参数组编号
uchar P; //优先权
uchar R; //保留位
uchar DP; //数据页
uchar PF; //PDU格式
uchar PS; //PDU特定域
uchar SA; //源地址
ulong TimeStamp; //时间戳
uchar TimeFlag; //时间标志
uchar DataLen; //数据长度
uchar Data[8]; //数据域
}RecvFrame_OBJ,*PRecvFrame_OBJ;
RecvFrame_OBJ RecvFrame;
//接收报文信息格式定义
typedef struct _Message_OBJ
{
ulong RecvNum; //序号
ulong PGN; //参数组标码
uchar Type; //报文类型
ulong REQ_PGN; //请求PGN
ulong ACK_PGN; //应答PGN
uchar ParaAmount; //参数个数
long ParaData[8]; //参数值
float VerData[8]; //参数真值
}Message_OBJ,*PMessage_OBJ;
Message_OBJ RecvMessage;
//实时中断使用变量
static long absoluteTime = 0; //实时中断计数器
static long lastTime = 0; //上一时刻实时中断计数器
//发送中断使用变量
ulong SendCount = 0; //发送计数器
uchar SendOver = 1; //发送结束标志
ulong SendQueNum = 0; //发送队列序号
//接收中断历程使用变量
ulong RecvCount = 0; //接收计数器
uchar Recv_BitNum = 0; //接收中断位计数器
uchar Recv_PGNNum = 0; //接收中断PGN
uchar Recv_ByteNum = 0;
uchar Recv_ParaNum = 0;
uchar Recv_LengthNum = 0;
uchar m_bSuccess = 0;
uchar m_bDadaFrame = 1;
float Recv_Resolution = 0;
float Recv_VData = 0;
float Recv_Temp = 0;
ulong Recv_Temp2 = 0;;
ulong Recv_Temp3 = 0;
ulong Recv_Temp4 = 0;
ulong Recv_Temp5 = 0;
ulong Recv_Temp6 = 0;
void Delay(ulong time)
{
while(time--);
}
//定义CAN信息帧的数据类型。
typedef struct _ASCL_CAN_OBJ{
ulong ID;
uchar RemoteFlag;//是否是远程帧
uchar ExternFlag;//是否是扩展帧
uchar DataLen;
uchar Data[8];
uchar frame_status_OBJ;
}ASCL_CAN_OBJ;
ASCL_CAN_OBJ Recv_Frame[16];
uint frame_status = 0x0;
uchar Recv_buffer_overflow = 0;
uchar SCI_CMD = 0;
uchar RX_OK = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -