基于AT89S52单片机的温度监测系统的设计

发布者:innovator8最新更新时间:2015-07-31 来源: eefocus关键字:AT89S52  单片机  温度监测系统 手机看文章 扫描二维码
随时随地手机看文章
引言

温度检测是许多行业的重要工作条件之一。

  

无论是粮食仓库、中药仓库, 还是图书保存。都需要在符合规定的温度环境条件之中。而温度却是最不易保障的指标。针对这一情况。研制一款可靠、方便、易及时调控的温度检测系统就显得极 为重要。笔者运用D1S18B20采集数字信号,通过蓝牙无线通信技术和USB接口技术。实现由89S52单片机检测控制温度的监测系统。

 

1 系统的结构

整个系统由采集板、通信板和PC机监控程序组成。采集板以温度监测芯片DS18B20t21、单片机芯片AT89S52和蓝牙芯片BC4为核心分时完成 监听主机的命令和数据采集以及数据发送的功能。可以根据接收到的主机的命令随时改变系统的工作状态。 如图1。通信板以USB 芯片PDIUSBD12、单片机芯片AT89S52为核心,实现数据接收、数据发送,以及将采集回来的外部信号通过波形图实时显示在PC机界面上。同时把 数据保存到数据库中。如图2。

 

图1采集板系统框图

 

 

图2通信板系统框图

2 系统硬件设计

 

2.1 采集板电路设计

2.1.1 蓝牙模块—无线接收发射电路

系统采用了CSR公司蓝牙芯片BC417143.该芯片采用Blue2.0、支持主或从模式、支持AT命令集、支持波特率为2 400到1 382 400 bps,适用于嵌入式串口传输无线的全新的模块。

 

值得注意的是。蓝牙芯片工作在3.3 V,而MCU工作在5 V.存在逻辑电平不匹配问题。且IO管脚无法容忍MCU的5 V逻辑电平。设计中采用了1117芯片进行电平转换输出3.3 V.蓝牙与MCU连接需经过电平限制以保证蓝牙模块正常工作 以下是蓝牙模块的电源选择方案及串口模块的引脚定义。如图3。

 

 

图3蓝牙模块的电路塬理图

 

在建立蓝牙数据通信时。需要先对其通信协议进行设置:

 

  (1)UART参数设置:先设置通信协议长度,再设置波特率、硬件控制流参数。校验参数、数据位数及停止位

  (2)工作模式设置:可将蓝牙模块的工作模式设置为主模式或者从模式。

  (3)设置蓝牙模块名:名称是蓝牙模块在进行通信的标识之一。通过设置蓝牙模块名协议可以更改蓝牙模块名

  (4)设置安全模式:蓝牙通信中的数据安全主要是有蓝牙通信时的PIN码保障的。通过设置安全模式协议。可以根据不同的需要。设置蓝牙通信的安全模式

  (5)设置PIN码:设置PIN码可以保证仅有可靠的设备通过蓝牙与模块互相通信系统采用的波特率为9 600 bps.传输距离能达10 In。由于采用蓝牙做为传输。具有很强的抗干扰能力

 

2.1.2 采集板电路塬理图

采集板电路塬理图如图4。蓝牙模块主要与单片机的串行IO口连接。数字温度传感器DS18B20与单片机的P1.0口连接。继电器则与P1.2口连接。 温度传感器DS18B20将温度转化为数字信号通过P1.0 El送给单片机。经单片机处理后的数据由串口传给蓝牙模块(BLUETOOTH) 也可以通过蓝牙模块接收通信板发来的指令2-2通信板电路设计通信板主要由单片机、蓝牙模块、USB模块等相关电路构成。如图5 PDIUSBD12是一款 性价比很高的USB器件它通常用作微控制器系统中实现与微控制器进行通信的高速通用并行接口。它还支持DMA传输此外它还集成了许多特性。包括 SoftConnet、GoodLink、可编程时钟输出低频晶振和终止寄存器集合 所有这些特性都为系统显着节约了成本。 同时使USB功能在外设上的应用变得容易。

 

 

图4采集板电路塬理图

 

PDIUSBD12的8根DATA引脚与单片机的PO口相连接,采用 10 k的排阻作为上拉电阻;SUSPEND是当芯片挂起状态挂起时,输出为高。

 

