CAN总线节点电路的设计与实现
时间:08-03
来源:互联网
点击:
4 软件设计
和硬件电路相比,软件的设计相对来说要复杂的多。而且,其中还涉及到有关通讯协议的问题,对于不同的控制系统、不同的功能要求,CAN总线通讯软件的差别很大,在此不可能一一列出。但是,对于基于SJA1000的CAN总线系统,它们开始时都必须对SJA1000进行初始化,而这种初始化的流程是基本一致的。下面给出用汇编语言编制的SJA1000的初始化程序,假设SJA1000的首地址为0100H,其中设置波特率的有关参数是针对晶振为12M,波特率为500Kbit/s计算出来的。另外,在整个CAN总线系统中,所有节点设置的波特率必须一致,否则,系统就不能正常工作。
MODE EQU 0100H
BTR0 EQU MODE+6
BTR1 EQU MODE+7
ACR0 EQU MODE+16
AMR0 EQU MODE+20
OCR EQU MODE+8
RBSA EQU MODE+30
CDR EQU MODE+31
MOV A,#01H
MOV DPTR,#MODE
MOVX @DPTR,A
MOV A,#0C0H
MOV DPTR,# CDR
MOVX @DPTR,A
MOV A,#1AH
MOV DPTR,# OCR
MOVX @DPTR,A
MOV A,#85H
MOV DPTR,# BTR0
MOVX @DPTR,A
MOV A,#0B4H
MOV DPTR,# BTR1
MOVX @DPTR,A
MOV A,#00H
MOV DPTR,# RBSA
MOVX @DPTR,A
MOV A,#0FFH
MOV DPTR,# AMR0
MOV R0,#04H
BEGIN10:MOVX @DPTR,A
INC DPTR
DJNZ R0,BEGIN10
MOV A,#00H
MOV DPTR,#MODE
MOVX @DPTR,A
5 结束语
CAN 具有较强的纠错能力,适用于高噪声环境, 并具有较远的传输距离, 现已广泛应用于许多领域,该设计作为CAN总线节点的一个模块,能够和仪器仪表等设备相结合,使其具有网络通讯的能力,有着广阔的应用前景。
和硬件电路相比,软件的设计相对来说要复杂的多。而且,其中还涉及到有关通讯协议的问题,对于不同的控制系统、不同的功能要求,CAN总线通讯软件的差别很大,在此不可能一一列出。但是,对于基于SJA1000的CAN总线系统,它们开始时都必须对SJA1000进行初始化,而这种初始化的流程是基本一致的。下面给出用汇编语言编制的SJA1000的初始化程序,假设SJA1000的首地址为0100H,其中设置波特率的有关参数是针对晶振为12M,波特率为500Kbit/s计算出来的。另外,在整个CAN总线系统中,所有节点设置的波特率必须一致,否则,系统就不能正常工作。
MODE EQU 0100H
BTR0 EQU MODE+6
BTR1 EQU MODE+7
ACR0 EQU MODE+16
AMR0 EQU MODE+20
OCR EQU MODE+8
RBSA EQU MODE+30
CDR EQU MODE+31
MOV A,#01H
MOV DPTR,#MODE
MOVX @DPTR,A
MOV A,#0C0H
MOV DPTR,# CDR
MOVX @DPTR,A
MOV A,#1AH
MOV DPTR,# OCR
MOVX @DPTR,A
MOV A,#85H
MOV DPTR,# BTR0
MOVX @DPTR,A
MOV A,#0B4H
MOV DPTR,# BTR1
MOVX @DPTR,A
MOV A,#00H
MOV DPTR,# RBSA
MOVX @DPTR,A
MOV A,#0FFH
MOV DPTR,# AMR0
MOV R0,#04H
BEGIN10:MOVX @DPTR,A
INC DPTR
DJNZ R0,BEGIN10
MOV A,#00H
MOV DPTR,#MODE
MOVX @DPTR,A
5 结束语
CAN 具有较强的纠错能力,适用于高噪声环境, 并具有较远的传输距离, 现已广泛应用于许多领域,该设计作为CAN总线节点的一个模块,能够和仪器仪表等设备相结合,使其具有网络通讯的能力,有着广阔的应用前景。
总线 CAN总线 单片机 51单片机 半导体 ARM S3C2410 电路 电阻 相关文章:
- 热插拔和缓冲I2C总线 (04-14)
- PCIe总线何时突破Unix服务器坚冰(02-03)
- TMS320VC5402 HPI接口与PCI总线接口设计(04-12)
- 基于Nios II的I2C总线接口的实现(04-09)
- 双口RAM CY7C026在高速数据采集系统中的应用(04-12)
- 计算机在新型多电机同步系统中的应用(07-08)
