基于嵌入式技术的温度测量系统设计.docVIP

基于嵌入式技术的温度测量系统设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于嵌入式技术的温度测量系统设计

基于嵌入式技术的温度测量系统设计 1. 引言   嵌入式系统是能够运行操作系统的软、硬件综合体,且多数系统的应用软件和操作系统是紧密结合在一起的。选配好RTOS(Real-Time Operating System)开发平台,就能合理的实现多任务调度,系统资源利用。   嵌入式系统较一般单片机系统而言,软件资源利用率较高,开发周期短;系统精度较高;实时性也更好。特别适合于数据处理量较大,有联网、通信等要求的场合。   为了利用嵌入式系统构造一个分布式多点温度测控系统,本文做了一些前期的尝试和开发工作。结合可编程单总线数字式温度传感器DS18B20,用嵌入式系统构造了一个具有温度测量、相关数据处理以及与上位机通信等功能的现场温度测量单元,上位机则主要完成系统监控和人机交互等功能。   2. 系统组成及工作原理   温度测量系统总体结构如图1所示。 图1 系统总体结构图   本文中,下位机由嵌入式系统组成。根据实际需要,其核心采用了低端的LPC2104芯片。它包含一个支持仿真的ARM7TDMI-S CPU,128K 字节FLASH存储器和64K字节SRAM以及片内总线。数字式温度传感器DS18B20连到LPC2104的一个GPIO管脚P0.8上。 LPC2104通过该管脚发送命令和接收温度值,并对读到的温度值进行数字滤波、二—十进制转换等数据处理,还设置了温度超限报警等功能。下位机还可与上位机实时通信,一方面接受上位机的各种指令,另一方面,将测得的温度值传送到上位机。   上位机为PC机,通过串口与下位机相连。一方面将设定的指令以及人工干预信号发送给下位机,另一方面,对从下位机接收到的温度数据进行适当的处理,并将其以曲线的形式显示出来。   DS18B20直接将测得的温度值转换成数字量输出,其有效引脚只有三个:DQ(数据)、VDD(电源)和GND(地)。DS18B20是通过带5K上拉电阻的DQ线来读取和发送信息的,它可以不外接电源,也可在VDD端外接一个3v~5.5v电源。DS18B20片内含有ROM和RAM,ROM中保存有一个独立的序列号,因而可将多个DS18B20同时连在一条总线上工作。   对DS18B20的操作有:复位;对ROM的操作(若只用一个DS18B20,则可跳过ROM匹配);对RAM的操作,即先发送温度转换命令(0x44),使DS18B20将采集到的模拟量数据转换为数字量存到 RAM中,再发送读取存储器命令(0xbe),使其将RAM中存储的数据从DQ上按照一定的时序传送出来。传送时,先低位后高位,最后传符号位。   通过对DS18B20进行时序分析知,复位脉信号应为一个持续480us以上的低电平信号;写信号应满足:先使DQ线降为低电平,若写“1”,则在15us内置DQ为高电平,若写“0”,则仍置DQ为低电平,在两次独立写时序之间至少应保持1us的恢复时间;读信号应满足:先将DQ线从高电平拉到低电平,并使其至少保持1us,因DS18B20的输出数据将在下降沿后15us有效,故在此之前,微机必须释放DQ线,以便读取数据。写、读时序均不得小于60us。根据以上分析,可编写出相应的复位和读、写函数,调用这些函数便可实现对DS18B20的操作。温度测量程序流程见图2,相应的温度测量函数为Measure_Temperature()。 图2? 温度测量程序流程图   DS18B20的数据精度决定于它的配置(9,10,11或12位),其中12位是出厂设置。这相当于温度精度为0.5°C, 0.25°C, 0.125°C, 或0.0625°C。   除了温度测量之外,嵌入式系统的另一个重要任务就是实现与上位机的通信。为实现LPC2104与PC机RS-232-C标准接口的互连,采用了芯片 MAX3232,它是为RS-232-C标准接口设计的一种电平转换驱动器,使用单一的+5V电源,外接4个0.1uF的电容,就可将LPC2104的 TTL电平信号转换成RS-232-C标准电平信号,也可进行相反的电平转换。两者之间的连接如图3所示。 图3? LPC2104与上位机的连接   在嵌入式系统的通信程序中用到了中间件(middleware),它是基础软件的一大类,属于可复用软件的范畴。中间件处在操作系统、网络和数据库之上,应用软件之下,是第三方程序。其作用是为应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。基于中间件开发的应用程序可以方便的实现不同系统间的移植。 ?  本系统用到了串口通信中间件和数据队列中间件,即只需要将中间件程序添加到系统项目表中去,调用中间件的接口函数即可实现串口的通信,如:调用URAT0Init(9600)实现串口的初始化,其中,波特率可直接进行调整;调用 URAT0Putch(temp4)

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档