多功能数字温度计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DS18B20 采用 3 脚 PR-35 封装或 8 脚 SOIC 封装,其内部结构框图如图 4 所 示。
图 4 内部结构框图 64 位 ROM 的结构开始 8 位是产品类型的编号,接着是每个器件的惟一的序 号,共有 48 位,最后 8 位是前面 56 位的 CRC 检验码,这也是多个 DS18B20 可以 采用一线进行通信的原因。温度报警触发器 TH 和 TL,可通过软件写入户报警上 下限。 DS18B20 温度传感器的内部存储器还包括一个高速暂存 RAM 和一个非易失性 的可电擦除的 EERAM。高速暂存 RAM 的结构为 8 字节的存储器。头 2 个字节包含 测得的温度信息,第 3 和第 4 字节 TH 和 TL 的拷贝,是易失的,每次上电复位时 被刷新。第 5 个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨 率。DS18B20 工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位 的定义如图所示。低 5 位一直为 1,TM 是工作模式位,用于设置 DS18B20 在工作 模式还是在测试模式,DS18B20 出厂时该位被设置为 0,用户要去改动,R1 和 R0 决定温度转换的精度位数,来设置分辨率。 DS18B20 温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换 时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。温度传感器 18B20 汇编程序,采用器件默认的 12 位转化,最大转化时间 750 微秒 ,可以将检 测到的温度直接显示到 AT89S52 的两个数码管上。
EA / Vpp (31): 内 部 和 外 部 程 序 存 储 器 选 择 线 EA =0 时 访 问 外 部 ROM 0000H—FFFFH ; EA =1 时 , 地 址 0000H—0FFFH 空 间 访 问 内 部 ROM , 地 址 1000H—FFFFH 空间访问外部 ROM。本次设计EA接高电平。 XTAL1(19)和 XTAL2(18):使用内部振荡电路时,用来接石英晶体和电 容;使用外部时钟时,用来输入时钟脉冲。
作为从机的 DS18B20 芯片发一个有时间宽度要求的初始化脉冲实现的。 初始化后, 才可进行读写操作。 2 、ROM 操作命令 总线主机检测到 DS18B20 的存在 便可以发出 ROM 操作
命令之一 这些命令表 3。 表 3 ROM 操作指令 指令 Read ROM(读 ROM) Match ROM(匹配 ROM) Skip ROM(跳过 ROM) Search ROM(搜索 ROM) Alarm search(告警搜索) 3、存储器操作命令如表 4。 表 4 存储器操作指令 指令 Write Scratchpad(写暂存存储器) Read Scratchpad(读暂存存储器) Copy Scratchpad(复制暂存存储器) Convert Temperature(温度变换) Recall EPROM(重新调出) Read Power supply(读电源) 代码 [4EH] [BEH] [48H] [44H] [B8H] [B4H] 代码 [33H] [55H] [CCH] [F0H] [ECH]
吉林建筑工程学院
电气与电子信息工程学院
《单片机原理与应用》课程设计报告
设计题目: 专业班级: 学生姓名: 学 号:
多功能数字温度计 信科 072 刘海龙 10307212 杨佳 王超
Βιβλιοθήκη Baidu
指导教师: 设计时间:
2010.08.30-2010.09.10
教师评语:
单片机课程设计报告
成绩
评阅教师
数字温度计
日期
五、电路工作原理
系统硬件电路设计 单片机的选择 单片机 AT89S52 具有低电压供电和体积小等特点, 四个端口只需要两个口就 能满足电路系统的设计需要, 很适合便携手持式产品的设计使用系统可用二节电 池供电。 AT89S52主要特性: 与 MCS-51 单片机产品兼容 1000 次擦写周期 32 个可编程 I/O 口线 6 个中断源 低功耗空闲和掉电模式 看门狗定时器 灵活的 ISP 编程 4K 字节在系统可编程 Flash 存储器 全静态工作:0Hz—33MHz 2 个 16 位定时器/计数器 全双工 UART 串行通道 掉电后中断可唤醒 双数据指针 4.0---5.5V 电压工作范围
单片机 AT89S52 的内部结构总框图。它可以划分为 CPU、存储器、并行口、 串行口、定时/计数器和中断逻辑几个部分。 AT89S52 外部引脚功能如图 1 所示。
图 1 AT89S52 外部引脚
本次设计需要注意的几个端口: P0 口(32—39):是一组 8 位漏极开路行双向 I/O 口,也既地址/数据总线 复用口。可作为输出口使用时,每位可吸收电流的方式驱动 8 个 TTL 逻辑电路, 对端口写“1”可作为高阻抗输入输入端用。在访问外部数据存储器时,这组口 线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 Flash 编程时,PO 口接收指令字节,而在程序校验时,输出指令字节,校验时, 要求接上拉电阻。 P3 口(10—17) :是一组带有内部上拉电阻的 8 位双向 I/O 口,P1 的输入缓 冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对 P3 口写入“1”时,它 们被内部上拉电阻拉高并可作为输出端口。作输出端口时,被外部拉低的 P3 口 将用上拉电阻输出电流。P3 口除可作为一般的 I/O 口线外,更重要的用途是它 的第二功能,如表 1 所示。 表1 端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 P3 口第二功能 第二功能 RXD(串行输入口) TXD(串行输出口) INT0(外中断 0) INT1(外中断 1) T0(定时/计数器 0) T1(定时/计数器 1) WR(外部数据存储器写选通) RD(外部数据存储器读选通)
二、课程设计的目的
通过《单片机原理与应用》课程设计,使我们掌握单片机及其扩展系统设计 的方法和设计原则及相应的硬件调试的方法。 进一步加深单片机及其扩展系统设 计和应用的理解。
三、课程设计的题目
多功能数字温度计设计
四、课程设计内容及要求
多功能数字温度计设计具有如下功能: ① 能够显示当前的环境温度,精确到小数点后 1 位; ② 显示部分可以采用现有的数码管; ③ 扩展功能:可实用 LCD 显示,增加湿度检测。
表 2 DS18B20 温度转换时间表 R1 0 0 1 1 R0 0 1 0 1 分辨率/位 9 10 11 12 温度最大转换时间/MS 93.75 187.5 375 750
高速暂存 RAM 的第 6、7、8 字节保留未用,表现为全逻辑 1。第 9 字节读出 前面所有 8 字节的 CRC 码,可用来检验数据,从而保证通信数据的正确性。 当 DS18B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值就 以 16 位带符号扩展的二进制补码形式存储在高速暂存存储器的第 1、 2 字节。单 片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以 0.0625℃/LSB 式表示。 当符号位 S=0 时,表示测得的温度值为正值,可以直接将二进制位转换为 十进制;当符号位 S=1 时,表示测得的温度值为负值,要先将补码变成原码, 再计算十进制数值。表 2 是一部分温度值对应的二进制温度数据。 DS18B20 完成温度转换后,就把测得的温度值与 RAM 中的 TH、TL 字节内容 作比较。若 T>TH 或 T<TL,则将该器件内的报警标志位置位,并对主机发出的 报警搜索命令做出响应。 因此, 可用多只 DS18B20 同时测量温度并进行报警搜索。 在 64 位 ROM 的最高有效字节中存储有循环冗余检验码(CRC) 。主机 ROM 的 前 56 位来计算 CRC 值,并和存入 DS18B20 的 CRC 值作比较,以判断主机收到的 ROM 数据是否正确。 另外,由于 DS18B20 单线通信功能是分时完成的,它有严格的时隙概念,因 此读写时序很重要。系统对 DS18B20 的各种操作按协议进行。操作协议为:初使 化 DS18B20(发复位脉冲)→发 ROM 功能命令→发存储器操作命令→处理数据。 分别说明如下: 1、初始化 单总线的所有处理均从初始化开始。初始化过程是主机通过向
RST/VPD(9) :复位信号输入端。AT89S52 接通电源后,在时钟电路作用下, 该脚上出现两个机器周期以上的高电平,使内部复位。第二功能是VPD ,即备用 电源输入端。当主电源Vcc 发生故障,降低到低电平规定值时,VPD 将为 RAM 提供 备用电源,发保证存储在 RAM 中的信号不丢失。 时钟电路设计 AT89S52 时钟有两种方式产生,即内部方式和外部方式。 AT89S52 有一个构成内部震荡器的高增益反向放大器, 引脚 XTAL1 和 XTAL2 分别是该放大器的输入端和输出端。 外接石英晶体 (或陶瓷震荡器) 及电容 C1、 C2 接在放大器的震荡回路中构成并联震荡电路。对外接电容 C1、C2 虽然没有非 常严格的要求,但电容的大小会轻微影响震荡频率的高低、震荡工作的稳定性、 起震的难易程序及温度稳定性,如果使用石英晶体,推荐使用 30pF± 10pF,而如 果使用陶瓷谐振器建议选择 40pF± 10pF。用户还可以采用外部时钟,采用外部时 钟。在这种情况下,外部时钟脉冲接到 XTAL1 端,既内部时钟发生器的输入端, XTAL2 悬空。由于外部时钟信号是通过一个 2 分频的触发器后作为内部时钟信号 的所以外部时钟的占空比没有特殊要求, 但最小高电平持续的时间和最大低电平 持续的时间应符合产品技术条件的要求。本次设计采用内部震荡电路,瓷片电容 采用 30P,晶振采用 12MHz。 复位电路设计 单片机系统的复位电路在这里采用的是上电+按钮复位电路形式,其中电阻 R 采用 10KΩ 的阻值,电容采用电容值为 10μ 的电解电容。具体连接电路如图 2 所示。
图2 复位电路
温度显示电路
图 3 温度显示电路 四位共阴极数码管, 能够显示小数和负温度。 零下时, 1 和 2 分别显示负号。 当温度超过 99.9 时,四个数码管全部亮。 温度传感器 考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这 是非常容易想到的,所以可以采用一只温度传感器 DS18B20,此传感器,可以很 容易直接读取被测温度值,进行转换,就可以满足设计要求。 DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能 温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且 可根据实际要求通过简单的编程实现 9~12 位的数字值读数方式。DS18B20 的性 能特点如下: 独特的单线接口仅需要一个端口引脚进行通信; 多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能; 无须外部器件; 可通过数据线供电,电压范围为 3.0V~5.5V; 零待机功耗; 温度以 9 或 12 位数字; 用户可定义报警设置; 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; 负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能常工 作;
多功能数字温度计设计 一、内容摘要
本设计是一款简单实用的小型数字温度计,所采用的主要元件有传感器 DS18B20,单片机 AT89S52,,四位共阴极数码管一个,电容电阻若干。DS18B20 支持“一线总线”接口,测量温度范围-55℃~+125℃。在-10℃~+85℃范围内, 精度为± 0.5℃。现场温度直接以“一线总线”的数字方式传输,大大提高了系 统的抗干扰性。 本次数字温度计的设计共分为五部分,主控制器,LCD 显示部分,传感器部 分,复位部分,时钟电路。主控制器即单片机部分,用于存储程序和控制电路; LCD 显示部分是指四位共阴极数码管,用来显示温度;传感器部分,即温度传感 器,用来采集温度,进行温度转换;复位部分,即复位电路。测量的总过程是, 传感器采集到外部环境的温度, 并进行转换后传到单片机,经过单片机处理判断 后将温度传递到数码管显示。本设计能完成的温度测量范围是-55℃~+128℃, 由于能力有限,不能实现报警功能。
相关文档
最新文档