You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.4 KiB
59 lines
1.4 KiB
/*
|
|
*********************************************************************************************************
|
|
*
|
|
* 模块名称 : 消息处理模块
|
|
* 文件名称 : bsp_msg.h
|
|
* 版 本 : V1.0
|
|
* 说 明 : 头文件
|
|
*
|
|
* Copyright (C), 2013-2014, 安富莱电子 www.armfly.com
|
|
*
|
|
*********************************************************************************************************
|
|
*/
|
|
|
|
#ifndef __BSP_MSG_H
|
|
#define __BSP_MSG_H
|
|
|
|
#include "main.h"
|
|
|
|
#define MSG_FIFO_SIZE 40 /* 消息个数 */
|
|
|
|
enum
|
|
{
|
|
MSG_NONE = 0,
|
|
|
|
MSG_485_RX_RTU, /* 接收到RS485 MODBUS RTU数据包*/
|
|
MSG_485_RX_NOT_RTU, /* 接收到RS485数据包,CRC未过 */
|
|
|
|
MSG_CAN1_RX, /* 收到CAN1数据包。can_netword.c 中引用 */
|
|
MSG_CAN2_RX, /* 收到CAN2数据包。can_netword.c 中引用 */
|
|
|
|
MSG_WM8978_DMA_END, /* DMA传输结束 */
|
|
};
|
|
|
|
/* 按键FIFO用到变量 */
|
|
typedef struct
|
|
{
|
|
uint16_t MsgCode; /* 消息代码 */
|
|
uint32_t MsgParam; /* 消息的数据体, 也可以是指针(强制转化) */
|
|
}MSG_T;
|
|
|
|
/* 按键FIFO用到变量 */
|
|
typedef struct
|
|
{
|
|
MSG_T Buf[MSG_FIFO_SIZE]; /* 消息缓冲区 */
|
|
uint8_t Read; /* 缓冲区读指针1 */
|
|
uint8_t Write; /* 缓冲区写指针 */
|
|
uint8_t Read2; /* 缓冲区读指针2 */
|
|
}MSG_FIFO_T;
|
|
|
|
/* 供外部调用的函数声明 */
|
|
void bsp_InitMsg(void);
|
|
void bsp_PutMsg(uint16_t _MsgCode, uint32_t _MsgParam);
|
|
uint8_t bsp_GetMsg(MSG_T *_pMsg);
|
|
uint8_t bsp_GetMsg2(MSG_T *_pMsg);
|
|
void bsp_ClearMsg(void);
|
|
|
|
#endif
|
|
|
|
/***************************** 安富莱电子 www.armfly.com (END OF FILE) *********************************/
|
|
|