温度采集与显示电路.doc_第1页
温度采集与显示电路.doc_第2页
温度采集与显示电路.doc_第3页
温度采集与显示电路.doc_第4页
温度采集与显示电路.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、目录目录.11 设计内容与要求 .21.1设计内容 .21.2设计要求 .21.3问题分析 .21.4系统框图 .22 系统分析与方案流程图 .32.1系统分析: .32.2方案流程图 .43 系统设计 .53.1硬件电路设计 .53.1.1采集电路(温度传感器DS18B20 ). 53.1.2控制电路( 51 单片机).83.1.3显示电路(数码显示管LED ) .103.1.4报警电路 .113.2软件设计 .113.2.1程序按模块分析 .123.2.2软件设计流程图如下: .错误 ! 未定义书签。3.2.3详细程序清单如下: .134 Proteus 仿真电路设计及结果 .184.1温

2、度显示仿真 .184.2高温报警仿真 .191 设计内容与要求1.1 设计内容选择 51 单片机,晶振采用12MHz ;温度传感器选择DS18B20,温度范围为 0 到 100o C ;将采集的温度值显示在LED 数码管上(两位);如果温度超过 70o C ,蜂鸣器发出声音进行警报。1.2 设计要求按照任务书的要求完成系统分析及方案设计;完成硬件原理图的设计,并选择相关原器件;完成控制软件流程图的设计,并编写相应的单片机控制程序;撰写设计报告。1.3 问题分析DS18B20 的测温范围在 - 55125o C 满足所要求得 0 100o C 的DS18B20 具有温度上下限的设置故可以设定温度

3、上限;采用蜂鸣器接到51 单片机的管脚上通过软件编程即可实现蜂鸣报警。1.4 系统框图电源电路LED 显示复位电路MCS51DS18B20温度传感器时钟振荡电路图一2 系统分析与方案流程图2.1 系统分析:传感器 DS18B20 将温度信号转换成电流信号,再转换为电压信号,然后送入 MCS51 单片机中,本系统采用单总线操作,线路简单,测量值精确,可实现多点测量,并对温度超过限制值, 产生报警和数据采集。 我们设置所测的温度高于 70 摄氏度时发生报警。结合51单片机和DS18B20以及LED的温度采集与显示电路RP14.7kC12345678CC2C3V22pF22pFX11234567VC

4、CU1U2L LL LL LLL119XTAL1P0.0/AD0397AQA13L238112L3P0.1/AD1BQB37211L411.0592MHzP0.2/AD2CQC1836610L5C1XTAL2P0.3/AD3DQD3549L6Q1Q222UFP0.4/AD4BI/RBOQEL7P0.5/AD5345RBIQF152N55512N555133314P0.6/AD6LTQG932RSTP0.7/AD774LS4721P2.0/A8CR122CP2.1/A9V10kP2.2/A1023VCC2924R2PSENP2.3/A113025ALEP2.4/A12C3126EAP2.5/A1

5、310kC27VP2.6/A14R328P2.7/A15GND110P1.0P3.0/RXD10k211P1.1P3.1/TXDVCCVCC312P1.2P3.2/INT0413LS1P1.3P3.3/INT15146P1.4P3.4/T015P1.5P3.5/T1716P1.6P3.6/WRR7817P1.7P3.7/RDSOUNDERMCS514.7kU33DQVCC227.0DQ1GNDDS18B20图 2: 系统硬件原理图2.2 方案流程图开始定义 MCS51各管脚功能及定时器、计数器和LED显示器初始化参数,完成系统初始化设定复位,启动中断读取温度数据转换、显示温度超过 70度Y 报

6、警显示温度关闭中断结束3 系统设计3.1 硬件电路设计硬件电路主要包括以下几个部分:51 单片机、 DS18B20 测温电路、串口通信电路模块、鸣蜂报警器及数码显示电路。表一器件名称数量MCS51单片机1 个LED发光二级管2 个蜂鸣器1 个数码管(两个一组)1 个三极管2 个DS18B201 个电容若干电阻若干导线若干3.1.1 采集电路(温度传感器DS18B20)DS18B20 温度传感器简介DS18B20 是美国 Dallas 公司生产的单总线数字温度传感器,在内部使用了在版 (ON-BOARD )专利技术,全部传感器及转换元件电路集成在形如一只三极管的集成电路内,封装如图:NC:空引脚

