基于51单片机温度采集及无线发送

发布者:水手谷水手最新更新时间:2011-11-09 关键字:8051单片机  DS18B20  温度采集  SRWF-1无线模块 手机看文章 扫描二维码
随时随地手机看文章

0 引言
    随着数字化脚步的加快,越来越多的数字化产品取代了原有的机械式仪表,从而大大提高了数据的准确率。然而,多数情况下,温度的采集过程只在现场实时显示,在增加了工作量的同时,也可能会造成很多不便,如进入危险区域。因此,将无线网络应用在工业生产中,不仅能大大提高工作效率,同时也在一定程度上降低了劳动强度。
    本设计基于以上两点,将工业生产中常用到的温度进行数字化,并通过无线模块将数据发送出去,在接收方利用无线接收设备接收实时的数据,从而大大降低劳动强度。

1 系统组成
    系统由单片机、温度传感器、串口通信模块和无线传输模块等几部分组成。测温系统将测得的温度通过单片机在数码管上实时显示,同时,通过串口通信部分和无线模块将数据发送给上位机。系统结构如图1所示。

a.JPG
    该设计以Atmel公司生产的单片机AT89C51为核心,以数字温度传感器DS18B20作为温度采集,以SRWF-1无线模块作为无线数据传输,从而构成整体系统。
1.1 单片机系统
    系统采用AT89C51作为核心控制,配备4位共阴极数码管显示电路。AT89C51是Atmel公司推出的一种低功耗、高性能CMOS 8位微处理器,具有8 KB系统可编程FLASH存储器;256 B RAM;32个I/O引脚,分为4个8位控制端口;看门狗定时器;2个数据指针;3个16位定时器/计数器;两级中断优先等级;可编程全双工串行传输端口;片内晶振及时钟电路;8个中断源。其性能完全能够满足系统要求。数码显示采用Ytt-410391K四位7段8线数码管,作为温度显示部分,并用最末一位显示小数。
1.2 数字温度传感器DS18B20
    DS18B20是美国Dallas公司生产的一款可编程1-Wire数字温度计。具有精度高,全数字化,连线少等诸多优点。其可直接将采集到的温度转换成数字信号,通过单条数据线串行发送出去,只要严格遵循规定时序逻辑和脉冲间隔,就能舍去同步时钟信号线,做到通信期间引脚最少化,达到温度采集目的。
1.2.1 内部结构及外部管脚
    数字式温度传感器DS18B20的内部结构如图2所示,其主要由四部分组成:64位ROM和单总线接口、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

b.JPG
    DS18B20 64位闪存ROM的开始8位是产品类型的编号,接着的48位为每个器件的惟一序号,最后8位是CRC校验码。用于存储用户设定温度上下限值的非易失性温度报警触发器TH和TL,使用时可通过软件写入、设定报警上下限值。DS18B20内部配有一个电可擦除的E2PROM,用于存储TH、TL值,数据先写入内部的高速暂存RAM,经校验后在传给E2PROM。RAM中的第5个字节为配置寄存器,用于确定温度值的数字转化分辨率。工作时按此寄存器中的分辨率将温度转化为相应精度的温度值。
    DS18B20具有三引脚To-92小体积封装形式,如图3所示;温度测量范围为-55~+125℃,其工作电源既可在远端引入,也可使用寄生电源方式产生;CPU只需一根端口线就能与诸多DS18B20通信,由于其占用微处理器的端口较少,因此可节省大量的引线和逻辑电路。

c.JPG
    DSB18B20各引脚介绍如下:GND为地;DQ为数据输入/输出端;VDD为外接供电电源输入端(在寄生电源接线方式时接地);NC为SOIC封装的,NC为空引脚。
