C51单片机字温度计设计制作_第1页
C51单片机字温度计设计制作_第2页
C51单片机字温度计设计制作_第3页
C51单片机字温度计设计制作_第4页
C51单片机字温度计设计制作_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字式温度计设计与制作单片机编程与实现C51单片机数字式温度计设计与制作数字式温度计设计与制作单片机编程与实现第一部分

实际应用温度是工农业生产中最常用的参数之一。近年来,随着家用电器、日用装置的自动化、无公害、节能运动的日益发展,特别是微控制器的应用,对各类传感器的需求更是大量增加,在30多种常用物理量的测量传感器中,对温度传感器的需要量占首位,大约占50%左右。如果按传感器与被测介质的接触方式可分为两大类,一类是接触式温度传感器,一类是非接触式温度传感器。接触式温度传感器的测温元件与被测对象要有良好的热接触,通过热传导及对流原理达到热平衡,这是温度计的是指极为被测对象的温度。这种数字式温度计设计与制作单片机编程与实现第二部分项目成果展示数字式温度计设计与制作单片机编程与实现图6-1数字温度计实物参考图数字式温度计设计与制作单片机编程与实现数字式温度计设计与制作任务为某温室大棚设计一个数字式温度计,以便当棚内温度变化时,能及时提醒工作人员进行处理,保证温室温度变化在较小范围。要求能实现温度数据的采集与记录。能实现各测量值的显示,精度为0.1℃,温度范围不超过±55℃。能实现上下限报警。数字式温度计设计与制作第三部分单片机编程与实现基本功能设计数字式温度计设计与制作单片机编程与实现具体功能如下:温度检测:系统能够实时检测大棚温度,温度分辨率为0.1℃,温度范围为-55℃~+55℃。温度显示:系统能实时显示大棚温度值,显示到小数点后一位。在设置上、下限报警时,显示上下限提醒标志。温度报警:系统能够设置大棚温度范围,当棚内温度超出设定范围时发生报警。报警设置:系统能够设置上、下限报警温度值,设定精度为0.1℃。数字式温度计设计与制作单片机编程与实现知识要点:DS18B20的使用;蜂鸣器的使用。数字式温度计设计与制作单片机编程与实现第四部分

知识补充

知识一数字温度传感器DS18B20的使用介绍知识二蜂鸣器的扩展数字式温度计设计与制作单片机编程与实现知识一数字温度传感器DS18B20的使用介绍一、DS18B20的外观及内部结构DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。数字式温度计设计与制作单片机编程与实现内部框图数字式温度计设计与制作单片机编程与实现为了满足测温的灵活性,需要在不同的场合选择不同的精度,通过对配置寄存器(CONFIG)的编程即可实现上述目的,CONFIG的格式如图6-5所示。其中R1、R0决定温度转换的精度位数,R1、R0与转换位数、转换时间的关系如表6-1所示,如果不对CONFIG编程,表示默认12位转换精度。数字式温度计设计与制作单片机编程与实现的的第第00、、11字节节单单元元。。单单片片可可以以通通过过总总线线接接口口读读到到数数据据,,读读时时低低位位在在前前,,如大位位在在后后。。于于00,,这这55果果测测得得的的温温度度位为为00,,只只要要将将测到的的数数值值乘乘00..00662255即即可可得得到实实际际温温度度;如如果果温温度度小小于于0,要这这55位位为为11取取反反加加11再再,测测到到的的数数值值需需乘于于00..00662255即即可得得到到实实际际温度度,,不不同同温温度度与数数字字输输出出对对应应关关系系如如表表6-3所所示示DS18B20中的温度传感器可完成对温度的测量,以

16位符号扩展的二进制补码读数形式存储在高速缓存器温度值

16进制输出

机+125℃单

07D0H

该取

高+85℃0550H+25.0625℃0191H+10.125℃于00A2H+0.5℃0008H0℃0000H-0.5℃FFF8H-10.125℃的FF5EH-10.125℃FF6FH-55℃FC90H数字式温度计设计与制作单片机编程与实现DS18B20温度值格式数字式温度计设计与制作单片机编程与实现2.DS18B20的控制方法DS18B20与单片机的连接有两种方法:一种是VDD接外部电源,GND接地,DQ与单片机的I/O线相连;另一种是用寄生电源供电,此时VDD、GND接地,DQ接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线都要接5K左右的上拉电阻。寄生电源供电方式外部电源供电方式数字式温度计设计与制作单片机编程与实现根据DS18B20的通信协议,主机(单片机)控制DS18B20完成温度转换必须经过如下几个步骤:每一次读写之前都要对DS18B20进行初始化操作,初始化成功后执行一条对ROM的操作指令,然后进行存储器(包括SCRATCHPAD

RAM和E2RAM)操作指令,使DS18B20完成温度测量并将结果存入高速暂存器,在此基础上,主机才能读出转换结果。数字式温度计设计与制作单片机编程与实现数字式温度计设计与制作单片机编程与实现3.DS18B20的时序及编程DS18B20与单片机的通信是通过严格的时序来实现的,每次传送数据或命令都是由一系列的时序信号组成的,共有三种基本时序:初始化时序;写0、1时序;读0、1时序。初始化时序如图6-6所示。单片机先发一个复位脉冲,保持低电平时间最少480us,最多不能超过960us。然后,单片机释放总线,等待DS18B20的应答脉冲。

