SJA1000初始化SJA1000初始化
CANINI:
MOV DPTR, #MOD ;方式寄存器
#09H ;进入复位模式 对 SJA1000 进行初始化. MOV A ,
MOVX @DPTR, A
MOV DPTR, #CDR ;时钟分频寄存器 MOV A , #88H ;选择 PeliCAN 模式 关闭时钟输出
CLKOUT
A MOVX @DPTR,
MOV DPTR, #IER ;中断允许寄存器
;开放发送中断 超载中断和错误警告中MOV A , #0DH
断
MOVX @DPTR, A
MOV DPTR , ...
SJA1000初始化
CANINI:
MOV DPTR, #MOD ;方式寄存器
#09H ;进入复位模式 对 SJA1000 进行初始化. MOV A ,
MOVX @DPTR, A
MOV DPTR, #CDR ;时钟分频寄存器 MOV A , #88H ;选择 PeliCAN 模式 关闭时钟输出
CLKOUT
A MOVX @DPTR,
MOV DPTR, #IER ;中断允许寄存器
;开放发送中断 超载中断和错误警告中MOV A , #0DH
断
MOVX @DPTR, A
MOV DPTR , #AMR ;接收屏蔽寄存器 MOV R6, #4
MOV R0 , #DAMR ;接收屏蔽寄存器内容在片内 RAM 中的首址
AMR:
MOV A @R0
MOVX @DPTR , A ;接收屏蔽寄存器赋初值 INC DPTR
DJNZ R6 , AMR
MOV DPTR , #ACR ;接收代码寄存器 MOV R6 , #4
MOV R0, #DACR ;接收代码寄存器内容在片内 RAM 中的首址
ACR:
MOV A, @R0
MOVX @DPTR, A ;接收代码寄存器赋初值 INC DPTR
DJNZ R6 , ACR
MOV DPTR, #BTR0 ;总线定时寄存器 0 MOV A, #03H
MOVX @DPTR, A
MOV DPTR, #BTR1 ;总线定时寄存器 1 MOV A , #0FFH ;16MHz 晶振情况下 设置波特率为 80kbps. MOVX @DPTR, A
MOV DPTR, #OCR ;输出控制寄存器
MOV A , #0AAH
MOVX @DPTR , A
#RBSA ;接收缓存器起始地址寄存器 MOV DPTR,
MOV A, #0 ;设置接收缓存器 FIFO 起始地址为 0
A MOVX @DPTR,
MOV DPTR, #TXERR ;发送错误计数寄存器. MOV A , #0 ;清除发送错误计数寄存器 MOVX @DPTR, A
MOV DPTR , #ECC ;错误代码捕捉寄存器 MOVX A , @DPTR ;清除错误代码捕捉寄存器 MOV DPTR, #MODE ;方式寄存器
MOV A , #08H ;设置单滤波接收方式 并返回工作状态 MOVX @DPTR , A
RET
本文档为【SJA1000初始化】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。