亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? canreg.h

?? 基于LPC系列ARM7的CAN通信,包括了收發
?? H
?? 第 1 頁 / 共 2 頁
字號:
/****************************************Copyright (c)**************************************************
**                               廣州周立功單片機發展有限公司
**                                     研    究    所
**                                        產品一部 
**                                 http://www.zlgmcu.com
**-------------------------------------文件信息--------------------------------------------------------
**	文   件  	名:	CANREG.H
** 	版  		本:	v1.0
** 	日		期:	2004年2月23日
**	描		述:	CAN模塊寄存器類型定義、地址定義頭文件
********************************************************************************************************/
#ifndef	_CANREG_H_
#define	_CANREG_H_
/*
**********************************************************************************************************************
**   驗收濾波器RAM首地址
**********************************************************************************************************************
*/
#define	CANAFRAM_BADR				0xE0038000
/*
**********************************************************************************************************************
**  CAN寄存器基地址定義
**********************************************************************************************************************
*/
#define 	CANMOD_BADR				0xE0044000     		//模式寄存器
#define 	CANCMR_BADR				0xE0044004      	//命令寄存器
#define 	CANGSR_BADR				0xE0044008      	//全局狀態寄存器
#define 	CANICR_BADR				0xE004400C     		//中斷及捕獲寄存器
#define 	CANIER_BADR				0xE0044010      	//中斷使能寄存器
#define 	CANBTR_BADR				0xE0044014      	//總線時序寄存器
#define 	CANEWL_BADR				0xE0044018      	//報警限制寄存器
#define 	CANSR_BADR  			0xE004401C      	//狀態寄存器
#define 	CANRFS_BADR				0xE0044020      	//接收幀信息寄存器
#define		CANRID_BADR				0xE0044024      	//接收報文ID寄存器

#define 	CANRDA_BADR				0xE0044028      	//接收數據1~4
#define 	CANRDB_BADR 			0xE004402C      	//接收數據5~8
#define 	CANTFI1_BADR			0xE0044030      	//CAN發送緩沖區1幀信息寄存器
#define 	CANTID1_BADR			0xE0044034      	// CAN發送緩沖區1報文ID寄存器
#define 	CANTDA1_BADR			0xE0044038      	// CAN發送緩沖區1發送數據1~4寄存器
#define 	CANTDB1_BADR			0xE004403C      	// CAN發送緩沖區1發送數據5~8寄存器
#define 	CANTFI2_BADR			0xE0044040      	// CAN發送緩沖區2幀信息寄存器
#define 	CANTID2_BADR			0xE0044044      	// CAN發送緩沖區2報文ID寄存器
#define 	CANTDA2_BADR			0xE0044048     		// CAN發送緩沖區2發送數據1~4寄存器
#define 	CANTDB2_BADR			0xE004404C      	// CAN發送緩沖區2發送數據5~8寄存器
#define 	CANTFI3_BADR			0xE0044050      	// CAN發送緩沖區3幀信息寄存器
#define 	CANTID3_BADR			0xE0044054      	// CAN發送緩沖區3報文ID寄存器
#define 	CANTDA3_BADR			0xE0044058      	// CAN發送緩沖區3發送數據1~4寄存器
#define 	CANTDB3_BADR			0xE004405C      	// CAN發送緩沖區3發送數據5~8寄存器
/*
**********************************************************************************************************************
**  定義RxBUF的基地址
**********************************************************************************************************************
*/
#define	RxBUF_BADR					0xE0044020
/*
**********************************************************************************************************************
**  定義TxBUF的基地址
**********************************************************************************************************************
*/
#define	TxBUF1_BADR					0xE0044030			// CAN發送緩沖區1首地址
#define	TxBUF2_BADR					0xE0044040			// CAN發送緩沖區2首地址
#define	TxBUF3_BADR					0xE0044050			// CAN發送緩沖區3首地址
/*
**********************************************************************************************************************
**  定義全局應用的寄存器
**********************************************************************************************************************
*/
#define 	CANTxSR_GADR   			0xE0040000      	//發送狀態寄存器
#define 	CANRxSR_GADR      		0xE0040004      	//接收狀態寄存器
#define 	CANMSR_GADR       		0xE0040008      	//錯誤狀態寄存器
#define 	CANAFMR_GADR      		0xE003C000      	//驗收濾波控制
#define 	CANSFF_sa_GADR      	0xE003C004      	//標準幀表格
#define 	CANSFF_GRP_sa_GADR 		0xE003C008      	//標準幀組表格
#define 	CANEFF_sa_GADR      	0xE003C00C      	//擴展幀表格
#define 	CANEFF_GRP_sa_GADR 		0xE003C010      	//擴展幀組表格
#define 	CANENDofTable_GADR  	0xE003C014      	//表格結束地址
#define 	CANLUTerrAd_GADR   		0xE003C018      	//LUT錯誤地址地址寄存器
#define 	CANLUTerr_GADR      	0xE003C01C			//LUT錯誤寄存器
/*
**********************************************************************************************************************
**  CAN控制器通道定義
**********************************************************************************************************************
*/
typedef 	enum		_cannum_				
{ 
#if		CAN_MAX_NUM  == 4			//微處理器中含有4路CAN
	CAN1 = 0, 						//CAN1模塊
	CAN2,							//CAN2模塊
	CAN3,							//CAN3模塊
	CAN4							//CAN4模塊
#elif	CAN_MAX_NUM  == 2			//微處理器中含有2路CAN
	CAN1 = 0, 						//CAN1模塊
	CAN2							//CAN2模塊
#endif
} eCANNUM;		

