2.3 CAN接口程序设计
CAN总线的接口程序主要就是进行SJA1000的初始化过程和后面的接收中断处理过程。CAN初始化主要是设置CAN的通信参数。需要初始化的CAN控制寄存器有:模式寄存器(MOD)、验收代码寄存器(ACR)、验收屏蔽寄存器(AMR)、总线定时寄存器(RTR)、输出控制寄存器(OC)、中断寄存器(IR)和中断使能寄存器(IER)等。这些寄存器都只能在SJA1000处于复位状态下才可写访问。当SJA1000进入工作模式后,就能够自动接收总线上的数据,并将其放入接收缓冲区,同时产生接受中断,单片机进入中断后将数据从缓冲区中读出,并释放缓冲区。中断返回后,再将数据封装成帧发送给PC机。
2.4 PC端程序设计
PC端程序使用VB 6.0进行开发。VB 6.O在图形界面的制作上比较方便,使用Mscomm组件能够轻松地制作串口的监视环境。只要在软件设计时将上述协议添加进行。图5给出了使用VB 6.0开发的软件调试情况。
3 结 语
该CAN总线接口卡经过实验验证,证明可以达到预期的要求,能够良好地监视总线上的数据,而且结构简单,有较大的利用价值。当CAN总线系统数据流量较大时,可以考虑使用USB接口和PC机进行通信,这样就能够更好地解决速度匹配和应用场合受限的问题。