数据采集的设计与串口传输
对无线温度监控系统数据采集的设计和实现可分为人机界面的设计、数据采集的通信协议的制定、数据采集和数据采集的串口实现等几个部分。
系统采集的现场数据通过串口发送到ARM9。数据的显示及对系统的操作,需要用到人机交互界面。人机交互界面主要包括图形图像界面和键盘操作界面两部分。键盘输入部分主要用于实现对图形图像界面及系统终端的输入控制。
本系统有2个符合16C550工业标准的异步串行口UART0和UART1,即有两个异步串行I/O端口。UARTO和UART1的发送器和接收器包含16个字节的FIFO数据缓冲区和移位寄存器,内置波特率发生器。对将要被发送的数据,首先得把它写入FIFO数据缓冲区,并复制到发送移位寄存器,然后将它从数据输出端口进行移位输出即可。将要被接收的数据是从数据接收端口移位输入到移位寄存器,然后复制到FIFO中。
图4 串口通信相关程序流程图(b)
从现场采集的数据,如何根据串口通信协议处理收到的上位机的数据、如何给上位机发送数据,这些在很多嵌入式系统中都包含的UART(Universal Asynchronous Receiver Transmitter通用异步收发器)通信,UART单元提供了两个独立的异步串行I/O端口,支持的最高波特率为115.2kbps。UART模块包含波特率发生器、发送器、接收器和控制单元。波特率发生器以MCLK(主时钟)作为时钟源。
本系统每隔500毫秒就查询一次有没有需要传送的数据到上位机或从上位机发送的命令。如果检测到现场温度低于18℃或者高于35℃,系统就会向用户发送相应的报警信息,用户也可以在任何时候发送命令询问现场的温度和湿度。
结束语
本文以ARM926EJ-S为微处理器,介绍了无线温湿度监控系统相关硬件,下位机人机界面软件的设计思想,及数据的采集、发送以及和上位机的通信,系统的功能等。无线远程监控系统如果要代替有线监控系统还需一段时间,它们会向智能化、小型化、简便化方向发展,能对远程终端进行各种各样的控制,能够实现真正意义上的远程无线监控。