//#define REGAFRAM         (*((volatile INT32U *) 0xE0038000))      /* lpc2119\lpc2129\lpc2292\lpc2294 only */

/*
*********************************************************************************************************************
**   定義 CANMOD 寄存器:
1.This register controls the basic operating mode of the CAN Controller. 
2.Bits not listed read as 0 and should be written as 0.
*********************************************************************************************************************
*/
typedef	union		_canmod_
{
	INT32U	Word;
	struct	{
		INT32U	RM 		:1;		//定義RM位(復位位)
		INT32U	LOM 	:1;		//定義LOM位(只聽模式位)
		
		INT32U	STM		:1;		//定義STM位 "0"發送的信息必須被應答才被認可
									//			"1"自測試模式,CANCMR的SRR位一起使用,可以達到自發自收的效果
									
		INT32U	TPM 	:1;		//定義TPM位 "0"3個發送緩沖區的優先級由各自的CAN ID決定
									//			"1"3個發送緩沖區的優先級由各自的Tx優先級域決定
									
		INT32U	SM 		:1;		//定義SM位(睡眠模式位)
		
		INT32U	RPM 	:1;		//定義RPM位 "0"如果傳輸的是顯性位,Rx和Tx腳為低電平
									//			"1"翻轉極性模式--如果傳輸的是顯性位,Rx腳為高電平
									
		INT32U	RSV1 	:1;		//保留位
		INT32U	TM 		:1;		//定義TM位(測試模式)
		INT32U	RSV24	:24;	//保留位
	}Bits;
}uCANMod,*P_uCANMod;

#define 	CANMOD(CanNum)		(*((volatile P_uCANMod)(CANMOD_BADR+CanNum* CAN_OFFSET_ADR)))

/*
**********************************************************************************************************************
**   定義 CANCMR 寄存器:
1.Writing to this write-only register initiates an action. 
2.Bits not listed should be written as 0. Reading this register yields zeroes.
**********************************************************************************************************************
*/
typedef	union		_cancmr_
{
	INT32U	Word;
	struct	
	{
		INT32U	TR 		:1;		//定義TR位(發送請求)
		INT32U	AT 		:1;		//定義AT位(發送中止)
		INT32U	RRB 	:1;		//定義RRB位(接收緩沖區釋放)
		INT32U	CDO 	:1;		//清除數據溢出位
		INT32U	SRR 	:1;		//定義SRR位(自接收請求)
		INT32U	STB1 	:1;		//定義SEND TxBUF1位(選擇BUF1發送)
		INT32U	STB2 	:1;		//定義SEND TxBUF2位(選擇BUF2發送)
		INT32U	STB3 	:1;		//定義SEND TxBUF3位(選擇BUF3發送)
		INT32U	RSV24	:24;	//保留位
	}Bits;
}uCANCMR,*P_uCANCMR;