1.2.2 工作原理
    DS18B20内部的低温度系数振荡器能产生稳定的频率信号f0,而高温度系数振荡器则将被测温度转化成频率信号f。当计数器打开时,DS 18B20则对f0计数,计数器开通时间由高温度系数振荡器决定。芯片内部还有斜率累加器,可对频率的非线性给予补偿。其测量的结果将暂存在温度寄存器中,可使单片机方便的将温度读出。
    DS18B20的核心是一个直接的数字化温度传感器,可将温度值按9 b,10 b,11 b,12 b分辨率进行量化,默认分辨率为12 b,对应的温度最小增量分别为0.5℃,0.25℃,0.125℃和0.062 5℃。当主机向DS18B20发出温度转化命令后,开始温度转换,检测的温度结果将存放在两个字节中,最低位LSB在前,最高位MSB为符号位。其数据格式如下:

d.JPG
    其中,高位字节MSB的高5位为温度的符号位,当温度为正时,该5位为0,温度为负时,统一为1。高位字节MSB的低3位和低位字节LSB的高4位共同组成温度值的整数部分,低位字节LSB的低4位为小数位,采用二进制补码方式存储温度数据。例如,当温度为+125℃时,输出温度为07D0h;当温度为+85℃时,输出温度为0550h;当温度为+25.062 5℃时,输出温度为0191h;当温度为-10.125℃时,输出温度为FF5Eh;当温度为-55℃时,输出温度为FC90h。[page]

1.2.3 硬件设计
    将DS18B20的数据输入/输出端与单片机AT89C51的P3.7端口相连,并将温度值通过P1端口显示出来。硬件原理图如图4所示。

e.JPG
1.3 SRWF-1型无线数据模块
    SRWF-1型微功率无线数传模块是上海桑锐电子科技有限公司自主开发的智能型产品,该产品支持1 200 b/s,2 400 b/s,4 800 b/s,9 600 b/s,19 200 b/s等多种接口波特率,也可根据需要提供其他非标准接口波特率。
    SRWF-1型微功率无线数传模块具有最大10 dBm(10 mW)的微发射功率;可提供多种载频频率;高抗干扰能力和低误码率,可得到实际误码率为10-5~10-6;传输距离远,在视距下,可靠传输距离大于300 m;支持多信道,多速率,可根据需要扩展到16/32信道;双串口,三种接口方式;智能数据控制,无需编制多余程序,较大的数据缓冲区,可一次传输无限长度的数据;低功耗,接收电流小于20 mA,发射电流小于40 mA,休眠时电流仅为20μA;高可靠性,体积小,重量轻;两种接口收发等待时间,既能用于高速设备(如DSP系统)也可适用低速系统(如51系统);看门狗实时监控,使设备永不死机。
1.3.1 外形尺寸结构图
    SRWF-1的外形结构如图5所示。

f.JPG
1.3.2 接口定义
    SRWF-1提供1个9针的连接器(CON1),其定义基于终端的连接方法如表1所示。

g.JPG
1.3.3 接口参数
    SRWF-1的左下角有一组5位的短路跳线(J1),分别定义为ABCDE,设跳线开路(不插短路器)为状态0,跳线短路(插入短路器)为状态1。其配置方法为:
    (1)信道频率
    J1的ABC三位跳线提供8种选择,可通过设置ABC的短接状态确定使用0~7号信道,只要在通信网中,ABC的跳线方式相同,就可以相互通信,其对应的频道如表2所示。

h.JPG
    (2)接口方式选择
    SRWF-1提供两个串口,COM1(CON1的Pin3,Pin4)固定为TTL电平的UART串行口;COM2(CON1的Pin6,Pin7)可通过J1的D位来选择接口方式:
    D=1(不接短路器)
    COM2=RS 485,RS 485的A/B口
    D=0(接短路器)
    COM2=RS 232,RS 232的TXD/RXD
    J1的E位是用来选择校验方式的:
    E=0(不插短路器)8E1/801 带一位校验位
    E=1(插短路器)8N1 不带校验位
    (3)波特率设定
    SRWF-1模块提供1 200/2 400/4 800/9 600 b/s等接口波特率,波特率的设定可通过改变模块反面的焊盘跳线(J2~J4)的状态来确定。假设焊盘断开为0,短路为1,焊盘跳线J4~J2的状态和波特率对应关系如表3所示。

