
can总线SJA1000的初始化相关实验.docx
5页实验一 SJA1000 的初始化一、实验目的:学习并完成SJA1000的初始化二、实验设备:EL-8051-III 型单片机实验箱三、实验原理:S JA 1 000的初始化只有在复位模式下才可以进行,初始化主要包括工作方式 的设置、接收滤波方式的设置、介绍屏蔽寄存器(AMR)和接收代码寄存器(ACR) 的设置、波特率参数设置和中断允许寄存器(IER)的设置等在完成SJA1000 的初始化设置以后,SJA1000就可以回到工作状态,进行正常的通信任务初始化流程:四、实验内容及步骤初始化CAN节点,使SJA1000处在准备工作状态1•给试验箱换上CAN控制器;2. 编写并编译初始化程序;3. 下载程序并调试编写的程序如下:MODE EQU 0DE00H ;模式寄存器CMR EQU 0DE01H ;命令寄存器SR EQU 0DE02H ;状态寄存器IR EQU 0DE03H ;中断寄存器IEREQU0DE04HBTR0EQU0DE06HBTR1EQU0DE07HOCREQU0DE08H;中断使能寄存器;总线定时寄存器一;总线定时寄存器二;输出控制寄存器ALCEQU0DE0BHECCEQU0DE0CHTXERREQU0DE0FHACR0EQU0DE10HACR1EQU0DE11HACR2EQU0DE12HACR3EQU0DE13HAMR0EQU0DE14HAMR1EQU0DE15HAMR2EQU0DE16HAMR3EQU0DE17HFINEQU0DE10HID1EQU0DE11HID2EQU0DE12HDATA1EQU0DE13HRBSAEQU0DE1EHCDREQU0DE1FHDAMREQU40HDACREQU50HORG4000HJMPSTARTORG4080H;仲裁丢失捕捉寄存器 ;错误代码捕捉寄存器 ;发送错误计数器;验收代码寄存器0;验收屏蔽寄存器0;发送/接收帧信息;发送/接收缓冲区之标示符 ;发送/接收缓冲区之标示符 ;发送/接收数据首址;接收缓冲器起始地址寄存器;时钟分频寄存器START:mov dptr,#mode mov a,#01h movx @dptr,amov dptr,#acr0 mov a,#00h movx @dptr,a mov dptr,#acr1 mov a,#60h movx @dptr,a mov dptr,#acr2mov a,#00h movx @dptr,a mov dptr,#acr3 mov a,#00h movx @dptr,a mov dptr,#amr0 mov a,#00h movx @dptr,a mov dptr,#amr1 mov a,#0fh movx @dptr,a mov dptr,#amr2 mov a,#0ffh movx @dptr,a mov dptr,#amr3 mov a,#0ffh movx @dptr,a mov dptr,#btr0 mov a,#01h movx @dptr,a mov dptr,#btr1 mov a,#1ch movx @dptr,a mov dptr,#ocr mov a,#0aah movx @dptr,a mov dptr,#cdrmov a,#89h movx @dptr,a mov dptr,#mode ;退出复位模式 mov a,#00h movx @dptr,amov dptr,#sr ;判断状态寄存器是否初始化成功,成功则点亮 P1 口的 灯movx a,@dptrcjne a,#0ch,startmov P1,#00hend五、实验结果Pl 口连接的灯均亮了,外部存储器DEOOH〜DE30H的值为下图所示:外部存错蛊窗口 墨地址012345689ABcDEFFDEOO00000C000000011CM000000006000DE10000FFFFF30000000FFFF7F67DO0000DE2000OFFFFF30000000FFFF7F67DO2090八、实验心■得^882790828401FFEFFFFF110004V。