7、,悬空不用。VDD :可选电源脚,电源电压范围35.5V,当器件工作,在寄生电源时,此引脚必须接地。DQ( 4 脚):数据输入输出脚。漏极开路,常态下高电平。GND:电源地DS18B20 主要特性图 3:DS18B20 管脚图1. 温度测量范围为 - 55125o C ,固有测温分辨率为 0.5V;2. 测量结果以 9 为数字量方式进行串行传送;3. 用户可设置报警温度上下限;4. 在使用中不需任何外围器件;工作原理该传感器的与众不同是利用温敏振荡器的频率随温度的变化关系,通过对震荡周期的计数来实现温度的测量。为了扩大测温范围和提高分辨率,使用了一个低温系数振荡器和一个高温系数震荡器分别进行计

8、数,并采用了非线性累加器等电路来改善线性。故DS18B20 具有良好的特性,而且售价低廉DS18B20 温度与输出关系表表二实际温度值数字输出(二进制)数字输出(十六进制)+850000 0101 0101 00000550H+25.0625 0000 0001 1001 00010191H+10.125 0000 0000 1010 001000A2H+0.5 0000 0000 0000 10000008H00000 0000 0000 00000000H-0.5 1111 1111 1111 1000FFF8H-10.125 1111 1111 0101 1110FF5EH-25.062

9、5 1111 1110 0110 1111FE6EH-55 1111 1100 1001 0000FC90HDS18B20 与 51 的连接利用 51 单片机 I/O 口中的任一位都可以与单总线进行双向数据,通过单总线可以方便的构建分布式单片机测控系统。工作过程51 单片机首先发复位DS18b20 的负脉冲,接着收 DS18B20 的应答脉冲,这时 51 单片机再发 ROM 命令,最后发存储和控制命令。DS18B20 的存储器由 RAM 和非易失性电擦写EERAM 组成,后者用于存储 TH 和TL 的值。数据先写入RAM ,经校检后再传给EERAM 。RAM 占 9 个字节,包括温度信息(第

10、1、2 字节), TH 和 TL 的值(第 3、4 字节),计数存储器(第7、8字节),CRC(第 9 字节),第 5、 6 字节不用。DS18B20 执行序列1初始化(发一个不少于480us 的低电平脉冲);2执行 ROM 命令,主要用于寻址;3执行 DS18B20 存储命令,用于转换和读数据;4DS18B20 的 I/O 信号有复位脉冲,应答脉冲,写0,读 0,写 1,读 1 等几种,除应答脉冲由DS18B20 发出,其余由主机发出。单片机采样程序框图发出复位信号发 ROM 命令依次读出 N 个 DS18S20 的机器码发匹配命令( 55H)发转换命令( 44H)置 P1.0 为高电平(大

11、约 1.5S)发读 RAM 的低 9 位值命令( BEH )求补转换成十进制并处以2 后保存全部转换结束?结束图 4:单片机采样流程图3.1.2 控制电路( 51 单片机)单片机 SCM(Single Chip Microcomputer) ,即 Microcontroller ,是把微型计算机主要部分都集成在一个芯片上的单芯片微型计算机。主要包括了微处理器(CPU)、存储器 (ROM, RAM) 、输入 /输出口 (I/O 口)和定时器 /计数器、中断系统等功能部件。51单片机管脚功能如下:1.VCC:供电电压。19U1P0.0/AD039XTAL1P0.1/AD13837GND:接地。P0

12、.2/AD218XTAL236P0.3/AD3P0.4/AD435342.P0 口:P0 口为一个 8 位漏级开路双向 I/OP0.5/AD533P0.6/AD69RSTP0.7/AD732口,每脚可吸收 8TTL 门电流。当 P0 口P2.0/A821P2.1/A92223的管脚第一次写 1 时,被定义为高阻输P2.2/A1029PSEN24P2.3/A11C30ALEP2.4/A12253126EAP2.5/A13入。 P0 能够用于外部程序数据存储器,C27VP2.6/A1428P2.7/A15它可以被定义为数据 /地址的第八位。在1P1.0P3.0/RXD102113P1.1P3.1/

