📄 initsja1000.txt
字号:
===========
程序流程:开始-进入复位模式-设置sja1000为basic can模式-设置节点的acr和屏蔽寄存器amr-设置btr0和btr1-设置输出控制寄存器ocr-返回当前工作模式-结束
===========
MOV DPTR,#CR ;控制寄存器CR的地址送DPTR
MOV A,#01H
MOVX @DPTR,A ;进入复位模式
MOV DPTR,#CDR
MOV A,#00H
MOVX @DPTR,A ;选择BASIC CAN模式、时钟不输出
MOV A,#NODECODE
MOVX @DPTR,A ;节点号NODECODE写入ACR
MOVX DPTR,#AMR
MOV A,#00H
MOV @DPTR,A ;AMR置为0,当且仅当RXID0=ACR时接收数据。
MOV DPTR,#BTR0 ;设定总线时序寄存器BTR0,系统采用12MHz晶振
MOV A,#85H ;分频后总线时钟频率为2MHz
MOVX @DPTR,A ;同步跳转宽度为3tscl
MOV DPTR,#BTR1 ;设定总线时序寄存器BTR1
MOV A,#0B4H ;位同步时间为1个tscl,采样开始位置TSEG1=5tscl
MOVX @DPTR,A ;TSEG2=4tscl,每一位时间10tscl(200kHz),每位采样3次
MOV DPTR,#OCR ;设置输出控制寄存器
MOV A,#1AH ;数据从TX0按正常输出模式同极性输出
MOV @DPTR,A ;TX1不用
MOV DPTR,#CR ;初始化完成,使控制器退出复位模式,进入工作模式工作。
MOV A,#06H
MOV @DPTR,A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -