📄 can591_peliconf.asm
字号:
;;/*
;********************************************************************************************************************
;*描述: 带CAN 控制器的单片机P8XC951基本硬件头文件定义 CAN 工作方式)
;*文件名: CAN591_PELIConf.asm
;*应用语言: KEIL A51/L51 or Intel A51/L51
;*版本 : V1.0
;*广州周立功单片机发展有限公司 保留所有的版权
;********************************************************************************************************************
;;*/
;;;/*$page;*/
;;;/*
;********************************************************************************************************************
;** 关于591PeliCAN模式下一些必须说明的问题:
;** 1、PeliCAN模式下标准帧和扩展帧的应用:
;** 2、双滤波器的应用
;** 3、自我测试功能的应用
;********************************************************************************************************************
;;*/
;;;/*$page;*/
;;;/*
;;********************************************************************************************************************
;;*以下为591的can的特殊功能寄存器,功能及用法请看591的数据手册
;;********************************************************************************************************************
;;;*/
;;;/*$page;*/
REG_CANSTA DATA 0C0H
REG_CANADR DATA 0C1H
REG_CANDAT DATA 0C2H
REG_CANCON DATA 0C3H
REG_CANMOD DATA 0C4H
;;;/*
;;********************************************************************************************************************
;;*以下为591的can地址下的寄存器,功能及用法请看591的数据手册
;;********************************************************************************************************************
;;;*/
;;;/*$page;*/
;;;/*
;;********************************************************************************************************************
;;* 模式和控制寄存器的地址和位定义PeliCAN模式
;;********************************************************************************************************************
;;;*/
REG_CAN_MOD EQU 00 ;;;//内部控制寄存器
RM_RR_Bit EQU 01H ;;//复位模式(请求)位
LOM_Bit EQU 02H ;;//监听模式位
STM_Bit EQU 04H ;;//自我测试模式位
AFM_Bit EQU 08H ;;//验收滤波器模式位
SM_Bit EQU 10H ;;//睡眠模式位
RPM_BIT EQU 20H ;;//接收优先级模式
TM_BIT EQU 80H ;;//测试模式
;;/*
;********************************************************************************************************************
;* 命令寄存器的地址和位定义 PeliCAN模式
;********************************************************************************************************************
;;*/
REG_CAN_CMR EQU 01H ;;//命令寄存器
TR_Bit EQU 01H ;;//发送请求位
AT_Bit EQU 02H ;;//中止发送位
RRB_Bit EQU 04H ;;//释放接收缓冲器位
CDO_Bit EQU 08H ;;//清除数据溢出位
SRR_Bit EQU 10H ;;//自身接收请求位
;;/*
;********************************************************************************************************************
;* 状态寄存器的地址和位定义 PeliCAN模式
;********************************************************************************************************************
;;*/
REG_CAN_SR EQU 02 ;;//状态寄存器
RBS_Bit EQU 01H ;;//接收缓冲器状态位
DOS_Bit EQU 02H ;;//数据溢出状态位
TBS_Bit EQU 04H ;;//发送缓冲器状态位
TCS_Bit EQU 08H ;;//发送完成状态位
RS_Bit EQU 10H ;;//接收状态位
TS_Bit EQU 20H ;;//发送状态位
ES_Bit EQU 40H ;;//错误状态位
BS_Bit EQU 80H ;;//总线状态位
;;/*
;********************************************************************************************************************
;* 中断寄存器的地址和位定义 PeliCAN模式
;********************************************************************************************************************
;;*/
REG_CAN_IR EQU 03 ;;//中断寄存器
RI_Bit EQU 01H ;;//接收中断位
TI_Bit EQU 02H ;;//发送中断位
EI_Bit EQU 04H ;;//错误警告中断位
DOI_Bit EQU 08H ;;//数据溢出中断位
WUI_Bit EQU 10H ;;//唤醒中断位
EPI_Bit EQU 20H ;;//错误消极中断位
ALI_Bit EQU 40H ;;//仲裁丢失中断位
BEI_Bit EQU 80H ;;//总线错误中断位
;;/*
;********************************************************************************************************************
;* 中断寄存器的地址和位定义 PeliCAN模式
;********************************************************************************************************************
;;*/
REG_CAN_IER EQU 04 ;;//中断使能寄存器
RIE_Bit EQU 01H ;;//接收中断使能位
TIE_Bit EQU 02H ;;//发送中断使能位
EIE_Bit EQU 04H ;;//错误警告中断使能位
DOIE_Bit EQU 08H ;;//数据溢出中断使能位
WUIE_Bit EQU 10H ;;//唤醒中断使能位
EPIE_Bit EQU 20H ;;//错误消极中断使能位
ALIE_Bit EQU 40H ;;//仲裁丢失中断使能位
BEIE_Bit EQU 80H ;;//总线错误中断使能位
;;/*
;********************************************************************************************************************
;* 05 中断级寄存器
;********************************************************************************************************************
;;*/
REG_CAN_RIL EQU 05H ;;//中断级寄存器
;;/*
;********************************************************************************************************************
;* 总线定时器寄存器的地址和位定义 PeliCAN模式
;********************************************************************************************************************
;;*/
REG_CAN_BTR0 EQU 06 ;;//总线定时器0寄存器
REG_CAN_BTR1 EQU 07H ;;//总线定时器1寄存器
SAM_Bit EQU 80H ;;//采样模式位;0==总线被采样1次;1== 总线被采样3次
;;/*
;********************************************************************************************************************
;* 9 RX接收信息计数寄存器
;********************************************************************************************************************
;;*/
REG_CAN_RMC EQU 09H ;;//RX 信息计数器 寄存器
;;/*
;********************************************************************************************************************
;* 10 RX接收缓冲区起始地址寄存器
;********************************************************************************************************************
;;*/
REG_CAN_RBSA EQU 10 ;;//RX 缓冲区起始地址 寄存器
;;/*
;********************************************************************************************************************
;* 其他寄存器的地址定义 PeliCAN模式
;********************************************************************************************************************
;;*/
REG_CAN_ALC EQU 11 ;;//仲裁丢失捕捉寄存器
REG_CAN_ECC EQU 12 ;;//错误捕捉寄存器
REG_CAN_EWLR EQU 13 ;;//错误报警限制寄存器
REG_CAN_RXERR EQU 14 ;;//RX 错误计数器寄存器
REG_CAN_TXERR EQU 15 ;;//TX 错误计数器寄存器
;;/*
;********************************************************************************************************************
;* 29 ACF验收滤波器模式选择寄存器
;********************************************************************************************************************
;;*/
REG_CAN_ACFMOD EQU 29
ACF1_1FT EQU 01
ACF1_2FT EQU 00
ACF1_SFF EQU 00
ACF1_EFF EQU 02
ACF2_1FT EQU 04
ACF2_2FT EQU 00
ACF2_SFF EQU 00
ACF2_EFF EQU 08
ACF3_1FT EQU 10H
ACF3_2FT EQU 00H
ACF3_SFF EQU 00H
ACF3_EFF EQU 20H
ACF4_1FT EQU 40H
ACF4_2FT EQU 00H
ACF4_SFF EQU 00H
ACF4_EFF EQU 80H
;;/*
;********************************************************************************************************************
;* 30 ACF验收滤波器使能寄存器
;********************************************************************************************************************
;;*/
REG_CAN_ACFEN EQU 30
DISABLE_ACF EQU 00
ACF1_FT1EN EQU 01
ACF1_FT2EN EQU 02
ACF2_FT1EN EQU 04
ACF2_FT2EN EQU 08
ACF3_FT1EN EQU 10H
ACF3_FT2EN EQU 20H
ACF4_FT1EN EQU 40H
ACF4_FT2EN EQU 80H
;;/*
;********************************************************************************************************************
;* 31 ACF验收滤波器优先级寄存器
;********************************************************************************************************************
;;*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -