DS18B20温度传感器,蜂鸣器实验

上传人:mg****2 文档编号:122803432 上传时间:2020-03-07 格式:DOC 页数:19 大小:103KB
返回 下载 相关 举报
DS18B20温度传感器,蜂鸣器实验_第1页
第1页 / 共19页
DS18B20温度传感器,蜂鸣器实验_第2页
第2页 / 共19页
DS18B20温度传感器,蜂鸣器实验_第3页
第3页 / 共19页
DS18B20温度传感器,蜂鸣器实验_第4页
第4页 / 共19页
DS18B20温度传感器,蜂鸣器实验_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《DS18B20温度传感器,蜂鸣器实验》由会员分享,可在线阅读,更多相关《DS18B20温度传感器,蜂鸣器实验(19页珍藏版)》请在金锄头文库上搜索。

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 1 2 2 关于关于 AT89C52AT89C52 单片机基本概念单片机基本概念 1 何谓单片机 一台能够工作的计算机要有这样几个部份构成 CPU 进行运算 控 制 RAM 数据存储 ROM 程序存储 输入 输出设备 例如 串行口 并行输出 口等 在个人计算机上这些部份被分成若干块芯片 安装一个称之为主板的印刷线 路板上 2 MCS51 单片机和 8051 8031 89C51 等的关系我们平常老是讲 8051 又有什么 8031 现在又有 89C5

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

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

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

7、分布应用 无需外部器件 可通过数据线供电 测温范围 55 125 以 0 5 递增 可编程的分辨率为 9 12 位 对应的可分辨温度分别为 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 灯构成 其中H

9、GFEDCBA为段码 由 高到低的顺序排列 由于我们使用的是共阴数码管 把段码相应的位置2 同时把公 共端 又称位选端 置0 相应的数码管发光 如上显示数字 6 这相应的段码为 0 x7d 即二进制01111101 共阴数码管段码显示0 F 列举如下 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 4 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 5 9 0 x77 0 x7c 0 x39 0 x5e 0 x79 A E 2 3电路的连接方法 VCC链接到单片机的VCC端口 把GND端口链接到 端口 然后 端口链接到单 片机的 端口 然后把单片机是上面的 口链接到

10、数码管 按循序链接到别 的 2 4 系统功能方框图 本方案设计的系统由单片机系统 温度传感器 数码管显示模块 其总体架构如下图 图1 系统总体方框图 系统的程序 DS18B20 单片机测温度系统程序 include reg52 h include intrins h define SkipRom 0 xcc define ConvertTemperature 0 x44 define ReadScratchpad 0 xbe sbit DQ P2 7 unsigned int buffer 6 单单 片片 机机 测温电路 时钟 复位电路 显示电 路 驱动电 路 unsigned char co

11、de buff 12 0X3f 0X06 0X5b 0X4f 0X66 0X6d 0X7d 0X07 0X7f 0X6f 0 x40 0 x00 数字 0 9 及 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

12、 函数功能 初始化 DS18B20 函数参数 无 void init ds18b20 void 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 n 1 DQ 1 n

13、op One Wire Delay 5 延时 128us 读一个字节 函数名称 unsigned int rd byte void 函数功能 DS18B20 读一个字节 函数参数 wdata unsigned int rd byte void unsigned int m bb 0 bit b for m 0 m 8 m DQ 0 nop DQ 1 b DQ One Wire Delay 12 延时 70us if b bb 0 x01 1 flag 1 1 else flag 1 0 if flag 1 msb msb lsb lsb 1 t1 msb 4 整数部分 t2 lsb if fl

14、ag t1 t1 t2 t2 1 t2 t2 0 06 100 if flag 1 buffer 0 10 负数 else buffer 0 11 buffer 1 t1 100 buffer 2 t1 10 10 buffer 3 t1 10 buffer 4 t2 1000 buffer 5 t2 1000 100 buffer 6 t2 100 10 buffer 7 t2 10 ds18b20 显示 函数名称 void display void 函数功能 DS18B20 显示 函数参数 无 void display void unsigned int j b 0 xdf k for j

15、 0 j 1 0 x80 for k 0 k 5 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 系统功能图 蜂鸣器发声原理是电流通过电磁线圈 使电磁线圈产生磁场来驱动振动膜发声的 因 此需要一定的电流才能驱动它 单片机 IO 引脚输出的电流较小 单片机输出的 TTL 电平基本上驱动不了蜂鸣器

16、 因此需要增加一个电流放大的电路 S51 增强型单片机 实验板通过一个三极管 C8550 来放大驱动蜂鸣器 3 3 电路的连接方法 原理图见下面图 GND 链接到实验班上面的 GND 端口 VCC 连接到板子上面的 VCC 端口 然后把 DQ 段连 接的到 P0 4 口 然后启动电路下载就可以了 52 单片机单片机 3 4 系统的基本设计方法 蜂鸣器的正极接到 VCC 5V 电源上面 蜂鸣器的负极接到三极管的发射极 E 三极管的基级 B 经过限流电阻 R1 后由单片机的 P3 7 引脚控制 当 P3 7 输出高电 平时 三极管 T1 截止 没有电流流过线圈 蜂鸣器不发声 当 P3 7 输出低电平时 三极管导通 这样蜂鸣器的电流形成回路 发出声音 因此 我们可以通过程序控制 P3 7 脚的电平来使蜂鸣器发出声音和关闭 程序中改变单片机 P3 7 引脚输出波形的频率 就可以调整控制蜂鸣器音调 产生各 种不同音色 音调的声音 另外 改变 P3 7 输出电平的高低电平占空比 则可以控 制蜂鸣器的声音大小 这些我们都可以通过编程实验来验证 3 5 系统C程序 include define uch

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号