新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > CAN总线智能采集卡的设计与实现

CAN总线智能采集卡的设计与实现

作者:时间:2009-11-06来源:网络收藏
2)温度传感器DS18B20
DS18B20是一个单线式温度采集数据传输并直接转换数字量的温度传感器。其特点为:独特的单线接口仅需一个端口引脚进行双向通信,多个并联可多点测温;可通过数据线

本文引用地址:http://www.eepw.com.cn/article/157787.htm

供电,电源电压为3~5.5V;零待机功耗;用户可自定义的非易失性温度报警设置;报警识别命令识别并标志超过程序限定温度(温度报警条件)的器件;测温范围为-55~+125○C。 精度为9~12位(与数据位数的设定有关),9位的温度分辨率为±0.5℃,12位的温度分辨率为±0.0625○C,缺省为12位;在93.75~750ms内将温度值转化为9~12位的数字量,典型转换时间为200ms。
DS18B20有3个主要数字部件:64位激光ROM、温度传感器以及非易失性(E2PROM)温度报警触发器TH和TL。操作的顺序为:初始化(复位)、ROM操作命令、暂存器操作命令。通过单的所有操作都从一个初始化序列开始。次初始化序列包括一个由控制器发出的复位脉冲和紧随其后由从机发出的存在脉冲。一旦控制器探测到一个存在脉冲,它就会发出5个ROM命令之一。通过RAM操作命令DS18B20完成一次温度测量。测量结果放在DS18B20的暂存器里,用一条读暂存器内容的存储器操作命令可以将暂存器中数据读出。温度报警触发器TH和TL各由一个E2PROM字节构成。用一条存储器操作命令对TH和TL进行写入,对这些寄存器的读出则需要通过暂存器。所有操作命令都是8位,所有数据均以低有效位在前的方式(LSB)进行读/写。连接DS18B20的总线电缆有长度限制,采用普通信号电缆长度为50米,总线电缆为双绞线带屏蔽电缆时,正常通信距离为150米。另外,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号。如果DS18B20接触不好或断线,则程序读该DS18B20时,将没有返回信号。
3)可编程键盘、显示器接口芯片---8279 及总线物理接口---82C250
8279芯片是专用于键盘、显示器的接口芯片,能对显示器自动扫描,能识别键盘上闭合键的键号,提高CPU的工作效率。8279包括键盘输入和显示输出两个部分,键盘部分提供的扫描方式,可以和具有64个按键和传感器的阵列相连,能自动消除开关抖动以及对n键同时按下采取保护。显示部分按扫描方式工作,可以显示8或16位LED八段数码显示器。
82C250是PHILIPS公司生产的控制器与物理总线之间的接口,提供对总线的差动发送和接收能力,最初是为汽车高速通信的应用而的。它与ISO/DIS 11898标准全兼容,具有抗汽车环境下的瞬间干扰、保护总线能力。可以通过调整CAN总线上通信脉冲的斜率来降低射频干扰。可有110个节点相连接。
4.软件
的软件中,主要采用模块化的设计思想,主要分为系统初始化程序、CAN中断服务程序、INT1中断服务程序(即8279中断服务程序)、ADC中断服务程序、T0中断服务程序和“看门狗”定时器服务程序等几个部分。
系统初始化程序主要是对CAN控制器、8279芯片、DS18B20、定时器、ADC控制寄存器、中断控制寄存器、中断优先级寄存器等进行初始化设置。然后根据发生事件的不同来进行不同的处理。
CAN中断服务程序主要包括CAN接收中断服务程序和CAN发送中断服务程序,主要处理CAN总线通信过程中的各种情况。
INT1外部中断是由8279引起的中断,当8279的FIFO寄存器不为空的时候,就向CPU发出中断申请,CPU进入中断后,首先读8279的状态寄存器,如果发生错误,就进入键盘出错处理程序。否则,进入键盘处理程序。在键盘处理程序中,从FIFO寄存器中读出键值,根据键值的不同,进行相应的处理。
T0中断程序主要处理跟定时有关的操作,可以起到时钟的作用,并且根据设定好的参数,定时采样,定时发送的功能。
T2定时器是专门防止单片机“死机”而设置的“看门狗”定时器。
本文作者创新点:采用当前流行器件来构成CAN以及相关软件设计。CAN总线数据采集系统由上位机、CAN总线适配卡及若干个CAN节点组成。可通过网卡或者嵌入式WEB网关连入局域网,再通过路由器接入Internet。通过WEB服务器,利用OPC技术,进一步实现B/S结构的实时监控。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