基于STCl2CA052AD单片机和XT881l芯片实现温度报警系统的设计

描述

引言

通用串行总线USB(Universal Serial Bus)具有较高的传输速率、支持即插即用和热插拔、易于扩展以及可靠性高、成本低、功耗低等特点,USB2.0接口的传输速率高达480Mbps,完全能满足PC机和外设进行大量数据交换的要求。

LabVIEW是美国国家仪器公司开发的一种虚拟仪器平台,提供了丰富的数据采集、分析和存储函数以及包括RS232/485等各种仪器通信总线标准的所有功能函数,但是LabVIEW开发的虚拟仪器通常是建立在LabVIEW支持的价格昂贵的数据采集板卡之上,本文选用单片机小系统对温度进行采集。

1、系统组成及工作原理

系统框图如图l所示,整个系统包括温度采集、温度传输和温度处理3部分,其中温度采集系统由DSl8820温度传感器组成;温度传输部分由STCl2CA052AD单片机和USB接口芯片XT8811组成;温度处理部分由LabVIEW软件构成。首先,由温度传感器DS18820将测量的具体温度数值通过串行方式直接传给单片机,然后单片机将收到的温度值经过USB接口电路送到计算机,最后,通过LabVIEW软件进行处理。

2、 硬件电路设计

2.1 温度采集电路

采用STCl2CA052AD为主芯片,它是5l内核的单片机,并且资源更加丰富的,指令代码完全兼容传统8051,但速度快8~12倍。它本身自带看门狗和ISP,可以在线编程。

温度传感器采用美国DALLS公司推出的一线数字式智能温度传感器DSl8820,测量温度范围为一55~125℃,通过简单的编程可实现9~12位的数字值读取方式,分别在93.75ms和750ms内将温度值转化为9位和12位的数量级,对应的分辨率为0.5℃,0.25℃,0.125℃,0.0625℃,CPU只需一根端口线就可以与DSl8820通信,每个DSl8820都有一个全球唯一的64位的二进制ROM代码标志着器件的ID号,整个系统要严格按照该器件单总线协议规定的时序进行工作,具体的内容是初始化器件、识别器件和进行数据交换等。基于DS18820的温度测量装置硬件电路如图2所示。

2.2 USB转RS232接口电路

选用XT881l芯片,该芯片的功能是USB转RS232串行接口,是单片机和PC机通信的一种非常简便的通讯方法,只用一条USB线就可以进行ISP在线编程和传输数据了。XT8811芯片符合USBl.1,兼容USB2.0规范;基于高速USB UART IC,支持RS232标准串行接口,速度75bps~6Mbps;支持信号自动交换输入输出模式。USB接口硬件电路如图3所示。

3、LabVlEW的程序设计

3.1 LabVIEW的串行通信

在与LaBIEW通信之前,必须安装XT8811的驱动程序。XT881l的驱动程序安装以后,会自动在计算机系统里虚拟出一个串行COM口。比如,计算机原来有两个串口COMl和COM2,那么XT88ll驱动程序安装以后自动虚拟出一个COM3口(一般来说是这样,具体COM端口号由虚拟驱动程序自动分配)。这个由XT88ll驱动程序虚拟出来的COM口和计算机原有的COM口对于应用软件来说是一样的。只要应用软件能够映射(或选择)到该虚拟COM口,就可以实现对RS-232端口的通信。所以本设计采用了LabVIEW的VISA的串行通讯子Ⅵ来开发串行通信软件。共有5个串行通信节点,分别实现串口初始化、串口写、串口读、检测串口缓存、中断等功能。应用LabVIEW的图标设置串口,直接读出串口里的数据,实现与单片机温度采集系统的数据通信。如图4所示,串口默认设置为:9600b/s,8位数据位,l位停止位,l位起始位,无握手信号,下位机通信程序亦遵守上述协议。

3.2 基于用户事件的温度报警

当温度超过报警上限时时,系统会自动触发报警,并记录报警数、报警发生的时间和温度值进行记录。采用LabVIEW的用户事件编程,首先通过Create User Event函数创建用户事件,然后通过Register For Events节点注册事件。将注册的事件Refnum与事件结构的Dynamic Event Termi—nals连接,最后需要通过Destroy User Event函数销毁用户事件。如图5所示,程序框图中首先通过Create User Event函数创建用户事件,该用户事件携带的数据类型位Double,名称为“温度报警”,然后通过Register For Event函数注册温度事件。上方的循环用来采集温度数据,当温度数据超过报警上限时通过Generate User Event函数产生用户事件。下方的循环用于处理事件,既当用户事件发生时,更新报警记录;当用户单击“清除报警记录”按钮时清除报警。最后通过Unregister For Event函数和Destroy User Event函数注销和销毁用户事件。

4 、结束语

利用LabVIEW强大函数功能和USB接口即插即用的方便性,结合以单片机为核心组成的小系统,可以很方便地完成数据采集及处理等功能,具有很强的工程实用性,可广泛应于测试控制领域。

责任编辑:gt


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分