13、TXD12P1.2P3.2/INT0FIASH 编程时, P0 口作为原码输入口,413P1.3P3.3/INT15146P1.4P3.4/T015P1.5P3.5/T1当 FIASH 进行校验时, P0 输出原码,此716P1.6P3.6/WR817P1.7P3.7/RD时 P0 外部必须被拉高。MCS513. P1 口: P1 口是一个内部提供上拉电阻的图 5:518 位双向 I/O 口,P1 口缓冲器能接收输出单片机管脚图4TTL 门电流。 P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,

14、P1 口作为第八位地址接收。4. P2 口: P2 口为一个内部上拉电阻的 8 位双向 I/O 口, P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写 “1时”,其管脚被内部上拉电阻拉高, 且作为输入。5. P3口:P3口管脚是 8个带内部上拉电阻的双向 I/O 口,可接收输出 4个 TTL 门电流。当 P3口写入 “1后”,它们被内部上拉为高电平,并用作输入。P3口也可作为 51的一些特殊功能口。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断 0)P3.3 /INT1(外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5

15、 T1(记时器 1 外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。6. RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间 ALE/PROG :当访问外部存储器时, 地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号, 此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间, 每个机器周期两次

16、/PSEN 有效。但在访问外部数据存储器时, 这两次有效的 /PSEN 信号将不出现。 /EA/VPP :当 /EA 保持低电平时,则在此期间外部程序存储器( 0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时, /EA 将内部锁定为 RESET;当EA 端保持高电平时, 此间内部程序存储器。 在 FLASH 编程期间,此引脚也用于施加 12V 编程电源( VPP)。51 系列单片机的特点1. 8 位 cpu2. 片内带振荡器,频率范围为 1.2MHz12MHz3. 片内带 128B 的数据存储器4. 片内带 4KB 的程序存储器5. 程序存储器的寻址空间为 64KB6.

17、 片外数据存储器的寻址空间为 64KB7. 128 个用户位寻址空间8. 21 个字节特殊功能寄存器9. 4 个 8 位的 I/O 并行接口: P0、P1、P2、 P310. 两个 16 位定时、计数器11. 两个优先级别的五个中断源12. 一个全双工的串行 I/O 接口,可多机通信13. 111 条指令,包含乘法指令和除法指令14. 片内采用单总线结构3.1.3 显示电路(数码显示管LED )LED 介绍LED 显示器是由发光二极管显示字段组成的显示器件,在单片机应用系统中通常使用的是七段LED 。这种显示器有共阴极和共阳极两种,共阴极LED 显示器的发光二极管阴极接地当发光二极管的阳极为高

18、电平时,发光二极管点亮。共阳极LED 显1234567LLLLLLL示器的发光二极管的阳极接 +5V。图 6: LED 数码显示+Ua b c de fgabcde fg图 7:共阳极0 驱动图 8:共阴极1 驱动LED 显示方式由于每一位的段选码都接在一个 I/O 口上,因此每送一个段选码, 8 位就显示同一个字符,这种显示器是不能用的。 解决此问题的方法是利用人的视觉滞留,从段选线 I/O 口上安位分别送显示字符的段选码, 在位选控制口也按相应的次序分别选通相应的显示位, 选通位就显示相应的字符, 并保持几毫秒的延时, 未选通位不显示字符。这样,对各位的显示就是一个循环过程。从计算机工作来

19、看,在一个瞬时只有一位显示字符, 而其他位都是熄灭的, 但因为人的视觉滞留, 这种动态变化是察觉不到的, 从效果上看,各位显示器能连续而稳定地显示不同的字符。这就是动态显示。LED 工作原理通常的七段 LED 显示器中有 8 个二极管,其中7 个发光二极管构成7 笔字形 8,一个发光二极管构成小数点。七段 LED 显示块的管脚输出不同的 8 位二进制,可显示不同的数字或字符。 通常把控制发光二极管的 8 位二进制数称为段选码。表三共阴极 1驱动字形代码与十六进制的对应关系共阴极1dgfedcba段码(共阴)(带小数点的数字编码)驱动字符p000111111BFH10000011086H2010

20、11011DBH301001111CFH401100110E6H501101101EDH601111101FDH70000011187H801111111FFH901101111EFH3.1.4 报警电路把“单片机系统”区域中的P1.7 端口用导线连接到“音频放大模块”区域中的 SPK IN 端口上,电路见整体电路3.2 软件设计系统程序主要包括主程序、 读取温度子程序、 数据转换子程序、 显示数据子程序等。软件部分主要实现的功能是通过 DS18B20将温度值采集进来, 并显示在数码管上,同时判断当前温度状态并指示是否报警 同时通过 PC机进行串口温度读取。当温度高于70o C 时,具有报警开

21、关设置,温度恢复到正常温度区间时自动取消报警。3.2.1 软件设计流程图开始定义 MCS51各管脚功能及定时器、计数器和 LED显示器初始化参数,完成系统初始化设定复位,启动中断读取温度数据转换、显示温度超过 70度Y报警显示温度关闭中断结束3.2.2 程序按模块分析主程序:主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s 进行一次。这样可以在一秒之内测量一次被测温度。读取温度子程序:读取温度子程序的主要功能是读出RAM中的 9 字节,在读出时需进行 CRC校验,校验有错时不进行温度数据的改写。主要包括以下三个命令:1写暂存器命令【 4EH】这个

22、命令为由TH 寄存器开始向DS18B20暂存器写入数据, 4EH命令后的 3字节数据将被保存到暂存器的地址2、3、4(TH、 TL、CONFIG)三个字节。所有数据必须在复位脉冲前写完。即如果只想写一个字节的数据到地址2,可按如下流程:初始化 写 0CCH,跳过 ROM检测 写 4EH写 1 字节数据 复位 , 即向 DQ输出 480960us 低电平2读暂存命令【 BEH】这个命令由字节 0 读取 9 个暂存器内容, 如果不需要读取所有暂存内容,可随时输出复位脉冲终止读取过程3转换温度命令【 44H】这个命令启动温度转换过程。 转换温度时 DS18B20保持空闲状态, 此时如果单片机发出读命

23、令, DS18B20将输出 0 直到转换完成,转换完成后将输出 1。3.2.3 详细程序清单如下:DQBIT P3.7 ; 1 wire line( p3.7 引脚接 DS18B20 并置位)swpHequ0d2H(等值伪指令赋值高温与低温)swpLequ0ffHWDLSBDATA 30H ;WDMSBDATA 31H ;*ORG 0000H(设置目标程序起始地址)LJMP MAINORG 000BHLJMP TMR0; Timer0 isr*(T0 中断服务循环)TMR0:MOVTH0,#swpHMOVTL0,#swpLJB21H,DSLMOVP0,42HORLP0,#00100000BSJ

24、MPEXITDSL:MOVP0,43HORLP0,#00010000BEXIT:CPL21HRETI(主程序)MAIN:TOINIT:CLREAMOVTMOD,#01H(定时计数器T0初始化)MOVTH0,#swpHMOVTL0,#swpLSETBEASETBET0SETBTR0*MOVMOVR2,#2R0,#42H ;OVER:MOVINCDJNZR0,#00H;R0R2,OVER(循环判断)LOOP:LCALL DSWD ;(调用子程序从DS18B20中读取温度)SJMPLOOP;*(从 DS18B20 中读温度)DSWD:LCALL RSTSNR; Init of the DS18B20

25、JNBF0,KENDMOVR0,#0CCHLCALL SEND_BYTEMOVR0,#44HLCALL SEND_BYTE; Send a Convert CommandSETBEAMOV48H,#1SS2:MOV49H,#255SS1:MOV4AH,#255SS0:DJNZ4AH,SS0DJNZ49H,SS1DJNZ48H,SS2CLREALCALL RSTSNRJNBF0,KENDMOVR0,#0CCHLCALL SEND_BYTEMOVR0,#0BEHLCALL SEND_BYTE; Send Read Scratchpad commandLCALL READ_BYTE; Read th

26、e low byte from scratchpadMOVWDLSB,A; 保留低温LCALL READ_BYTE; Read the high byte from scratchpadMOVWDMSB,A; 保留高温LCALL TRANS12KEND:SETBEARET;*;TRANS12:MOVA,30HANLA,#0F0HMOV3AH,AMOVA,31HANLA,#0FHORLA,3AHSWAPAMOVB,#10DIVAB;MOV 42H,AMOV43H,B ;MOVb,#10DIVabMOV42H,BMOV41H,ARET;*; Send a byte to the 1 wire line SEND_BYTE: ;MOV A,R0 MOV R5,#8SEN3:CLR C RRC AJC SEN1 LCALL WRITE_0RET;*; Read a byte from the 1 wire line READ_BYTE:MOVR5,#8READ1:LCAL

温馨提示

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

评论

0/150

提交评论