与单片机的P1.1连接:INT_N是中断请求。与单片机的IN,m 连接:RD N和WR N读写选通信号分别与单片机的RD和WR连接;DMREQ、DMACK N、EOT N分别是DMA 的中断请求、DMA应答和DMA传输完成。由于没用启用DMA功能直接接高电平。RESET N是复位引脚。接单片机的P1.7;GL N是芯片的工作指示灯。接人一个LED指示灯。可以直接观察USB设备的运行状态;XTAL1和XTAL2接6MHZ.CS N为片选信号。接单片机的PI.6,A0地址线,采用I/O口模拟,接单片机P3.4:D+和D一是USB的差分数据线分别串联一个l8 Q的阻抗匹配电阻。后接USB插头上 。

 

蓝牙模块连接方法与采集板的连接方式相同。

 

通讯板的信号流程为:由采集板采集的温度数据经蓝牙模块传输到通讯板上,送到单片机上处理。通过PDIUSBD12传输到PC上进行显示保存。

 

单用户在PC上进行操作时,数据由PC通过PDIUSBD12传送到单片机。再经过蓝牙传输,送到采集板进行相对的响应。

 

图5通信板电路塬理图

 

3 软件设计

本系统涉及内容较多。开发环境也都不一样,对于单片机软件的开发是基于KEIL uVision 3的uVision3集成开发环境IDE是一个基于Window的软件开发平台,有功能强大的编辑器、项目管理器和制作工具。

 

对于USB驱动的开发采用了WinDriver9.2.1.用该软件生成所需驱动只需要USB设备插入后通过简单的几步就可以完成,同时还可以根据需要生成相应的应用程序代码。方便应用程序的开发嘲。[page]

 

采集板的系统流程图如图6,通讯板的系统流程图如图7PC机应用程序则采用了VISUAL STUDIO 6.0进行开发。采用C++语言编写程序代码。由于VC具有文档类程序、对话框类程序等。可以很快地实现界面的编程。

 

 

图6采集板程序流程图

 

 

图7通信板程序流程图

 

为了将波形图实时显示。就需要重复绘制波形图。运用传统的绘图方法。会引起屏幕的强烈闪烁。现在常用的解决方法是:利用内存绘图的技术。将需显示的图形 绘制在内存位图中。然后再拷贝到屏幕上。很好地解决了屏幕闪烁的问题,并且处理速度快自定义的绘图函数声明如下。在该函数内部实现了内存绘图。

 

  void CMyusbDlg::MEM— DRAW(

  int ID,

  unsigned char m_buf,

  int d_ pnow,int ONDRAW,

  CString TXT)

 

在数据保存方面。本系统使用Access建立数据库。系统流程图如图8。

 

 

图8 PC机主程序流程图

 

当主程序开始后。初始化了USB和界面后。就创建一个新的线程,和主线程并行工作。新线程主要就是完成USB数据的读取。然后把接收到得数据存放到一个缓冲区和数据库中。缓冲区主要是供主线程显示波形时使用。数据库则供用户日后查看历史记录使用。

 

4 结论

提出了一种基于USB与蓝牙芯片BC417143的无线温度监测系统的设计方案。并从硬件和软件两个方面介绍了系统的设计过程。实现了对温度信息进行的 无线数据采集。利用蓝牙芯片作为无线收发模块。DS18B20作为温度数据采集。USB接口芯片作为与PC机的通信接口。简化了电路设计并具有易扩展和组 网的特点。

关键字:AT89S52  单片机  温度监测系统 引用地址:基于AT89S52单片机的温度监测系统的设计

上一篇:一种AT89S52的USB下载线设计
下一篇:基于AT89S52的双模糊温度控制器设计

推荐阅读最新更新时间:2024-03-16 14:26

单片机小车项目小记
恩,貌似这个项目已经做了一年多了,其实进展很慢,前大半年都在做知识的积累。真正的开始是这个学期,也就差不多是申请延期之后吧。为什么会这么慢呢,其实小车上面的大部分模块以及部件的控制,很早以前就已经做的很好了。关键的地方就是怎么将他们整合起来,达到最初的设计目标。整合说起来挺容易,想起来也挺容易,可是做起来,却是麻烦重重,各个模块之间的数据交换,单片机对模块返回的数据的处理,然后给模块的指令,都是一件挺麻烦的事儿,其实这都还好,关键是IO和中断资源的不够。导致我这学期想用两块单片机来进行数据交换和处理。结果是,我花了一个月的时间,收货却很少,这是一件很郁闷的事情。两块单片机的交换的方式最初打算是用485进行串口交换,可是这样导致MOU
[单片机]
<font color='red'>单片机</font>小车项目小记
单片机动态数码管显示hello汇编程序
51单片机动态数码显示技术 电路是P0口接数码管的字型码笔段,P2口接数码管的数位选择端,P1。7接一个开关,当开关接高电平时,显示 12345 字样;当开关接低电平时,显示 hello 字样。 汇编语言源程序: ORG 00H START: JB P1.7,DIR1 MOV DPTR ,#TABLE1 SJMP DIR DIR1: MOV DPTR ,#TABLE2 DIR: MOV R0,#00H MOV R1,#01H NEXT: MOV A,R0 MOVC A,@A+DPTR MOV P0,A
[单片机]
基于PPP协议单片机拔号上网的设计与实现
    摘要: 通过对TCP/IP协议簇进行简化,讨论数据包的配置,设计并实现单片机拔号上网的系统。     关键词: 单片机 协议 TCP/IP 数据包 引言 20世纪90年代,以因特网为代表的计算机网络通信技术的发展和应用取得了前所未有的突破和成功,单片机上网技术在生活和现代建设的各方面的应用和研究随之成为当今一个热门话题。8位、16位单睡机的因为其较好的性价比,在测控领域仍然占据着重要地址。这些单片机的RAM、ROM一般都很小,而网络协议通常嵌入在操作系统中,无法把庞大的操作系统直接安装在这样的单片机中。所以, 要实现上述单片机通过拔号直接连上因特网,需要考虑的主要技术就是如何在单片机上嵌入能
[应用]
基于单片机的LED数字大屏幕显示系统
  1 引言   LED显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,应用越来越广泛。ATMEGA16L单片机是一款基于AVRRISC的、低功耗CMOS8位单片机,具有16K字节的自编程FLASH,512字节的EEPROM,1K字节的SRAM,通过AVR单片机来控制LED的显示,结构简单,应用灵活,并且易于扩展。   2 系统设计原理   2.1 编码设计   编码设计有两个过程:字库提取以及字模编码转换。字库的提取涉及到的两个字库文件,一个为ASC16,专门存放ASCII编码;另一个为HZK16,专门存放汉字字库编码。要提取字库,首先要对它进行初始化,即打开字库。然后根据一个字符提取它相应的编码。首先取出字
[电源管理]
基于<font color='red'>单片机</font>的LED数字大屏幕显示系统
狂拽酷炫的野外探测车设计方案
一、设计思路 基于AVR单片机的野外探测车大体包括机械部分,电子部分和软件部分三部分。细分为车体基体模块、主运动模块、辅运动模块,电源模块、主处理模块、运动控制模块、视频采集模块、传感器采集模块、无线通讯模块、上位机模块。 二、方案设计 1车体基体模块 车体基体模块是机器人的硬件支撑,固定着机器人的绝大部分部件,包括支架和安装座,通过铝合金胶接铆接而成。铝合金刚性好,可以承受较大的载荷,便于加工且质量有保证。 2供电模块 3主处理模块 MCU为EVK1100,实现数据处理,传感器数据采集,电机控制和无线模块协同。 接受传感器的数据,处理后,通过串口发送给无线模块,同时接受串口传递的控制信号,经
[单片机]
狂拽酷炫的野外探测车设计方案
单片机控制的交通信号灯
介绍一种用8031单片机控制的交通信号灯的硬件结构与软件设计,并给出了其硬件原理图和MCS-51汇编语言源程序。 用8031单片机控制的交通信号灯电路图
[单片机]
用<font color='red'>单片机</font>控制的交通信号灯
80C51单片机中断的编程使用方法介绍
1、单片机中断: 找了一张 80C51 单片机的图如下: 其中,在 P3.2、P3.3 的位置,即 12 ,13 引脚处,标有 INT0 和 INT1,那两个引脚就是外部中断的输入。上面一个横杠代表低电平有效,给 P3.2、P3.3 赋值 0,就可以运行已经写好的中断服务程序。具体怎么用,还要熟悉一些中断寄存器的使用。 2、中断寄存器: (1)、IE (Interrupt Enable):中断允许控制寄存器 EA (IE.7):EA=0 时,所有中断禁止(即不允许中断) EA=1 时,各中断的产生由个别的允许位决定 ET2 (IE.5):定时器 2 溢出中断允许(8052 用,博主用的 STC89C54RD+ 也有) ES
[单片机]
80C51<font color='red'>单片机</font>中断的编程使用方法介绍
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved