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

📄 can.h

📁 8052控制SJA1000的CAN总线通信程序
💻 H
字号:
#ifndef _CAN_H
#define _CAN_H

//Basic_mode寄存器定义
#define SJA_BaseAdr 0x7f00  //SJA1000基址 

//sja内部寄存器				 
#define CONTROL_REG			XBYTE[SJA_BaseAdr + 0x00]		//控制寄存器    
#define COMMAND_REG			XBYTE[SJA_BaseAdr + 0x01]		//命令寄存器	     
#define STATUS_REG			XBYTE[SJA_BaseAdr + 0x02]		//状态寄存器    
#define INTERRUPT_REG		XBYTE[SJA_BaseAdr + 0x03]		//中断寄存器       
#define ACR_REG				XBYTE[SJA_BaseAdr + 0x04]		//验收代码寄存器        
#define AMR_REG				XBYTE[SJA_BaseAdr + 0x05]		//验收屏蔽寄存器       
#define BTR0_REG			XBYTE[SJA_BaseAdr + 0x06]		//总线定时寄存器0      
#define BTR1_REG			XBYTE[SJA_BaseAdr + 0x07]		//总线定时寄存器1     
#define OCR_REG				XBYTE[SJA_BaseAdr + 0x08]		//输出控制寄存器       
#define TEST_REG			XBYTE[SJA_BaseAdr + 0x09]		//测试寄存器    

//发送缓冲区
#define Tx_ID_0_REG			XBYTE[SJA_BaseAdr + 0x0a]
#define Tx_ID_1_REG			XBYTE[SJA_BaseAdr + 0x0b]
#define Tx_Data_1_REG		XBYTE[SJA_BaseAdr + 0x0c]
#define Tx_Data_2_REG		XBYTE[SJA_BaseAdr + 0x0d]
#define Tx_Data_3_REG		XBYTE[SJA_BaseAdr + 0x0e]
#define Tx_Data_4_REG		XBYTE[SJA_BaseAdr + 0x0f]
#define Tx_Data_5_REG		XBYTE[SJA_BaseAdr + 0x10]
#define Tx_Data_6_REG		XBYTE[SJA_BaseAdr + 0x11]
#define Tx_Data_7_REG		XBYTE[SJA_BaseAdr + 0x12]
#define Tx_Data_8_REG		XBYTE[SJA_BaseAdr + 0x13]

//接收缓冲区
#define Rx_ID_0_REG			XBYTE[SJA_BaseAdr + 0x14]
#define Rx_ID_1_REG			XBYTE[SJA_BaseAdr + 0x15]
#define Rx_Data_1_REG		XBYTE[SJA_BaseAdr + 0x16]
#define Rx_Data_2_REG		XBYTE[SJA_BaseAdr + 0x17]
#define Rx_Data_3_REG		XBYTE[SJA_BaseAdr + 0x18]
#define Rx_Data_4_REG		XBYTE[SJA_BaseAdr + 0x19]
#define Rx_Data_5_REG		XBYTE[SJA_BaseAdr + 0x1a]
#define Rx_Data_6_REG		XBYTE[SJA_BaseAdr + 0x1b]
#define Rx_Data_7_REG		XBYTE[SJA_BaseAdr + 0x1c]
#define Rx_Data_8_REG		XBYTE[SJA_BaseAdr + 0x1d]

//时钟分频寄存器
#define CDR_REG				XBYTE[SJA_BaseAdr + 0x1f]    
 
//命令字定义
#define Release_Rx_buf		0x04  
#define Tx_Request			0x01

#define		Tx_ID_0		0x91		           
#define		Tx_ID_1		0x08								//DLC = 3,NOT RTR

#endif
第31章 基于51单片机的CAN总线通信实例

⌨️ 快捷键说明

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