新闻中心

EEPW首页>手机与无线通信>设计应用> 基于CAN总线的温度测量节点设计

基于CAN总线的温度测量节点设计

作者: 时间:2011-07-19 来源:网络 收藏

c.jpg


2.2通信电路的
通信电路是整个系统实现通信的关键部分,系统中各个控制器是通过通信电路接入CAN网络上的,实现信号数据的传输。CAN通信电路采用STC89C52处理器、PHILIPS公司的控制器SJA1000、NXP公司的收发器82C250和高速光电耦合器6N137等器件组成。在CAN通信电路中微处理器负责对SJA1000进行初始化,各信号通过CAN总线控制器实现信号数据的接收和发送等通信任务。同时为了增加CAN总线的抗干扰能力,更好地实现了总线上各CAN节点间的电气隔离,SJA1000的TX和RX引脚通过连接光耦6N137后再与总线收发器PCA82C250相连,总线收发器82C250的TXD和RXD分别接光耦6N137的输出OUT和输入IN端,再通过具有差动发送和接收功能的总线终端CAN_H和CAN_L连接入总线电缆中,完成通信的传输。

3节点的软件
节点的软件包括CAN总线初始化、发送子程序及中断接收程序软件设计和传感器DS18B20的程序设计。其节点流程图如图4所示。

d.jpg


3.1 CAN初始化程序
CAN初始化即初始化CAN节点。要保证通信正确可靠则必须先对控制器SJA1000进行初始化参数设置。初始化设置是通过微处理器对SJA1 000的寄存器进行初始化,这些初始化包括控制寄存器的配置、命令寄存器的配置、状态寄存器的配置、中断管理寄存器的设置、总线定时寄存器的配置、输出控制寄存器的设置以及时钟分频寄存器的设置等。
系统上电后,对CAN初始化只有在复位模式下才可以开始,初始化设置完成后,CAN控制器就可以回到工作状态,即进入工作模式,执行正常的通信任务。CAN控制器初始化流程图如图5所示。

e.jpg


3.2 CAN通信电路程序
CAN总线节点要完成通信任务则还必须包括发送子程序及中断接收程序。发送子程序负责各节点报文的发送任务。发送时只需将待发送的数据信息按特定的格式组合成一帧报文,送入CAN控制器SJA1000的发送缓冲器中,启动SJA1000发送即可完成发送报文任务。在向SJA1000发送缓冲器发送报文之前,可先做一些判断,判断其是否正在接收数据、先前发送是否成功以及发送缓冲器是否锁定等等,以确保数据发送的可靠性。
中断接收程序主要是负责节点报文的接收以及其它中断情况的处理。当进入中断后要进行是否有数据的判断,以防干扰误中断。
3.3 温度传感器的程序设计
温度节点电路上电后也要进行初始化设置,初始化完成后,温度测量节点中的温度传感器对采集到的数据信息实时处理、现场数据实时显示,并判断采集的信息是否超过正常值,如出现异常,则报警提示并通过CAN通信电路进行通信。

4 结束语
本设计应用性很强,在实际应用中表明,其温度测量的精度和稳定性都得到很好的提高,准确地反应了工作状况和实际状况,达到了预期目标。

接地电阻相关文章:接地电阻测试方法



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