#define 	CANCMR(CanNum)		(*((volatile P_uCANCMR)(CANCMR_BADR+CanNum* CAN_OFFSET_ADR )))
/*
************************************************************************************************************************
**   定義 CANGSR 寄存器:
1.This register is read-only, except that the Error Counters can be written when the RM bit in the CANMOD register is 1.
2.Bits not listed read as 0 and should be written as 0.
************************************************************************************************************************
*/
typedef	union		_cangsr_
{
	INT32U	Word;				//字操作定義
	struct	
	{
		INT32U	RBS 	:1;	//接收緩沖區狀態位
		INT32U	DOS 	:1; //數據溢出狀態位
		INT32U	TBS 	:1;	//發送緩沖區狀態鎖定位
		INT32U	TCS 	:1;	//發送完成狀態位
		INT32U	RS 		:1;	//正在接收狀態
		INT32U	TS 		:1;	//正在發送狀態
		INT32U	ES	 	:1;	//錯誤狀態
		INT32U	BS 		:1;	//總線關閉
		INT32U	RSV8	:8;	//保留位
		INT32U	RXERR 	:8;	//接收錯誤計數
		INT32U	TXERR 	:8;	//發送錯誤計數
	}Bits;
}uCANGSR,*P_uCANGSR;

#define 	CANGSR(CanNum)		(*((volatile P_uCANGSR)( CANGSR_BADR+CanNum* CAN_OFFSET_ADR ))) 
/*
**********************************************************************************************************************
**   定義 CANICR 寄存器:
1.Bits in this register indicate information about events on the CAN bus. This register is read-only.
2.Bits not listed read as 0 and should be written as 0.
3.The clearing of bits 1-9 and the releasing of bits 16-23 and 24-31 all occur on any read from CANICR,
  regardless of whether part or all of the register is read.This means that software should always read CANICR as a word,
  and and process and deal with all bits of the register as appropriate for the application.
**********************************************************************************************************************
*/
typedef	union		_canicr_
{
	INT32U	Word;				//字操作定義
	struct	
	{
		INT32U	RI 		:1;	//接收中斷位
		INT32U	TI1 	:1;	//TxBUF1發送成功中斷位
		INT32U	EI 		:1;	//錯誤報警中斷位
		INT32U	DOI 	:1;	//數據溢出中斷位
		INT32U	WUI 	:1;	//睡眠喚醒中斷位
		INT32U	EPI 	:1;	//錯誤認可中斷位
		INT32U	ALI 	:1;	//仲裁錯誤中斷位
		INT32U	BEI 	:1;	//總線錯誤中斷
		INT32U	IDI 	:1;	//接收到CAN標識符中斷位
		INT32U	TI2 	:1;	// TxBUF2發送成功中斷位
		INT32U	TI3 	:1;	// TxBUF3發送成功中斷位
		INT32U	RSV5	:5;	//保留位
		INT32U	ERRBIT 	:5;	//錯誤代碼捕獲
		INT32U	ERRDIR 	:1;	//錯誤方向
		INT32U	ERRC 	:2;	//錯誤類型
		INT32U	ALCBIT 	:5;	//仲裁錯誤代碼捕獲
		INT32U	RSV3	:3;	//保留
	}Bits;
}uCANICR,*P_uCANICR;

#define 	CANICR(CanNum)		(*((volatile P_uCANICR)( CANICR_BADR+CanNum* CAN_OFFSET_ADR ))) 
/*
**********************************************************************************************************************
**   定義 CANIER 寄存器:
1.This read/write register controls whether various events on the CAN controller will result in an interrupt.
2.Bits 7:0 in this register correspond 1-to-1 with bits 7:0 in the CANICR register.
**********************************************************************************************************************
*/
typedef	union		_canier_
{
	INT32U	Word;			//字操作定義
	struct	
	{
		INT32U	RIE 	:1;	//接收中斷使能位
		INT32U	TIE1 	:1;	//TxBUF1發送完成中斷使能位
		INT32U	EIE 	:1;	//錯誤報警中斷使能位
		INT32U	DOIE 	:1;	//數據溢出中斷使能位
		INT32U	WUIE 	:1;	//睡眠模式喚醒中斷使能位
		INT32U	EPIE 	:1;	//錯誤認可中斷使能位
		INT32U	ALIE 	:1;	//仲裁丟失中斷使能位
		INT32U	BEIE 	:1;	//總線錯誤中斷使能位
		INT32U	IDIE	:1;	//接收到CAN標識符中斷使能位
		INT32U	TIE2 	:1;	//TxBUF2發送完成中斷使能位
		INT32U	TIE3	:1;	//TxBUF3發送完成中斷使能位
		INT32U	RSV21	:21;//保留位
	}Bits;
}uCANIER,*P_uCANIER;

#define 	CANIER(CanNum)		(*((volatile P_uCANIER)( CANIER_BADR+CanNum* CAN_OFFSET_ADR )))
/*
**********************************************************************************************************************
**   定義 CANBTR 寄存器:
1.This register controls how various CAN timings are derived from the VPB clock.
2.It can be read at any time, but can only be written if the RM bit in CANmod is 1.
**********************************************************************************************************************
*/
typedef	union		_canbtr_
{
	INT32U	Word;					//字操作定義
	struct	
	{
		INT32U	BRP 	:10;	//預分頻位組合定義
		INT32U	RSV4	:4;		//保留位
		INT32U	SJW 	:2;		//同步跳轉寬度
		INT32U	TSEG1 	:4;		//時間段1
		INT32U	TSEG2 	:3;		//時間段2
		INT32U	SAM 	:1;		//采樣模式位
		INT32U	RSV8	:8;		//保留
	}Bits;
}uCANBTR,*P_uCANBTR;

#define 	CANBTR(CanNum)		(*((volatile P_uCANBTR)( CANBTR_BADR+CanNum* CAN_OFFSET_ADR )))
/*
**********************************************************************************************************************
**   定義 CANEWL 寄存器:
1.This register sets a limit on Tx or Rx errors at which an interrupt can occur.
2.It can be read at any time, but can only be written if the RM bit in CANmod is 1.
**********************************************************************************************************************
*/
typedef	union	_canewl_
{
	INT32U	Word;					//字操作定義
	struct	
	{
		INT32U	EWL 	:8;		///出錯警告界限值
		INT32U	RSV24	:24;	//保留位
	}Bits;
}uCANEWL,*P_uCANEWL;

#define 	CANEWL(CanNum)		(*((volatile P_uCANEWL)( CANEWL_BADR+CanNum* CAN_OFFSET_ADR )))
/*
**********************************************************************************************************************
**   定義 CANSR 寄存器:
1.This register contains three status bytes, in which the bits not related to tranmission are identical to the 
  corresponding bits in the Global Status Register, while those relating to transmission reflect the status of 
  each of the 3 Tx Buffers.
**********************************************************************************************************************
*/
typedef	union	_cansr_
{
	INT32U	Word;					//字操作定義
	struct	
	{
		INT32U	RBS1 	:1;		//接收緩沖區有效
		INT32U	DOS1 	:1;		//數據溢出
		INT32U	TBS1 	:1;		//TxBUF1鎖定位  "0":鎖定
		INT32U	TCS1 	:1;		//TxBUF1的數據發送完成 
		INT32U	RS1 	:1;		//正在接收
		INT32U	TS1 	:1;		//TxBUF1的數據正在發送 "1"正在發送
		INT32U	ES1 	:1;		//錯誤認可
		INT32U	BS1 	:1;		//總線錯誤
		INT32U	RBS2 	:1;		//
		INT32U	DOS2 	:1;		//
		INT32U	TBS2 	:1;		// TxBUF2鎖定
		INT32U	TCS2 	:1;		// TxBUF2的數據發送完成
		INT32U	RS2 	:1;		//
		INT32U	TS2 	:1;		// TxBUF2的數據正在發送
		INT32U	ES2 	:1;		//
		INT32U	BS2 	:1;		//
		INT32U	RBS3 	:1;		//
		INT32U	DOS3 	:1;		//
		INT32U	TBS3 	:1;		// TxBUF3鎖定
		INT32U	TCS3 	:1;		// TxBUF3的數據發送完成
		INT32U	RS3 	:1;		//
		INT32U	TS3 	:1;		// TxBUF3的數據正在發送
		INT32U	ES3 	:1;		//
		INT32U	BS3 	:1;		//
		INT32U	RSV8	:8;		//
	}Bits;
}uCANSR,*P_uCANSR;