i.JPG

[page]

    (4)接口方式选择
    本设计与单片机串口相连,采用标准RS232接口方式连接,将短路跳线D短接,其示意图如图6所示。其他引脚可悬空不接,以免引入干扰。

j.JPG
    选取3号信道,将短路跳线B,C短接,信号发送和接收频率为431.4588MHz,将两个SRWF-1模块均选取此设置,则两个无线模块即可相互通信。
    根据本设计的需要,将SRWF-1的焊盘跳线J3,J2短接,从而得到波特率为9 600 b/s。

2 软件设计
2.1 程序流程图
    系统的程序流程图如图7所示。

k.JPG
2.2 部分程序
    DS18B20初始化程序:
    l.JPG
  m.JPG

3 结语
    DS18B20以其简单、精度高、测温范围广而被广泛应用;8051单片机以其抗干扰强、可靠性强、容易上手等优点而广泛使用;加上SRWF-1的使用,使在温度采集过程中,可通过无线发送数据,方便使用,减少工作量。

 

 

 

关键字:8051单片机  DS18B20  温度采集  SRWF-1无线模块 引用地址:基于51单片机温度采集及无线发送

上一篇:基于AT89C52单片机的日历时钟模块设计
下一篇:基于单片机的存储设备转储器

推荐阅读最新更新时间:2024-03-16 12:45

8051单片机中DPTR的扩展设计
摘要 首先对比分析在执行大规模数据转移时,传统8051单片机和进行DPTR扩展后的8051单片机在数据转移执行效率上的差别。通过详细分析DPTR操作所涉及的因素,具体实现对DPTR的扩展,并进行实际仿真测试。 关键词 8051单片机 DPTR 数据转移执行效率   单片机的出现是计算机技术发展史上的一个里程碑,它使计算机从海量数值计算进入到控制领域。在单片机中,以8051系列最为经典,至今仍是最普及、广泛使用的8位MCU架构。业界许多技术人员在其基础上不断进行性能扩展,使得8051系列芯片不断完善,从而形成一个庞大的体系。在传统的 8051 系列单片机中,设置了一组双字节寄存器(数据指针DPTR),用于访问外接的64 KB数据
[工业控制]
<font color='red'>8051单片机</font>中DPTR的扩展设计
8051单片机实战分析(以STC89C52RC为例) | 11 - 定时器中断的使用
1 中断系统结构 以下这张图是从中断引脚到中断入口所经过的通道: 从图中不难看出T0与T1经过了TCON、IE、IP这些寄存器,因此我们在写程序时得把这些寄存器功能配置好,CPU才会按照我们的想法只执行!下面分别对这些寄存器进行介绍(稍微了解一下即可,忘记的时候再查)。 1.1 TCON寄存器 TCON(Timer Control Register),中文叫定时器/计数器控制寄存器,TCON寄存器是用于中断触发方式设置以及中断标志。 各寄存器位的作用如下: 1.2 IE寄存器 IE(Interrupt Enable),中文叫中断允许寄存器,它的作用是控制所有中断源的开放或禁止,以及每个中断源是否被允许。 各寄
[单片机]
<font color='red'>8051单片机</font>实战分析(以STC89C52RC为例) | 11 - 定时器中断的使用
8051单片机的UART0串口初始化
1、C8051f的UART0是异步、全双工串口。其波特率发生器规定由定时器1定时器提供。可配置为8位UART或9位UART(多机通讯第九位用于片选作用)。SYSCLK=24.5MHZ(我的板子采用内部晶振频率作为系统时钟) BAUDRATE=115200(波特率) 2、初值TH1 Tl1配置 由上述公式可计算初值:TH1 = 256-(SYSCLK/BAUDRATE/2)而程序内是TH1 = -(SYSCLK/BAUDRATE/2),这两种是相同的。第一种是以正数的二进制形式保存在计算机内。第二种是负数,取反加1求得补码保存在计算机中。结果是相同的。每当TL1中的值溢出后 TH1存储的重装载值装载到TL1中开始计数。
[单片机]
<font color='red'>8051单片机</font>的UART0串口初始化
X25165在8051单片机系统中的应用
美国XICor公司生产的Z25165芯片是集看门狗、电压监控和串行EEPROM三项功能于一体的集成电路产品。该芯片的应用将有利于简化单片机系统的结构,降低系统的成本,减少对电路板的空间需求,增加系统的可靠性。 1 芯片简介 X25165的引脚排列如图1所示,各引脚功能说明如表1所列。 X25165使用简单的三线总线串行外设接口(SPI),对芯片进行操作的所有操作码、字节地址及写入的数据均从SI引脚输入,写入数据在串行时钟(SCK)的上升沿被锁存,从芯片读取的数据从SO引脚串行移出,并在串行时钟的下降沿输出数据。 芯片的看门狗定时器和VCC电压监视器都对微处理器提供独立的保护,当系统发生故障时,只要看门狗定时
[单片机]
X25165在<font color='red'>8051单片机</font>系统中的应用
STC15系列读取DS18B20温度传感器串口显示代码
STC15系列读取DS18B20温度传感器串口显示代码 调试通过,复制粘贴即编译可使用,无需调试,晶振:22.1184M,串口输出,波特率:115200 为方便大家调试,特附该程序的项目文件,下载打开即可调试,下载地址: http://download.csdn.net/detail/liyu3519/9873187 stc15系列都可以直接用 //************************** //程序说明:stc15系列采集ds18b20温度数据,并从串口输出 //采用的是22.1184M晶振,用传感器中间那个脚连接单片机的P2.0口 //************************** #include
[单片机]
基于51单片机对两路DS18B20温度传感器的设计
本文提出了基于51单片机两路温度控制器的设计方案,该设计方案采用两个DS18B20温度传感器,采集两个不同地方的温度,通过AT89C51处理进行,由四位LED数码管显示所测量温度,前两位为第一个温度传感器的温度,后两位为第二个温度传感器的温度。采用3个按键实现温度最高和最低的设定,采用蜂鸣器和电动机实现温度过高或过低报警。 1.引言 目前,温度控制器存在的问题是如何缩减成本,减少功耗,温度测量的准确性和多路温度的同时显示。本方案设计的实现基于C51单片机的两路温度控制器,做到成本最低化,精确度高,两路温度的显示和控制,能在温度超出设定的最高温度时启动电风扇进行降温,在温度低于设定的最低温度时启动蜂鸣器报警,能够用户设定最高
[单片机]
基于51单片机对两路<font color='red'>DS18B20</font>温度传感器的设计
基于AT89S51单片机和LM35温度传感器的温度采集显示
随着电子和传感技术的快速发展,温度的测量和控制在民用、工业以及航空航天技术等领域,等到了广泛应用。小型的、低功耗的、廉价的、可靠性高的温度传感器引起了人们的广泛关注。在实际生产、生活等领域中,温度是环境因素不可或缺的一部分,对温度进行及时精确的控制和检测显得尤为重要。本文基于AT89S51单片机,采用LM35温度传感器,设计了一种灵敏度较高,抗干扰能力强,工作稳定可靠的温度采集显示系统。 1、系统结构及工作原理 温度采集显示系统电路由温度采集模块、A/D转换模块、单片机控制模块、数码管显示模块和下载模块组成。电路工作原理是:首先由LM35温度传感器采集外界环境的温度,经LM358放大10倍后以电压形式输入到A/D采样电路,由A
[单片机]
基于AT89S51单片机和LM35温度传感器的<font color='red'>温度采集</font>显示
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
502 Bad Gateway

502 Bad Gateway


openresty
设计资源 培训 开发板 精华推荐

502 Bad Gateway

502 Bad Gateway


openresty
何立民专栏 单片机及嵌入式宝典

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

502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
随便看看
    502 Bad Gateway

    502 Bad Gateway


    openresty
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
502 Bad Gateway

502 Bad Gateway


openresty