CAN总线在商用车上数据采集的实现
3 系统的软件设计
本系统软件由数据采集发送单元软件和数据接收显示单元软件两大部分组成。数据采集发送单元软件负责对商用车信号进行采集、处理并发送;数据接收.显示单元负责对以上数据进行接受,并显示输出系统的主程序框图、数据接收显示单元软件框图和数据采集发送单元软件框图如图6-8所示。
图6 系统主程序框图
图7 接收单元框图
商用车信号采集电路程序编写可分为:
1) CAN总线通讯节点的初始化程序;
2) CAN总线数据采集发送单元程序;
3) CAN总线数据接收显示单元程序。
CAN总线的初始化十分重要,这里给出CAN初始化程序。下面就以Keil C51为平台,系统介绍如何用C51语言对SJA1000 CAN总线控制器进行初始化。
以上就是SJA1000初始化的全部程序,其中AT89C52.H是为89C52主控制器专门编写的库函数,它在Keil软件中是现成的,只要用#inelude语句包括进来即可;int rins.h是为今后调用空函数-nop-()作准备,它里面包括了一个类似于汇编语言的NOP语句;其中还须注意的就是在主函数中一般都有一个while(1)语句,表示不断地做循环,否则在程序编译时会提示出错。
评论