基于EasyARM1138的蔬菜大棚无线监控系统.doc
基于EasyARM1138的蔬菜大棚无线监控系统 ARM1138外围设备开发及数据综合处理摘 要随着蔬菜大棚智能技术的推广,如何利用通信技术以及自动监控技术控制大棚内部环境,提高大棚蔬菜产量,成为一个热门研究方向。本设计使用嵌入式微处理器EasyARM1138和无线通讯技术实现蔬菜大棚环境的检测和控制。通过数字式温度传感器DS18B20、湿度传感器以及CO2浓度传感器MS4100实现对蔬菜大棚内部温湿度、CO2浓度的检测,并将检测结果送到本地单片机AT89S52上,而AT89S52则通过无线收发模块将信号传输给远端的EasyARM1138,EasyARM1138将信号处理显示后通过串口送到PC机上。上位机部分通过由LabVIEW开发的界面进行数据的显示、存储以及对历史数据的查询。LabVIEW是一种图形化的编程界面,实现对串口数据的显示和采集非常方便。在数据的传输方面,采用分时复用并添加标志的方法,实现对多种数据的区分传输。通过调试,本系统实现了对蔬菜大棚各环境参数的实时监控。关键词:EasyARM1138;数据检测;LabVIEW;无线通讯Wireless monitoring system of greenhouse vegetables basing on EasyARM1138Peripherals development and date integrated treatment of EasyARM1138AbstractWith the development of vegetable greenhouse intelligent technology,how to make good use of communication technology and automated monitoring technology to control the internal environment of greenhouses and how to improve the production of greenhouse vegetable have become a hot research. In this design, embedded microprocessors EasyARM1138 and wireless communication technologies are used to detect and control the vegetable greenhouse environment.Detect the vegetables greenhouse internal temperature、humidity and CO2 density through the digital temperature sensor DS18B20, humidity sensor and CO2 density sensor MS4100,and send the test results to the local single-chip AT89S52.AT89S52 transmits signal to the remote EasyARM1138 through wireless transceiver module. EasyARM1138 signal processing will be displayed to the PC through the serial port on board.In upper part, the interface which is developed by LabVIEW is used for data display, storage and query of historical data. LabVIEW is a graphical programming interface, which is used for the serial data display and collection. From the aspects of its data transmission, distinction transmission between a wide ranges of data is in the method of time-multiplexing and adding the logo.Through debugging, this system can monitor all the real-time environment of vegetables greenhouse.Key words: EasyARM1138; data detection; LabVIEW; wireless communication目 录摘 要IAbstractII第一章 引言11.1 蔬菜大棚发展现状11.2 系统设计概述1第二章 系统总体设计32.1 硬件总体设计32.1.1 无线传输方式32.1.2 无线数据传输转接芯片32.1.3 PC机的数据接收方式52.2 软件总体设计5第三章 蔬菜大棚远程硬件设备开发73.1 EasyARM1138开发板简介73.2 无线电通讯简介93.3 串口通讯技术简介113.4 远端数据显示14第四章 EsayARM1138核心程序设计174.1 无线数据接收184.2 LCD数据实时显示184.3 串口数据发送18第五章 远程信息综合平台的构建215.1 虚拟仪器技术215.2 数据库技术225.3 具体应用程序的实现245.3.1 数据库访问程序255.3.2 账户登录程序285.3.3 账户管理程序295.3.4 串口数据采集程序325.3.5 数据存储及显示程序325.3.6 数据检索程序335.3.7 数据波形回放程序35第六章 系统整体调试366.1 蔬菜大棚远程设备调试366.1.1 LCD显示调试366.1.2 无线数据通讯调试366.2 远程数据管理调试37第七章 总结39参考文献40附录A42LCD显示程序42串口收发程序47主程序53致谢59第一章 引言1.1 蔬菜大棚发展现状发展温室种植,是中国农业走现代化道路的一种有效途径,对提高经济效益,改善农业生态环境具有十分重要的意义。随着人们对生活质量要求的提高,反季节蔬菜的市场显得捉襟见肘。在减少生产成本的基础上,如何实现大棚的智能化、提高温室蔬菜的产量,已成为亟待解决的问题。就我国而言,人们生活水平质量的提高使得对反季节蔬菜的需求激增,而我国的蔬菜大棚使用率还不是太高。温室生产以达到调节产期,促进生长发育, 提高质量和产量为目的。而温室设施的关键技术是环境控制调节温室内的湿度、温度、CO2浓度等环境因子,创造出植物生长的最佳环境。长期以来,我国大部分温室种植,仍是人工靠经验参数控制温室内的环境,人工控制工作效率低,工作强度大,并且环境的控制很难保证做到最优。智能大棚的基本目标,就是为人们提供一个适宜、安全、方便和高效率的蔬菜培育环境,提供一种富有人性化的操作界面。本文设计的蔬菜大棚环境自动控制系统,是实现温室环境因子调节的自动控制和管理系统。1.2 系统设计概述本设计要完成一个远程数据采集系统,从其工作过程来看,首先是下位机的从机(8051单片机)通过传感器采集来温度、湿度、CO2浓度和光照强度信号并将数据通过无线传输模块发送到主机上,作为主机的LM3S1138接收到数据后通过串口将数据发送到上位机上,上位机利用LabVIEW建立的软件接收到数据后将数据存储到自建数据库中。在此过程中,从机可以根据采集到的数据发出控制信号,通过继电器起到控制作用。本论文将着重介绍主机与上位机两方面。本设计所用到的技术主要有ARM芯片技术与虚拟仪器技术。LM3S1138采用为小封装应用方案而优化的 32位ARM® Cortex-M3 v7M架构,是Luminary Micro公司 Stellaris所提供的首款基于ARMCortexTM-M3所提供的一系列微控制之一,它为对成本尤其敏感的嵌入式微控制器应用方案带来了高性能的32位运算能力。LM3S1138仅采用与Thumb®兼容的Thumb-2指令集以获取更高的代码密度,集成嵌套向量中断控制器(NVIC),使中断的处理更为简捷;精确的位操作(bit-banding),不仅最大限度的利用了存储器空间而且还改良了对外设的控制;4个通用定时器模块(GPTM),每个提供2个16-位定时器,每个GPTM 可被独立配置进行操作,GPIO模块由8个物理GPIO模块组成,每个对应一个独立的GPIO端口(端口A,端口B,端口C,端口D,端口E,端口F,端口G和端口H),每个GPIO端口都是同一物理块中的独立硬件的实例化(hardware instantiation)。LM3S1138 微控制器含有8个端口以及8个的这些物理GPIO模块,并可承受5V电压,具有2mA,4mA和8mA 引脚驱动能力。另外,LM3S1138有3个完全可编程的16C550-type UART,支持IrDA,并带有独立的16x8发送(TX)以及16x12接收(RX)FIFO,可减轻CPU中断服务的负担,可编程设置FIFO长度,包括1字节深度的操作,以提供传统的双缓冲接口,具有标准异步通信位(开始位、停止位、奇偶位),其USB接口提供虚拟UART的功能,不需要额外的接口电路,这为与PC机之间的串口通讯提供了有利条件。虚拟仪器技术,就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。同其他技术相比,虚拟仪器技术具有性能高、扩展性强、开发时间少、无缝集成四大优势。虚拟仪器的图形化数据流语言和程序框图能自然地显示数据流,同时地图化的用户界面直观地显示数据,使我们能够轻松地查看、修改数据或控制输入。此外,PC机可利用软件方法(LabVIEW)方便的管理外围设备,这为实现对串口的管理提供了方便。另外,LabVIEW可以利用LabSQL组件访问access数据库,这样就方便了数据的管理。第二章 系统总体设计2.1 硬件总体设计本系统的硬件包括数据采集模块、无线数据转接模块以及PC机部分。其中数据采集模块由单片机8052、AD0809以及传感器组成,这里不作过多介绍。下面就无线传输方式、无线数据传输转接芯片以及PC机数据接收方式三部分进行介绍。2.1.1 无线传输方式在远程数据信息方面,通讯方式的选择至关重要。就课题本身背景来说,蔬菜大棚环境较为偏僻,如果采用有线数据通讯方式,线路的铺设极不方便,而且成本较大,不利于整个系统的实际应用与推广,所以选择采用无线通讯的方式。对于无线通讯方式,有三种方案可供选择:无线电通讯、蓝牙通讯、GSM通讯。下面就三种无线通讯方式进行对比。表 2.1 无线通讯方式比较无线通讯方式最大传输距离最大传输速率开发成本开发难度无线电通讯510米9.67 kbps低低蓝牙通讯830米1Mbps较低较高GSM通讯3.5公里56Kbps高高由于本系统的应用场合是农业大棚,且数据传输速率要求不高,考虑到开发成本和难度来看,低速通讯方式的无线电通讯已满足要求,所以采用一般的无线电通讯,频率为315MHz,是一般遥控器控制信号的通用频率。2.1.2 无线数据传输转接芯片无线数据传输转接芯片是将无线数据接收到之后,将数据发送到PC机,利用PC机强大的处理能力进行数据存储和管理,在整个系统中起到数据中转作用,这就要求此芯片处理数据速率要极快,以防止数据传输滞后,满足数据实时采集存储要求。对此,有两种芯片公选择:AVR系列和ARM系列.下面就两种芯片进行一下比较。AVR单片机是ATMEL公司研制开发的一种新型单片机,它与51单片机、PIC单片机相比运行效率高很多、芯片内部的Flash、EEPROM、SRAM容量较大、全部支持在线编程烧写(ISP、每个IO口都可以输出高、低电平,驱动能力强、内部资源丰富,一般都集成AD、DA模数转换器;PWM;SPI、USART、TWI、I2C通信口;丰富的中断源等。ARM,即Advanced RISC Machines的缩写,处理器本身是32位设计,但也配备16位指令集。一般来讲存储器比等价32位代码节省达35%,然而保留了32位系统的所有优势。这里采用的是Cortex-M3架构的ARM芯片LM3S1138,ARM Cortex-M3处理器相对AVR单片机有更强的数据处理能力,其特点有以下几点:1) 紧凑的内核;2) Thumb-2指令集,在通常与8位和16位设备相关的存储容量中,特别是在微控制器级应用的几千字节存储量中,提供ARM内核所期望的高性能;3) 高速的应用通过Harvard结构执行,以独立的指令和数据总线为特征;4) 优越的中断处理能力,通过执行寄存器操作来实现,这些寄存器操作在处理硬件中断时使用;5) 存储器保护单元(MPU)为复杂的应用提供特权操作模式;6) 从 ARM7 处理器系列中移植过来,以获得更好的性能和电源效率;7) 功能齐全的调试解决方案: 串行线JTAG调试端口(SWJ-DP); Flash 修补和断点(FPB)单元,用于实现断点操作; 数据观察点和触发(DWT)单元,用于执行观察点、触发源和系统性能分析; 仪表跟踪宏单元(ITM),用于支持printf 型调试; 跟踪端口接口单元(TPIU)用作跟踪端口分析仪的桥接;综合上述,ARM Cortex-M3具有更强的数据处理能力,选用LM3S1138对系统的开发更具有优势。2.1.3 PC机的数据接收方式PC机的数据接收方式,也就是PC机与LM3S1138之间的数据交换方式。首选串口,因为在数据通讯技术中串口通讯技术最为成熟,并且实现比较简单,还有一个重要原因就是EasyARM1138的USB电缆具有“三合一”功能,将5V供电、程序下载与在线仿真、UART串行通信三种功能只用一根USB电缆实现,为后续的串口通讯提供了便利的条件。所以PC机与LM3S1138之间的数据交换方式采用了串口通讯方式。2.2 软件总体设计本设计的软件部分包括ARM1138的程序的设计和PC机远程管理界面的设计两部分。ARM1138的编程方法主要是以IAR Embedded Workbench为编程环境,编程语言采用C语言,这个方法当是首选,编程简单,容易实现。PC机远程管理界面的设计可采用的编程方案较多,这里采用LabVIEW,也就是虚拟仪器技术,下面就将LabVIEW相对其他编程环境的优势进行介绍。LabVIEW是美国国家仪器公司推出的一种基于图形开发、调试和运行程序的集成化环境, 是目前国际上唯一的编译型的图形化编程语言。LabVIEW提供各种功能强大的测量分析和信号处理工具,集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。总体来说,本设计采用以下方案:从机部分8051单片机通过传感器将大棚环境数据采集为数字信号,然后通过无线电发射模块将数据发送给远端的无线电接收端,ARM将无线电信号接收到之后,经过标度变换再通过串口(这里是虚拟串口)将数据发送给PC机,PC机利用LabVIEW建立的数据管理界面接到数据包后对数据分离,提取出有效数据后将数据存储到数据库中并可以进行管理。其中的总体系统框图如图2.1。图 2.1 系统整体结构框图第三章 蔬菜大棚远程硬件设备开发蔬菜大棚远程硬件设备是指由EasyARM1138开发板及由其开发的外围设备,包括无线电通讯模块、串口通讯及远端数据显示。3.1 EasyARM1138开发板简介EasyARM1138具有以下特点:1) 强大的MCU内核。32位ARM Cortex-M3内核(ARM v7M架构),兼容Thumb的Thumb-2指令集,提高代码密度25%以上,50MHz运行频率,1.25 DMIPS/MHz,加快35%以上,单周期乘法指令,212周期硬件除法指令,快速可嵌套中断,612个时钟周期,具有MPU保护设定访问规则,64KB单周期Flash,16KB单周期SRAM,内置可编程的LDO输出2.25V2.75V,步进50mV,支持非对齐数据的访问,有效地压缩数据到内存,支持位操作,最大限度使用内存,并提供创新的外设控制,内置系统节拍定时器(SysTick),方便操作系统移植。2) 丰富的外设资源。7组GPIO,可配置为输入、输出、开漏、弱上拉等模式。4个32位Timer,每个都可拆分为2个独立的16位子定时器,具有定时、捕获、PWM、RTC等丰富功能,3路全双工UART,位速率高达3.125Mbps,16单元接收FIFO和发送FIFO,支持串行红外协议(IrDA SIR),2路I2C,支持100kbps标准模式、400kbps快速模式,2路SSI,兼容Freescale SPI、MICROWIRE、Texas Instruments串行通信协议,位速率高达25Mbps,6路16位PWM,通过CCP管脚能产生高达25MHz的方波,3个模拟比较器,8通道10位ADC,采样速率可达1M/s,附带温度传感器,内置看门狗定时器(WatchDog Timer),确保芯片可靠运行。3) 内嵌USB接口的下载仿真器。仅需插入一根USB电缆就能实现“三合一”功能:5V供电、程序下载与在线仿真、UART串行通信,不再要求电脑具有串口或并口,无论台式机还是笔记本电脑,只要拥有USB 1.1或USB 2.0接口就能运用自如,除了能够下载仿真自身以外,保留的JTAG接口还可以用来仿真其它LM3S系列开发板,短接JP2短接器的GND和U-RST,还可实现JTAG接口对内仿真功能,USB接口提供虚拟UART的功能,不需要额外的接口电路。图 3.1 LM3S1138管脚图3.2 无线电通讯简介无线电通讯采用达盛公司的无线收发模块,它采用幅移键控(ASK)方式调制。幅度键控可以通过乘法器和开关电路来实现。载波在数字信号1或0的控制下通或断,在信号为1的状态载波接通,此时传输信道上有载波出现;在信号为0的状态下,载波被关断,此时传输信道上无载波传送。那么在接收端我们就可以根据载波的有无还原出数字信号的1和0。对于二进制幅度键控信号的频带宽度为二进制基带信号宽度的两倍。本模块由SC2262/2272编、解码电路和315M高频收发电路两部分组成,模块右侧4脚的发射电路,8脚的为接收电路。在室内无直接障碍物的条件下,将拉杆天线拉出,其发射距离为510米。SC2262/2272编解码电路可在发射和接收之间建立一一对应关系。下面先介绍一下SC2262/2272编解码芯片的工作原理。SC2262/2272编解码芯片是一种CMOS工艺制造的低功耗低价位通用编解码电路,SC2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,SC2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。编码芯片SC2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片SC2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,SC2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,SC2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于SC2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100的调幅。SC2262/2272特点:CMOS工艺制造,低功耗,外部元器件少,RC振荡电阻,工作电压范围宽:2.615V,数据最多可达6位,地址码最多可达531441种。图 3.2 SC2262引脚图表 3.1 SC2262管脚说明名称管脚说明A0-A1118、1013地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空)D0-D578、1013数据输入端,有一个为“1”即有编码发出,内部下拉Vcc18电源正端()Vss9电源负端()TE14编码启动端,用于多数据的编码发射,低电平有效OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率OSC215振荡电阻振荡器输出端Dout17编码输出端(正常时为低电平)图 3.3 SC2272引脚图表 3.2 SC2272管脚说明名称管脚说明A0-A1118、1013地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),必须与2262一致,否则不解码D0-D578、1013地址或数据管脚,当作为数据管脚时,只有在地址码与2262一致,数据管脚才能输出与2262数据端对应的高电平,否则输出为低电平,锁存型只有在接收到下一数据才能转换Vcc18电源正端()Vss9电源负端()DIN14数据信号输入端,来自接收模块输出端OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率OSC215振荡电阻振荡器输出端DT17解码有效确认,输出端(常低)解码有效变成高电平(瞬态)图 3.4 无线收发模块与EasyARM连线图3.3 串口通讯技术简介随着计算机系统的应用和微机网络的发展,通信功能越来越显的重要。这里所说的通信是只计算机与外界的信息交换。因此,通信既包括计算机与外部设备之间,也包括计算机和计算机之间的信息交换。由于串行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送,因此,特别适合于远距离传输。对于那些与计算机相距不远的人机交换设备和串行存储的外部设备如终端、打印机、逻辑分析仪、磁盘等,采用串行方式交换数据也很普遍。在实时控制和管理方面,采用多台微机处理机组成分级分布控制系统中,各CPU之间的通信一般都是串行方式。所以串行接口是微机应用系统常用的接口。所谓“串行通信”是指外设和计算机间使用一根数据信号线(另外需要地线,可能还需要控制线),数据在一根数据信号线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,当然,其传输速度比并行传输慢。计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。而由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。RS-232-C接口(又称EIA RS-232-C)是目前最常用的一种串行通讯接口。RS-232C 标准协议的全称是EIA-RS-232C标准,其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(ecommeded standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969),在这之前,有RS232B、RS232A。它规定连接电缆和机械、电气特性、信号功能及传送过程。常用物理标准还有有EIA-RS-232-C、EIA-RS-422-A、EIA-RS-423A、EIA-RS-485。这里只介绍EIA-RS-232-C(简称232,RS232)。例如,目前在IBM PC 机上的COM1、COM2 接口,就是RS-232C接口。EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。硬件方面,连接器使用DB-9连接器,在发送端(TxD)和接收端(RxD)上:逻辑1 =-3V-15V,逻辑0=+315V,在通信速率低于20kb/s时,RS-232C所直接连接的最大物理距离为15m,通信双方可以直接连接,这种情况下,只需使用少数几根信号线。最简单的情况,在通信中根本不需要RS-232C的控制联络信号,只需三根线(发送线、接收线、信号地线)便可实现全双工异步串行通信。表3. 3 DB-9针串口功能一览表针脚功能针脚功能1载波检测6数据准备完成2接收数据7发送请求3发送数据8发送清除4数据终端准备完成9振铃提示5信号地线软件方面,先介绍一下通讯协议。所谓通信协议是指通信双方的一种约定。约定包括对数据格式、同步方式、传送速度、传送步骤、检纠错方式以及控制字符定义等问题做出统一规定,通信双方必须共同遵守。串口通讯传输数据所用的协议通常是通用异步通讯协议。异步通信协议一般指起止式异步协议,起止式异步协议的特点是单个字符传输,并且传送一个字符总是以起始位开始,以停止位结束,字符之间没有固定的时间间隔要求。其格式如图3.5所示。每一个字符的前面都有一位起始位(低电平,逻辑值0),字符本身有57位数据位组成,接着字符后面是一位校验位(也可以没有校验位),最后是一位或一位半或二位停止位,停止位后面是不定长度的空闲位。停止位和空闲位都规定为高电平(逻辑值),这样就保证起始位开始处一定有一个下跳沿。这种格式是靠起始位和停止位来实现字符的界定或同步的,故称为起始式协议。异步通信是按字符传输的,每传输一个字符,就用起始位来通知收方,以此来重新核对收发双方同步。若接收设备和发送设备两者的时钟频率略有偏差,这也不会因偏差的累积而导致错位,加之字符之间的空闲位也为这种偏差提供一种缓冲,所以异步串行通信的可靠性高。但由于要在每个字符的前后加上起始位和停止位这样一些附加位,使得传输效率变低了,只有约80%。因此,起止协议一般用在数据速率较慢的场合(小于19.2kbit/s)。图 3. 5 异步通信数据流示意图由于EasyARM1138开发板USB电缆集成了串口功能,所以串口通讯采用USB电缆与电脑连接,实现数据传输。3.4 远端数据显示远端数据利用LCD技术对数据进行实时显示,要显示的数据包括温度、湿度、CO2浓度三种数据。这里LCD采用金鹏电子的OCMJ 2×8点阵式LCD,内含GB 2312 16*16点阵国际一级简体汉字和ASCII8*8及8*16点阵英文字库,用户可以通过输入区位码或ASCII码实现文本显示,也可以作一般的点阵图形显示器之用。它提供位点阵和字节点阵两种图形显示功能,并具有上下左右移动当前显示屏幕及清除屏幕的命令。下面是它的引脚说明,其中方向指I/O模式(I指输入,O指输出)。表 3.4 OCMJ 2×8 引脚说明引脚名称方向说明引脚名称方向说明1VLED+I背光源正极(LED+5V)8DB1I数据12VLED-I背光源负极(LED-0V)9DB2I数据23VSSI地10DB3I数据34VDDI(+5V)11DB4I数据45REQI请求信号,高电平有效12DB5I数据56BUSYO应答信号=1;已收到数据并正在处理=0;模块空闲,可接收数据13DB6I数据67DB0I数据014DB7I数据7针对针脚说明,利用开发板的GPIO口与OCMJ进行连接,以并行方式实现对OCMJ的控制,硬件连线图如图3.6。图 3.6 LCD模块与EasyARM连线图OCMJ 液晶显示模块采用REQ/BUSY握手方式。BUSY=1表示OCMJ忙于内部处理, 不能接收用户命令;BUSY=0表示OCMJ空闲,等待接收用户命令。发送命令到OCMJ可在BUSY=0后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ脉冲把当前用户命令字节锁存到OCMJ中。然后判断OCMJ模块是否在忙于内部处理数据, 如果REQ=1,那么把BUSY拉低,等待下一次(REQ=0)再送下一个数据。指令集如表3.5,写汉字时序图如图3.7。表 3.5 OCMJ2×8显示模块指令集指令操作码操作数显示国标汉字F0XX YY QQ WW显示8*8ASCII字符F1XX YY AS显示8*16ASCII字符F9XX YY AS显示位点阵F2XX YY显示字节点阵F3XX YY BT清屏F4上移F5下移F6左移F7右移F8图 3.7 对模块写汉字时序图第四章 EsayARM1138核心程序设计程序设计是智能化仪表的核心部分,对整个系统的成败起到决定性作用。本程序要以ARMLM3S1138为硬件基础,实现无线数据接收、LCD实时显示以及串口数据发送,其中包括了对温度、湿度、CO2浓度三种数据的处理。首先,ARM要从无线接收模块接收到温度、湿度、CO2浓度数据并将数据存储;然后,ARM将数据送入LCD显示模块进行显示,最后,ARM通过串口将数据依次送给PC机,完成一次采集任务。主程序流程图如下:图 4.1 主函数流程图其中,系统初始化包括系统时钟设置、使能个GPIO口、LCD初始化、串口使能,由于数据显示要显示三种数据,可以在初始化时显示数据标识(T、H、C)以及单位(对应单位是、%、PPM),数据在主程序循环刷新即可。下面就EasyARM1138各方面功能的实现方法进行介绍。4.1 无线数据接收无线数据发送模块每次只发送四位二进制数据,单次数据传输显然不能满足精度要求,由于下位机AD转换是八位的,所以将单个数据分两次发送,一个字节,一个数据。另外一方面,下位机无线发送数据按照如图4.2的过程进行。这里将每次采集的温度、湿度、CO2浓度称作一组数据,显然,ARM要分离三种数据,必须找到单组数据的起始。在这里我们检测每次采集的延时,即一段较长时间的连续无线电空闲信号,在这个过程中,无线接收模块解码芯片SC2272的RECE端始终保持为低电平,在程序中只要通过检验较长时间的RECE低电平,就可以获得一组数据的起始,而每发送四位数据要延时约1ms,只要RECE连续低电平时间超过这个时间,就可以找到一组的数据起始。具体程序流程图如图4.3。4.2 LCD数据实时显示当数据从无线接收模块传输到EasyARM1138上后,其利用LCD对数据进行实时显示,为了使显示更加方便,温度、湿度、CO2浓度分别用T、H、C来表示,其中温度、湿度字符宽度为4位,CO2浓度字符宽度为6位,另外包括单位(、%、PPM),而本次设计采用的是32*128点阵式LCD,最多可以显示4*16共64个8*8ASCII字符或2*16共32个8*16ASCII字符,数据完全可以在单个LCD上显示。就整个设计而言,数据标识与单位将在初始化时进行显示,以节省主循环的时间。而实时数据在主循环中不断更新。LCD的基本显示流程图如4.4。4.3 串口数据发送显示完成之后,ARM将通过串口将数据发送给电脑,这里采用开发板的USB三合一电缆线作为串口。LM3S1138有三个串口,这里采用默认串口UART3。由于要发送三种数据,就必须能够让PC机能够分离三位数据,这里采用添加标志位的方法来实现。在每次发送数据之前,发送一个标志字符,而每个数据的宽度都是固定的,以方便PC机能够分离数据。 图 4.2 无线数据发送流程图 图 4.3 无线数据接收流程图图 4.4 LCD显示流程图第五章 远程信息综合平台的构建本设计的远程信息综合平台主要是应用虚拟仪器技术和数据库技术进行设计,下面就这两个方面进行介绍。5.1 虚拟仪器技术虚拟仪器是随着计算机技术、电子测量技术和通信技术而发展起来的一种新型仪器,虚拟仪器的出现是测量仪器领域的一个突破, 从根本上更新了测量仪器的概念。它是在以通用计算机为核心的硬件平台上,由用户设计定义,具有虚拟面板,测试功能由测试软件实现的一种计算机仪器系统。虚拟仪器技术充分利用计算机系统强大的数据处理能力,利用软件完成数据的采集、控制、数据分析和处理以及测试结果的显示等, 通过软、硬件的配合实现传统仪器的各种功能, 大大突破了传统仪器在数据处理、显示、传送、存储等方面的限制,使用户可以方便地对仪器进行维护、扩展和升级。它的优势在于可由用户定义自己的专用仪器系统,且功能灵活,很容易构建,所以应用面极为广泛。尤其在科研、开发、测量、检测、计量、测控等领域更是不可多得的好工具。虚拟仪器技术先进,十分符合国际上流行的硬件软件化”的发展趋势,因而常被称作“软件仪器”。随着计算机技术的广泛应用,传统的仪器设备缺乏相应的计算机接口,因而配合数据采集及数据处理十分困难。而且,传统仪器体积相对庞大,多种数据测量时常常感到捉襟见肘。我们常见到硬件工程师的工作台上堆砌着纷乱的仪器,交错的线缆和繁多待测器件。然而在集成的虚拟测量系统中,我们见到的是整洁的桌面,条理的操作,不但使测量人员从繁复的仪器堆中解放出来,而且还可实现自动测量、自动记录、自动数据处理。其方便之极固不必多言,而设备成本的大幅降低却不可不提。一套完整的实验测量设备少则几万元,多则几十万元。在同等的性能条件下,相应的虚拟仪器价格要低二分之一甚至更多。虚拟仪器强大的功能和价格优势,使得它在仪器计量领域具有很强的生命力和十分广阔的前景。5.2 数据库技术远程信息综合平台主要功能是通过LabVIEW实现数据的采集、显示及数据管理,数据库技术为良好的实现这些功能提供了良好的技术支持。下面就数据库技术进行介绍。数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。数据库的主要特点: (1) 实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。 (2) 减少数据的冗余度。同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。 (3) 数据的独立性。数据