DS18B20在接受到复位脉冲后等待15~60us才能发出应答脉冲。应答脉冲能保持60~240us。单片机从发送完复位脉冲到再次控制总线至少要等待480us。数字式温度计设计与制作单片机编程与实现图6-6DS18B20初始化时序数字式温度计设计与制作单片机编程与实现//

s延时初始化程序:void

delay_us(uchar

us){while(us--);}void

reset(){dq=1;//dq复位//稍做延时//单片机将dq拉低//精确延时大于480

s//拉高总线//flag=0初始化成功,flag=1则初始化失败delay_us(1);dq=0;delay_us(80);dq=1;delay_us(8);flag=dq;delay_us(20);}数字式温度计设计与制作单片机编程与实现DS18B20写时序DS18B20写数字式温度计设计与制作单片机编程与实现DS18B20写//写一个位void

write_byte(uchar

dat){uchar

i;bit

onebit;for(i=1;i<=8;i++){onebit=dat&0x01;dat=dat>>1;if(onebit){dq=0;_nop_();

_nop_();dq=1;delay_us(5);}数字式温度计设计与制作单片机编程与实现DS18B20写else{dq=0;delay_us(8);dq=1;_nop_();_nop_();}}}数字式温度计设计与制作单片机编程与实现DS18B20读DS18B20读时序数字式温度计设计与制作单片机编程与实现DS18B20读//读一个位bit

read_bit(){bit

dat;dq=0;_nop_();dq=1;_nop_();_nop_();dat=dq;delay_us(10);return(dat);}数字式温度计设计与制作单片机编程与实现DS18B20读//读一个字节uchar

read_byte(){uchar

value,i,j;value=0;for(i=0;i<8;i++){j=read_bit();value=(j<<7)|(value>>1);}return(value);}数字式温度计设计与制作单片机编程与实现知识二

蜂鸣器的使用蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电。广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。按结构的不同,蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。数字式温度计设计与制作单片机编程与实现1.蜂鸣器的结构原理

压电式蜂鸣器:压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。

电磁式蜂鸣器:电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流

通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。数字式温度计设计与制作单片机编程与实现2.蜂鸣器驱动由于自激蜂鸣器是直流电压驱动的,不需要利用交流信号进行驱动,只需对驱动口输出驱动电平并通过三极管放大驱动电流就能使蜂鸣器发出声音。数字式温度计设计与制作单片机编程与实现3.蜂鸣器播放音乐蜂鸣器发声时,由单片机定时器的定时器产生不同频率的音频脉冲,经放大后驱动蜂鸣器发出不同音节的声音。数字式温度计设计与制作单片机编程与实现通过定时计数器产生一定频率的信号发出音乐C调音符频率

HZ262277293311329349370392415440466494TH/TLF88BF8F2F95BF9B7FA14FA66FAB9FB03FB4AFB8FFBCFFC0BC调音符11#22#344#55#66#7频率

HZ523553586621658697739783830879931987TH/TLFC43FC78FCABFCDBFD08FD33FD5BFD81FDA5FDC7FDE7FE05C调音符频率

HZ104511061171124113161393147615631658175518601971TH/TLFB21FE3CFE55FE6DFE84FE99FEADFEC0FE02FEE3FEF3FF02数字式温度计设计与制作单片机编程与实现第五部分

项目实施(一)硬件电路电路图的设计

(二)元器件清单(三)程序流程图设计数字式温度计设计与制作单片机编程与实现(一)硬件电路电路图的设计1.电路的原理图电路如图所示作为用户按钮输入端,P0.0~P0.6和P2.4~P2.7作为LED扩展输出端口;当P1.0检测到低电平开始计数,LED做出相应显示,检测到高电平时停止计数,当前四位计数值即为中奖号码。再次按下按钮时又可重新开始。数字式温度计设计与制作单片机编程与实现温度计原理图数字式温度计设计与制作单片机编程与实现((二二)元元器器件件清单单序号名

称型

号单位数量备

注1ICAT89C51片12温度传感器DS18B20片13数码管SM410564只1四位八段共阳数码管4蜂鸣器5V只15晶振12M个16铝电解电容10uF个17瓷片电容30P个28三极管8050个59电阻10k/0.25W个110电阻5.1k/0.25W个311电阻200/0.25W个812电阻1k/0.25W个413轻触开关(按钮)6mm*6mm只214实验电路板MCU_1块1本书专配数字式温度计设计与制作单片机编程与实现项目实施根据项目要求,软件的设计主要实现温度的读取和显示,并与上、下限进行比对,实现超限报警,同时还利用中断设置温度上、下限。因此,整个软件分为按键中断子程序、温度采样子程序、显示

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论