单片机数字温度计显示设计Word文件下载.docx
- 文档编号:5246338
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:16
- 大小:155.25KB
单片机数字温度计显示设计Word文件下载.docx
《单片机数字温度计显示设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《单片机数字温度计显示设计Word文件下载.docx(16页珍藏版)》请在冰点文库上搜索。
课程负责人签名:
目录
1简介2
2数字温度传感器DS18B202
2.1DS18B20概述2
2.2DS18B20测温过程4
31602字符型LCD简介5
4系统硬件电路和软件设计8
4.1系统硬件电路8
4.2系统软件设计9
心得体会:
11
参考文献:
⏹1简介
温度是工业生产和自动控制中最常见的工艺参数之一。
过去温度检测系统设计中,大多采用模拟技术进行设计,这样就不可避免地遇到诸如传感器外围电路复杂及抗干扰能力差等问题;
而其中任何一环节处理不当,就会造成整个系统性能的下降。
随着半导体技术的高速发展,特别是大规模集成电路设计技术的发展,数字化、微型化、集成化成为了传感器发展的主要方向。
设计介绍了检测的温度显示得基本概念,单总线数字温度传感DS18B20及单片机AT89C51的特性、内部结构及工作原理,给出了DS18B20与单片机AT89C51接口的应用实例,以及由两者组成温度检测系统的方法,并给出了对DS18B20进行各种操作的软件流程图及操作程序。
它可以实时的显示和设定温度,实现对温度的自动控制。
本设计对温度的控制有方便、简单的特点,运用在现实生活及工业生产的前景广泛。
⏹2数字温度传感器DS18B20
⏹2.1DS18B20概述
由Dallas半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。
它具有体积小,接口方便,传输距离远等特点。
(1)采用单总线的接口方式。
与微处理器连接时,仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
(2)测量温度范围宽。
测量精度高DS18B20的测量范围为-55℃~+125℃;
在-10~+85°
C范围内,精度为±
0.5°
C。
(3)在使用中不需要任何外围元件。
(4)持多点组网功能。
多个DS18B20可以并联在惟一的三线上,实现多点测温。
(5)供电方式灵活。
DS18B20可以通过内部寄生电路从数据线上获取电源。
因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。
(6)测量参数可配置。
DS18B20的测量分辨率可通过程序设定9~12位。
(7)负压特性。
电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
(8)掉电保护功能。
DS18B20内部含有EEPROM,在系统掉电以后,它仍可保存分辨率及报警温度的设定值。
DS18B20具有体积更小、适用电压更宽、更经济、可选更小的封装方式,更宽的电压适用范围,适合于构建自己的经济的测温系统,因此也就被设计者们所青睐。
3.2DS18B20存储器及设置寄存器
DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。
数据先写入RAM,经校验后再传给E2RAM。
暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位TL,第二个字节是温度的高八位TH。
第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。
第六、七、八个字节用于内部计算。
第九个字节是冗余检验字节,可用来保证通信正确。
主机根据ROM的前56位来计算CRC值,并和存入DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。
分布如表2.1所示。
表2.1内部寄存分布
寄存器内容
地址
温度的低八位数据
温度的高八位数据
1
高温阀值
2
低温阀值
3
保留
4
5
计数剩余值
6
每度计数值
7
CRC校验
8
设置寄存器位于高速闪存的低5个字节,这个寄存器中的内容被用来确定温度的转换精度。
寄存器各位的内容如表2.2下所示:
表2.2DS18B20的设置寄存器各位内容
BIT7
BIT6
BIT5
BIT4
BIT3
BIT2
BIT1
BIT0
TM
R1
R0
该寄存器的低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。
在DS18B20出厂时该位被设置为0,用户不要去改动。
R1和R0用来设置分辨率由表2.3.6可知,设定的分辨率越高,所需要的温度数据转换时间就越长。
因此,在实际应用中要在分辨率和转换时间权衡考虑。
本次设计中采用的为12位分辨率,即750MS转换时间,如表2.2下所示:
表2.3分辨率设置
分辨率
温度最大转换时间
9位
93.75ms
10位
187.5ms
11位
375ms
12位
750ms
⏹2.2DS18B20测温过程
1-WIRE网络具有严谨的控制结构,一般通过双绞线与1-WIRE元件进行数据通信,它们通常被定义为漏极开路端点,主/从式多点结构,而且一般都在主机端接上一个上拉电阻+5V电源。
通常为了给1-WIRE设备提供足够的电源,需要一个MOSFET管将1-WIRE总线上拉至+5V电源。
1-WIRE网络通信协议是分时定义的,有严格的时隙概念。
DS18B20单线通信功能是分时完成的,他有严格的时隙概念,如果出现序列混乱,1-WIRE器件将不响应主机,因此读写时序很重要。
系统对DS18B20的各种操作必须按协议进行。
根据DS18B20的协议规定,微控制器控制DS18B20完成温度的转换必须经过以下4个步骤:
(1)每次读写前对DS18B20进行复位初始化。
复位要求主CPU将数据线下拉500us,然后释放,DS18B20收到信号后等待16us~60us左右,然后发出60us~240us的存在低脉冲,主CPU收到此信号后表示复位成功。
(2)发送一条ROM功能指令,如表2.4所示:
表2.4DS18B20的ROM指令集
指令名称
指令代码
指令功能
读ROM
33H
读DS18B20ROM中的序列号(即读64位地址)
ROM匹配(符合ROM)
55H
发出此命令之后,接着发出64位ROM编码,访问单总线上与编码相对应DS18B20使之作出响应,用于多个DS18B20时定位
搜索ROM
0F0H
用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件作好准备
跳过ROM
0CCH
忽略64位ROM地址,直接向DS18B20发温度变换命令,该命令将针对所有在线的DS18B20
警报搜索
0ECH
该指令执行后,只有温度超过设定值上限或下限的片子才做出响应
(3)发送存储器指令,如表2.5所示:
表2.5DS18B20的存储器指令集
⏹31602字符型LCD简介
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表10-13所示:
编号
符号
引脚说明
VSS
电源地
9
D2
数据
VDD
电源正极
10
D3
VL
液晶显示偏压
11
D4
RS
数据/命令选择
12
D5
R/W
读/写选择
13
D6
E
使能信号
14
D7
D0
15
BLA
背光源正极
D1
16
BLK
背光源负极
表10-13:
引脚接口说明表
第1脚:
VSS为地电源。
第2脚:
VDD接5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:
D0~D7为8位双向数据线。
第15脚:
背光源正极。
第16脚:
背光源负极。
1602液晶模块内部的控制器共有11条控制指令,如表10-14所示:
序号
指令
清显示
光标返回
*
置输入模式
I/D
S
显示开/关控制
D
C
B
光标或字符移位
S/C
R/L
置功能
DL
N
F
置字符发生存贮器地址
字符发生存贮器地址
置数据存贮器地址
显示数据存贮器地址
读忙标志或地址
BF
计数器地址
写数到CGRAM或DDRAM)
要写的数据内容
从CGRAM或DDRAM读数
读出的数据内容
表10-14:
控制命令表
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:
1为高电平、0为低电平)
指令1:
清显示,指令码01H,光标复位到地址00H位置。
指令2:
光标复位,光标返回到地址00H。
指令3:
光标和显示模式设置I/D:
光标移动方向,高电平右移,低电平左移S:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效。
指令4:
显示开关控制。
D:
控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:
控制光标的开与关,高电平表示有光标,低电平表示无光标B:
控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:
光标或显示移位S/C:
高电平时移动显示的文字,低电平时移动光标。
指令6:
功能设置命令DL:
高电平时为4位总线,低电平时为8位总线N:
低电平时为单行显示,高电平时双行显示F:
低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。
指令7:
字符发生器RAM地址设置。
指令8:
DDRAM地址设置。
指令9:
读忙信号和光标地址BF:
为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:
写数据。
指令11:
读数据。
与HD44780相兼容的芯片时序表如下:
读状态
输入
RS=L,R/W=H,E=H
输出
D0—D7=状态字
写指令
RS=L,R/W=L,D0—D7=指令码,E=高脉冲
无
读数据
RS=H,R/W=H,E=H
D0—D7=数据
写数据
RS=H,R/W=L,D0—D7=数据,E=高脉冲
表10-15:
基本操作时序表
⏹4系统硬件电路和软件设计
⏹4.1系统硬件电路
图4.1硬件电路
如图4.1所示,其中P2.0、P2.1、P2.1分别控制LCD的RS寄存器选择、RW读写控制和E使能,P1.7连接DS18B20的DQ数据单总线,P3.0~P3.7连接LCD的D0~D7。
⏹4.2系统软件设计
系统软件流程图:
仿真运行结果:
⏹心得体会:
本次课程设计的是单片机数字温度计显示设计,通过上网查找LCD1602和DS18B210的资料和例程,结合书本中所学的单片机基础知识,完成了课程设计的内容。
通过这次试验,我把书中所学的理论知识和具体的实践相结合,加深对课本中所学知识的理解,同时锻炼了自己的自我学习能力和调试程序的能力。
同时,通过学习LCD1602和DS18B210的资料和例程,积累了自己调试过LCD模块和DS18B20模块程序,为以后模块化编程打下基础。
作为一个学生,在设计程序的过程中,出现错误和不清楚的地方很正常的,在这时候需要靠队友们的强烈的配合,快速的找资料,分析程序,找出问题,结合自身知识提出可行的解决方法,耐心的调试程序。
很多课本上的例子程序,当你自己亲自动手做的时候,会发现自己错误百出,这就需要耐心的和同学交流,找到错误。
⏹参考文献:
【1】《单片机原理与应用设计》,张毅刚、彭喜元编著,电子工业出版社
【2】《新概念51单片机C语言教程入门、提高、开发、拓展全攻略》郭天祥编著,电子工业出版社
课程设计成绩评定表
评定项目
内容
满分
评分
总分
学习态度
学习认真,态度端正,遵守纪律。
答疑和设计情况
认真查阅资料,勤学好问,提出的问题有一定的深度,分析解决问题的能力较强。
40
说明书质量
设计方案正确、表达清楚;
设计思路、实验(论证)方法科学合理;
达到课程设计任务书规定的要求;
图、表、文字表达准确规范,上交及时。
回答问题情况
回答问题准确,基本概念清楚,有理有据,有一定深度。
总成绩
采用五级分制:
优、良、中、及格、不及格
指导教师评语:
签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 数字 温度计 显示 设计