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

📄 canioraw.h

📁 基于ARM及CAN总线的源码
💻 H
字号:
/****************************************Copyright (c)**************************************************
**                               广州周立功单片机发展有限公司
**                                     研    究    所
**                                        产品一部 
**                                 http://www.zlgmcu.com
**-----------------------------------------------------------文件信息--------------------------------------------------------------------------------
**	文   件  	名:	CANIORAW.H
** 	版  		本:	v1.0
** 	日		期:	2004年2月23日
**	描		述:	CAN模块寄存器访问方法定义头文件
********************************************************************************************************/
#ifndef	_CANIORAW_H_
#define	_CANIORAW_H_

//定义所有CAN模块模式寄存器的数据类型
#define 	CANMOD(CanNum)		(*((volatile P_uCANMod)(CANMOD_BADR+CanNum* CAN_OFFSET_ADR)))
//定义所有CAN模块命令寄存器的数据类型
#define 	CANCMR(CanNum)		(*((volatile P_uCANCMR)(CANCMR_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块全局状态寄存器的数据类型
#define 	CANGSR(CanNum)		(*((volatile P_uCANGSR)( CANGSR_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块中断和捕获寄存器的数据类型
#define 	CANICR(CanNum)		(*((volatile P_uCANICR)( CANICR_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块中断使能寄存器的数据类型
#define 	CANIER(CanNum)		(*((volatile P_uCANIER)( CANIER_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块总线时序寄存器的数据类型
#define 	CANBTR(CanNum)		(*((volatile P_uCANBTR)( CANBTR_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块出错警告界限寄存器的数据类型
#define 	CANEWL(CanNum)		(*((volatile P_uCANEWL)( CANEWL_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块CANSR寄存器的数据类型
#define 	CANSR(CanNum)		(*((volatile P_uCANSR)( CANSR_BADR+CanNum* CAN_OFFSET_ADR )))    
//所有CAN模块的CANRFS数据类型定义
#define 	CANRFS(CanNum)		(*((volatile P_uCANRFS)( CANRFS_BADR+CanNum* CAN_OFFSET_ADR )))    
//所有CAN模块的CANRID数据类型定义
#define 	CANRID(CanNum)		(*((volatile P_uCANID)( CANRID_BADR+CanNum* CAN_OFFSET_ADR )))    
//所有CAN模块的CANRDA数据类型定义
#define 	CANRDA(CanNum)		(*((volatile P_uCANDF)( CANRDA_BADR+CanNum* CAN_OFFSET_ADR )))    
//所有CAN模块的CANRDB数据类型定义
#define 	CANRDB(CanNum)		(*((volatile P_uCANDF)( CANRDB_BADR+CanNum* CAN_OFFSET_ADR )))    
//定义所有CAN模块的发送缓冲区分量
#define CANTFI1(CanNum)			(*((volatile P_uCANTFI)(CANTFI1_BADR+CanNum* CAN_OFFSET_ADR)))    
#define CANTID1(CanNum)		(*((volatile P_uCANID)(CANTID1_BADR+CanNum*CAN_OFFSET_ADR)))   
#define CANTDA1(CanNum)		(*((volatile P_uCANDF)(CANTDA1_BADR+CanNum*CAN_OFFSET_ADR)))   
#define CANTDB1(CanNum)		(*((volatile P_uCANDF)(CANTDB1_BADR+CanNum*CAN_OFFSET_ADR)))  
#define CANTFI2(CanNum)			(*((volatile P_uCANTFI)(CANTFI2_BADR+CanNum*CAN_OFFSET_ADR)))    
#define CANTID2(CanNum)		(*((volatile P_uCANID)(CANTID2_BADR+CanNum*CAN_OFFSET_ADR))) 
#define CANTDA2(CanNum)		(*((volatile P_uCANDF)(CANTDA2_BADR+CanNum*CAN_OFFSET_ADR)))
#define CANTDB2(CanNum)		(*((volatile P_uCANDF)(CANTDB2_BADR+CanNum*CAN_OFFSET_ADR)))  
#define CANTFI3(CanNum)			(*((volatile P_uCANTFI)(CANTFI3_BADR+CanNum*CAN_OFFSET_ADR)))    
#define CANTID3(CanNum)		(*((volatile P_uCANID)(CANTID3_BADR+CanNum*CAN_OFFSET_ADR)))
#define CANTDA3(CanNum)		(*((volatile P_uCANDF)(CANTDA3_BADR+CanNum*CAN_OFFSET_ADR))) 
#define CANTDB3(CanNum)		(*((volatile P_uCANDF)(CANTDB3_BADR+CanNum*CAN_OFFSET_ADR)))
//定义所有CAN模块的TxBUF
#define	TxBUF1(CanNum)		(*((volatile P_stcTxBUF)( TxBUF1_BADR+CanNum*CAN_OFFSET_ADR)))
#define	TxBUF2(CanNum)		(*((volatile P_stcTxBUF)( TxBUF2_BADR+CanNum*CAN_OFFSET_ADR)))
#define	TxBUF3(CanNum)		(*((volatile P_stcTxBUF)( TxBUF3_BADR+CanNum*CAN_OFFSET_ADR)))
//集中状态寄存器
#define 	CANTxSR				(*((volatile P_uCANTxSR) CANTxSR_GADR))
#define 	CANRxSR				(*((volatile P_uCANRxSR) CANRxSR_GADR))
#define 	CANMSR				(*((volatile P_uCANMSR) CANMSR_GADR))
//验收滤波器部分
#define 	CANAFMR				(*((volatile P_uCANAFMR) CANAFMR_GADR))
#define 	CANSFF_sa			(*((volatile P_uCANF_sa)(CANSFF_sa_GADR)))    
#define 	CANSFF_GRP_sa		(*((volatile P_uCANGRP_sa)(CANSFF_GRP_sa_GADR)))    
#define 	CANEFF_sa			(*((volatile P_uCANF_sa)(CANEFF_sa_GADR)))    
#define 	CANEFF_GRP_sa		(*((volatile P_uCANGRP_sa)(CANEFF_GRP_sa_GADR))) 
#define 	CANENDofTable		(*((volatile P_uCANGRP_sa)(CANENDofTable_GADR)))
#define 	CANLUTerrAd			(*((volatile P_uCANF_sa)(CANLUTerrAd_GADR)))
//LUT错误寄存器访问方式定义
#define 	CANLUTerr			(*((volatile P_uCANLUTerr)( CANLUTerr_GADR)))
//验收滤波器表格
#define		CANSFF_TAB(i)			(*((volatile P_uFullCANSFFLine)( CANAFRAM_GADR + USE_SFF_sa_VAL +i*4)))	
#define 	CANSFF_GRP_TAB(i)		(*((volatile P_uFullCANSFFLine)( CANAFRAM_GADR + USE_SFF_GRP_sa_VAL +i*4)))
#define		CANEFF_TAB(i)			(*((volatile P_uFullCANEFFLine)( CANAFRAM_GADR + USE_EFF_sa_VAL +i*4)))	
#define 	CANEFF_GRP_TAB(i)		(*((volatile P_uFullCANEFFLine)( CANAFRAM_GADR + USE_EFF_GRP_sa_VAL +i*4)))

//定义所有CAN模块的RxBUF
#define	RxBUF(CanNum)	(*((volatile P_stcRxBUF)( RxBUF_BADR+CanNum*CAN_OFFSET_ADR)))
#endif
/*********************************************************************************************************
**                            			End Of File
********************************************************************************************************/

⌨️ 快捷键说明

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