#define 	CANSR(CanNum)		(*((volatile P_uCANSR)( CANSR_BADR+CanNum* CAN_OFFSET_ADR )))
/*
**********************************************************************************************************************
**   定義 CANRFS 寄存器:
1.This register defines the characteristics of the current received message. 
2.It is read-only in normal operation, but can be written for testing purposes if the RM bit in CANMOD is 1.
**********************************************************************************************************************
*/
typedef	union		_canrfs_
{
	INT32U		Word;				//字操作定義
	struct	
	{
		INT32U	IDIN 	:10;	//ID索引值
		INT32U	BP 		:1;		//BP
		INT32U	RSV5 	:5;		//保留
		INT32U	DLC 	:4;		//數據長度

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区三区在线观看| 伊人婷婷欧美激情| 亚洲色图视频网站| 日本欧美在线观看| 91麻豆精东视频| 精品欧美一区二区久久 | 欧美日韩免费一区二区三区视频| 欧美电影免费提供在线观看| 久久99国产精品免费| 成人晚上爱看视频| 日韩免费观看高清完整版在线观看| 亚洲男人都懂的| 国产成人av福利| 日韩视频一区二区三区| 亚洲aⅴ怡春院| 91老师片黄在线观看| 国产色爱av资源综合区| 免费成人av在线播放| 欧美日韩视频在线观看一区二区三区 | 精品一区二区精品| 欧美日韩在线亚洲一区蜜芽| 最新久久zyz资源站| 粉嫩欧美一区二区三区高清影视| 精品国产乱码久久久久久免费 | 精品精品国产高清a毛片牛牛 | 国产欧美一区二区三区沐欲| 免费成人美女在线观看.| 精品婷婷伊人一区三区三| 亚洲女同一区二区| 色婷婷国产精品久久包臀| 最新不卡av在线| 91亚洲精品久久久蜜桃网站| 中文字幕一区二区三区视频| 国产91精品一区二区麻豆亚洲| 久久综合色综合88| 国产一区二区在线看| 久久精品人人爽人人爽| 国产成人综合网| 国产欧美日韩不卡免费| jlzzjlzz亚洲女人18| ㊣最新国产の精品bt伙计久久| 99精品欧美一区| 亚洲精品成人悠悠色影视| 在线一区二区三区四区五区| 亚洲sss视频在线视频| 欧美高清视频一二三区| 免费成人小视频| 久久午夜老司机| 成人亚洲一区二区一| 亚洲精品久久久蜜桃| 欧美优质美女网站| 久久av老司机精品网站导航| 99精品热视频| 亚洲地区一二三色| 日韩精品最新网址| 成人黄色综合网站| 亚洲午夜一区二区| 欧美电影精品一区二区| 成人免费毛片嘿嘿连载视频| 一区二区三区资源| 精品国产一区二区三区av性色| 国产成人夜色高潮福利影视| 一片黄亚洲嫩模| 欧美tickling挠脚心丨vk| 成人激情综合网站| 日韩专区欧美专区| 欧美国产精品中文字幕| 欧洲精品在线观看| 国产在线精品一区在线观看麻豆| 国产精品久久二区二区| 欧美视频在线播放| 国产精品18久久久久久久网站| 亚洲欧美偷拍卡通变态| 日韩精品中文字幕一区二区三区| av一二三不卡影片| 精品亚洲成a人| 亚洲视频小说图片| 精品国产乱码久久久久久牛牛| 色猫猫国产区一区二在线视频| 美女久久久精品| 亚洲精品国产一区二区三区四区在线| 在线不卡欧美精品一区二区三区| 东方aⅴ免费观看久久av| 日日嗨av一区二区三区四区| 中文字幕一区二区在线播放| 日韩欧美亚洲国产精品字幕久久久| 成人av网址在线| 国产综合色视频| 日韩精品一卡二卡三卡四卡无卡| 亚洲视频网在线直播| 久久综合九色综合97_久久久| 欧美视频一区二区三区| av网站免费线看精品| 韩国成人在线视频| 三级久久三级久久| 亚洲老司机在线| 国产精品久久久久久久久久久免费看| 日韩欧美中文字幕制服| 精品视频免费在线| 在线观看91视频| 91在线精品一区二区| 国产aⅴ精品一区二区三区色成熟| 视频一区中文字幕国产| 亚洲另类色综合网站| 1000精品久久久久久久久| 国产日韩欧美亚洲| 久久久久久电影| 久久蜜桃一区二区| 久久综合久久99| 久久久亚洲欧洲日产国码αv| 日韩一区二区在线看| 91精品国产一区二区三区香蕉| 欧美男女性生活在线直播观看| 色老汉一区二区三区| 91麻豆国产自产在线观看| 一本大道久久a久久综合| 91天堂素人约啪| 日本韩国视频一区二区| 色妞www精品视频| 色94色欧美sute亚洲线路一久| 懂色av一区二区三区蜜臀 | 免费看日韩a级影片| 免费欧美在线视频| 韩国av一区二区三区| 国产精品综合二区| 不卡av免费在线观看| 91香蕉视频mp4| 欧美亚洲综合久久| 欧美高清性hdvideosex| 日韩欧美亚洲国产另类 | 欧美日韩一区高清| 欧美日韩国产综合视频在线观看 | 91精品国产一区二区三区香蕉| 制服.丝袜.亚洲.另类.中文| 在线成人av网站| 久久久久久久久久久久久久久99| 中文字幕免费一区| 一区二区三区免费网站| 丝袜亚洲另类丝袜在线| 国产精品中文字幕日韩精品| 成人免费视频播放| 精品视频色一区| 欧美精品一区二区三区久久久| 亚洲欧美自拍偷拍| 日韩高清不卡在线| 国产成人av电影在线观看| 91久久免费观看| 欧美一区二区精品| 日韩美女精品在线| 青青青爽久久午夜综合久久午夜| 国产成人精品亚洲日本在线桃色| 一本久久a久久精品亚洲| 亚洲欧美激情小说另类| 一区二区三区加勒比av| 麻豆精品视频在线观看| jlzzjlzz亚洲日本少妇| 日韩一区二区三区在线视频| 国产精品理论在线观看| 日本中文字幕不卡| 99v久久综合狠狠综合久久| 在线不卡欧美精品一区二区三区| 欧美激情一区二区三区四区| 亚洲一区中文日韩| 国产成人免费xxxxxxxx| 欧美精品第1页| ...av二区三区久久精品| 久久99国产精品久久99果冻传媒| 色综合久久综合网| 久久九九久久九九| 日本特黄久久久高潮| 在线亚洲人成电影网站色www| 久久综合中文字幕| 男人的天堂久久精品| 色婷婷精品久久二区二区蜜臂av| 精品国产sm最大网站| 亚洲一二三四区| 成人永久aaa| 久久久影视传媒| 久久综合综合久久综合| 91黄色免费版| 国产精品久久久久久久久久久免费看 | 日韩欧美国产综合| 亚洲亚洲人成综合网络| 91小视频在线观看| 国产亚洲欧美日韩日本| 久久精品国产免费| 在线综合亚洲欧美在线视频 | 国产视频一区不卡| 久久激五月天综合精品| 91精品国产色综合久久不卡蜜臀 | 成人激情小说网站| 亚洲精品一区二区三区影院| 午夜久久久影院| 欧美色综合影院| 亚洲最大成人综合| 91污在线观看| 亚洲男人的天堂网| 91福利国产精品| 亚洲精品一二三四区| 99久久国产免费看|