⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 app_can.h

📁 该模板使用于周立功公司研发的EasyARM2100系列开发板
💻 H
字号:
#ifndef __app_can_h
#define __app_can_h




//=================================================================================================
#ifndef		_CANAPP_GLOBAL_
#define		CANAPP_GLOBAL		extern
#else
#define		CANAPP_GLOBAL	
#endif

//数据类型定义
/**********************************************************************************************************
**	在本驱动里应用一个接收环形缓冲区,来存放接收到的邋錍AN数据数据,环形缓冲区的大小在CUSTOM.H中定义,下
**	面是环形缓冲区的数据结构
************************************************************************************************************/
typedef	struct	_RcvCANDataCycleBuf_
 {
	UINT32		WritePoint1	:8;			//CAN1的写指针
	UINT32		WritePoint2	:8;
	UINT32		WritePoint3	:8;
	UINT32		WritePoint4	:8;

	UINT32		ReadPoint1	:8;			//CAN1的读指针
	UINT32		ReadPoint2	:8;
	UINT32		ReadPoint3	:8;
	UINT32		ReadPoint4	:8;

	UINT32		FullFlag1	:8;			//CAN1缓冲区满标志
	UINT32		FullFlag2	:8;
	UINT32		FullFlag3	:8;
	UINT32		FullFlag4	:8;

	stcRxBUF	RcvBuf[CAN_MAX_NUM][USE_CAN_RCV_BUF_SIZE];
 }stcRcvCANCyBuf,*P_stcRcvCANCyBuf;



typedef union	
{
	UINT32		Word;					
	struct	
	{
		UINT32	Data0 	:8;			
		UINT32	Data1 	:8;	
		UINT32	Data2 	:8;	
		UINT32	Data3 	:8;	
	}Bits;
}canword;

extern canword TL;
extern canword TH;

extern			unsigned char	flag_can_rev;												
extern			unsigned char	flag_can_revok;												
extern			unsigned int	save_can_id[10];												
extern			unsigned int	save_can_data[10][2];											
extern			stcRxBUF    	can_rev_buf[2];													
extern			stcTxBUF 		can_send_buf[10];


//应用环形缓冲区定义
CANAPP_GLOBAL	stcRcvCANCyBuf		CANRcvBufApp;
//应用常量定义
CANAPP_GLOBAL	const 	UINT32	USE_MOD_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL	const	UINT32	USE_EWL_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL	const 	UINT32	USE_INT_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL	const 	UINT32	USE_TPM_CAN[CAN_MAX_NUM]; 
CANAPP_GLOBAL	const 	UINT32	USE_BTR_CAN[CAN_MAX_NUM]; 
CANAPP_GLOBAL	const 	UINT32	USE_SLP_MOD_CAN[CAN_MAX_NUM]; 

CANAPP_GLOBAL	__irq 	void	IRQ_Can(void);
CANAPP_GLOBAL	void			InitCAN(eCANNUM CanNum) ;
CANAPP_GLOBAL	void			WriteCANRcvCyBuf(eCANNUM CanNum);
CANAPP_GLOBAL	UINT32			CANSendData(eCANNUM CanNum,UINT32 Cmd,P_stcTxBUF Buf);
CANAPP_GLOBAL	UINT32			ReadCANRcvCyBuf(eCANNUM CanNum,stcRxBUF *Buf);
extern			void 			can_send_info(unsigned char send_id);





















#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -