DS18B20温度传感器,蜂鸣器实验_第1页
DS18B20温度传感器,蜂鸣器实验_第2页
DS18B20温度传感器,蜂鸣器实验_第3页
DS18B20温度传感器,蜂鸣器实验_第4页
DS18B20温度传感器,蜂鸣器实验_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、学年论文学年论文(课程论文、课程设计)(课程论文、课程设计)题题 目:目:DS18B20DS18B20 温度温度传感器传感器, ,蜂鸣器实验蜂鸣器实验姓姓 名名学学 号:号:所在学院:所在学院:专业年级:专业年级:20152015 年年 9 9 月月 2121 日日目录目录1 绪 论 .1.1 本论文的目的 . 1.2 关于 AT89C52 单片机基本概念. 1.3 使用的软件介绍.1.4 本论文的主要内容 .2 基于单片机的 DS18B20 温度传感器用数码管显示温度.2.1 DS18B20 传感器介绍2.2 数码管显示数字的基本原理2.3 电路的连接方法 .2.4 系统功能方框图 .2.系

2、统的程序.3 单片机蜂鸣器实验.3.1 蜂鸣器介绍 .3.2 系统功能图3.3 电路的连接方法 .3.4 系统的基本设计方法 .3.5 系统C程序 .总结 .1.1.绪绪 论论1.11.1 本论文的背景本论文的背景 随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便是不可否定的,各种数字系统的应用也使人们的生活更加舒适。数字化控制、智能控制为现代人的工作、生活、科研等方面带来方便。其中数字温度计就是一个典型的例子。 数字温度计与传统的温度计相比,具有读数方便、测温范围广、测温精确、功能多样话等优点。其主要用于对测温要求准确度比较高的场所,或科研实验室使用,该设计

3、使用 STC89C52 单片机作控制器,数字温度传感器 DS18B20 测量温度,单片机接受传感器输出,经处理用 LED 数码管实现温度值显示。1.2 关于关于 AT89C52 单片机基本概念单片机基本概念1) 、何谓单片机 一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制) 、RAM(数据存储) 、ROM(程序存储) 、输入/输出设备(例如:串行口、并行输出口等) 。在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。 2)、MCS51 单片机和 8051、8031、89C51 等的关系我们平常老是讲 8051,又有什么8031,现在又有 89C51,它

4、们之间究竟是什么关系? MCS51 是指由美国 INTEL 公司(对了,就是大名鼎鼎的 INTEL)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如 8031,8051,8751,8032,8052,8752 等,其中 8051 是最早最典型的产品,该系列其它单片机都是在 8051 的基础上进行功能的增、减、改变而来的,所以人们习惯于用 8051 来称呼 MCS51 系列单片机,而 8031 是前些年在我国最流行的单片机,所以很多场合会看到 8031 的名称。1.3 使用的软件介绍使用的软件介绍 单片机的程序设计需要在特定的编译器中进行。编译器完成对程序的编译、连接等工作并且最终生成

5、可执行文件(.hex 文件) 。对单片机程序的开发,一般采用 Keil 公司的 Vision 系列的集成开发环境。 Vision 开发工具当前的最高版本是 Vision4,它支持汇编语言以及 C51 语言的程序设计。本章主要介绍 Vision4 集成开发环境,以及如何运用 Vision4 集成开发环境进行单片机程序设计与仿真。Keil Vision 系列是非常优秀的编译器,受到广大单片机设计者的广泛使用。其特点如下: 支持汇编语言、C 语言等多种单片机设计语言; 可视化的文件管理,界面友好; 支持丰富的产品线,除了 51 以及兼容的单片机内核外,还增加了对 ARM 核产品的支持; 具有完备的编

6、译连接工具; 具备丰富的仿真调试功能,可以仿真并口、串口、定时/计数器、中断、D/A 和A/D 资源; 内嵌 RTX-51 实时多任务操作系统; 支持在一个工作空间中进行多项目的程序设计; 支持多极代码优化1.4 本论文的主要内容本论文的主要内容基于单片机的 DS18B20 数字温度计设计。单片机蜂鸣器设计。更理解单片机怎样设计电路,理解单片机怎样用,为毕业设计建立了一个基础。2 2 基于单片机的基于单片机的 DS18B20DS18B20 温度温度传感器用数码管显示温度传感器用数码管显示温度2.1 DS18B20 传感器介绍独特的单线接口仅需一个端口引脚进行通信简单的多点分布应用无需外部器件可

7、通过数据线供电测温范围-55+125,以 0.5递增可编程的分辨率为 912 位,对应的可分辨温度分别为 0.5、0.25、0.125和 0.0625应用包括温度控制、工业系统、消费品、温度计和任何热感测系统负压特性:电源极性接反时,传感器不会因发热而烧毁,但不能正常工作.2. DS18B20 外形及引脚说明图 3 DS18B20 外形及引脚GND:地DQ:单线运用的数据输入/输出引脚VD:可选的电源引脚2.2 数码管显示数字的工作原理介绍 数码管是一种常用数字显示原件,其内部是由多个并联的Led 灯构成。按照连接led 的公共端的不同可以分为:共阴极数码管、共阳极数码管两种。数码管按照顺序依

8、次排列,有数学里个位、十位、百位、千位,对应与每一位数码管就有数码管的为选概念,共阳极数码管高电平选通,共阴极数码管低电平选通;对于单个的数码管每一个笔划,国际上有统一的规范,按顺时针顺序排列:a、b、c、d、e、f、g、h 是数码管的段信号。由此差别就晓得数码管的单片机控制方法了。图4.13 数码管示意图首先使用Proteus 绘制数码管显示电路,先添加数码管原件,此处绘制电路选用共阴极数码管。单机键盘P的快捷键调出原件对话框,输入7seg 就可以看到:6 位的数码管单个数码管的形状如上图所示:内部由8 个LED 灯构成,其中HGFEDCBA为段码,由高到低的顺序排列。由于我们使用的是共阴数

9、码管,把段码相应的位置2,同时把公共端(又称位选端)置0,相应的数码管发光。如上显示数字“6” ,这相应的段码为0 x7d,即二进制01111101.共阴数码管段码显示0F 列举如下:0 x3f,0 x06,0 x5b,0 x4f,0 x66,/040 x6d,0 x7d,0 x07,0 x7f,0 x6f,/590 x77,0 x7c,0 x39,0 x5e,0 x79,/AE2.3电路的连接方法VCC链接到单片机的VCC端口,把GND端口链接到端口,然后端口链接到单片机的.端口。然后把单片机是上面的口链接到数码管,按循序链接到别的。2.4 系统功能方框图本方案设计的系统由单片机系统、温度传

10、感器、数码管显示模块、其总体架构如下图:图1 系统总体方框图系统的程序DS18B20 单片机测温度系统程序#include reg52.h#include intrins.h#define SkipRom 0 xcc#define ConvertTemperature 0 x44#define ReadScratchpad 0 xbesbit DQ=P27;unsigned int buffer6;unsigned char code buff12=0X3f,0X06,0X5b,0X4f,0X66, 0X6d,0X7d,0X07,0X7f,0X6f,0 x40,0 x00单单片片机机测温电路时

11、钟、复位电路显示电路驱动电路 ;/数字 09 及EP=OC共阴数码管代码 /*延时*/函数名称:void One_Wire_Delay(unsigned char delay_time)/函数功能:延时/函数参数:delay_time/*void One_Wire_Delay(unsigned char delay_time) while(delay_time)delay_time-;/延时时间:=(8+delay_time*6)us;/*初始化*/函数名称:void init_ds18b20(void)/函数功能:初始化 DS18B20/函数参数:无/*void init_ds18b20(v

12、oid) DQ=0;/复位信号 One_Wire_Delay(50);/延时 600us DQ=1; One_Wire_Delay(4);/延时 30us while(DQ=1); One_Wire_Delay(52);/延时 300us DQ=1; _nop_();/*写一个字节*/函数名称:void wr_byte(unsigned int wdata)/函数功能:DS18B20 写一个字节/函数参数:wdata/*void wr_byte(unsigned int wdata) unsigned int n; for(n=0;n1; DQ=1; _nop_(); One_Wire_Del

13、ay(5);/延时 128us /*读一个字节*/函数名称:unsigned int rd_byte(void)/函数功能:DS18B20 读一个字节/函数参数:wdata/*unsigned int rd_byte(void) unsigned int m,bb=0; bit b; for(m=0;m8;m+) DQ=0; _nop_(); DQ=1; b=DQ; One_Wire_Delay(12);/延时 70us if(b) bb|=0 x011) flag_1=1; else flag_1=0; if(flag_1) msb=msb; lsb=lsb+1; t1=(msb4);/整数

14、部分 t2=(lsb&0 x0f)*0.0625*10000; /if(flag) / / t1=t1; / t2=t2+1; / /t2=t2*0.06*100; if(flag_1) buffer0=10;/负数 else buffer0=11; buffer1=t1/100; buffer2=(t1/10)%10; buffer3=t1%10; buffer4=t2/1000; buffer5=(t2%1000)/100; /buffer6=(t2%100)/10; /buffer7=t2%10; /*/*ds18b20 显示*/函数名称:void display(void)/函数功能:

15、DS18B20 显示/函数参数:无/*void display(void)unsigned int j,b=0 xdf,k;for(j=0;j1)|0 x80; for(k=0;k5;k+) One_Wire_Delay(60);/延时 20us void main(void) while(1) rd_ds18b20(); display() ; 3 3 单片机蜂鸣器实验单片机蜂鸣器实验3.1 蜂鸣器介绍51 单片机的一个 I/O 口控制 speaker 发声,演唱祝你平安歌曲。主要器件以及电路图单片机AT89C51,蜂鸣器speaker。3.2 系统功能图蜂鸣器发声原理是电流通过电磁线圈,使

16、电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机 IO 引脚输出的电流较小,单片机输出的 TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。S51 增强型单片机实验板通过一个三极管 C8550 来放大驱动蜂鸣器,3.3 电路的连接方法原理图见下面图GND 链接到实验班上面的 GND 端口,VCC 连接到板子上面的 VCC 端口,然后把 DQ 段连接的到 P0.4 口。然后启动电路下载就可以了。52 单片机单片机3.4 系统的基本设计方法蜂鸣器的正极接到 VCC(5V)电源上面,蜂鸣器的负极接到三极管的发射极 E,三极管的基级 B 经过限流电阻 R1 后由单

17、片机的 P3.7 引脚控制,当 P3.7 输出高电平时,三极管 T1 截止,没有电流流过线圈,蜂鸣器不发声;当 P3.7 输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制P3.7 脚的电平来使蜂鸣器发出声音和关闭。程序中改变单片机 P3.7 引脚输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。另外,改变 P3.7 输出电平的高低电平占空比,则可以控制蜂鸣器的声音大小,这些我们都可以通过编程实验来验证。3.5 系统C程序#include#define uchar unsigned charsbit beep=P04;uchar ti

18、mer0h,timer0l,time;code uchar sszymmh=6,2,3,5,2,1,3,2,2,1,3,2,6,2,1,5,2,1,6,2,4,3,2,2,5,2,1,6,2,1,5,2,2,3,2,2,1,2,1,6,1,1,5,2,1,3,2,1,2,2,4,2,2,3,3,2,1,5,2,2,5,2,1,6,2,1,3,2,2,2,2,2,1,2,4,5,2,3,3,2,1,蜂鸣器电路时钟,复位电路单片机蜂鸣器电路的喇叭出歌声2,2,1,1,2,1,6,1,1,1,2,1,5,1,6,0,0,0;code uchar FREQH=0 xf2,0 xf3,0 xf5,0 xf6,0 xf7,0 xf8,0 xf9,0 xf9,0 xfa,0 xfa,0 xfb,0 xfb,0 xfc,0 xfc,0 xfc,0 xfd,0 xfd,0 xfd,0 xfd,0 xfe,0 xfe,

温馨提示

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

评论

0/150

提交评论