课程设计报告Word文档格式.docx
- 文档编号:18307634
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:41
- 大小:616.79KB
课程设计报告Word文档格式.docx
《课程设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《课程设计报告Word文档格式.docx(41页珍藏版)》请在冰豆网上搜索。
根据DS18B2的工作过程和读写时序、AT89C52工作特点和想要达到的设计效果,进行程序的编写。
具体工作过程为:
下载读序列号程序,读取两个DS18B20中的序列号,并记录下来;
根据读取的序列号更改数组内容后,重新下载程序,进行多点测温过程,由DS18B20温度传感器芯片测量当前温度,通过程序匹配不同的DS18B20,传送各个DS18B20的测量值,将结果送入单片机;
通过AT89C52单片机芯片对送入的测量温度读数进行计算和转换,并将此结果送入液晶显示模块,同时判断是否超过设定的警戒温度,决定蜂鸣器是否工作;
LED1602模块将送来的值显示于显示屏上。
单片机通过扫描按键,进入不同的子程序,完成时间的显示。
1.3.课程设计原理
1.3.1DS18B20工作原理
1.3.1.1DS18B20概述
DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20产品的特点只要求一个端口即可实现通信。
在DS18B20中的每个器件上都有独一无二的序列号。
实际应用中不需要外部任何元器件即可实现测温。
测量温度范围在-55.C到+125.C之间。
数字温度计的分辨率用户可以从9位到12位选择。
内部有温度上、下限告警设置。
DS18B20引脚功能描述见表1。
表1DS18B20详细引脚描述
DS18B20引脚图如图2所示。
1.3.1.2DS18B20的主要特性
(1)适应电压范围更宽,电压范围:
3.0~5.5V,在寄生电源方式下可由数据线供电
。
(2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯
(3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。
(4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。
(5)温范围-55℃~+125℃,在-10~+85℃时精度为±
0.5℃
(6)可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃可实现高精度测温。
(7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快
(8)测量结果直接输出数字温度信号,以"
一线总线"
串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力
(9)负压特性:
电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。
1.3.1.3DS18B20内部结构
DS18B20的内部框图如图2所示。
64位ROM存储器件独一无二的序列号。
暂存器包含两字节(0和1字节)的温度寄存器,用于存储温度传感器的数字输出。
暂存器还提供一字节的上线警报触发(TH)和下线警报触发(TL)寄存器(2和3字节),和一字节的配置寄存器(4字节),使用者可以通过配置寄存器来设置温度转换的精度。
暂存器的5、6和7字节器件内部保留使用。
第八字节含有循环冗余码(CRC)。
使用寄生电源时,DS18B20不需额外的供电电源;
当总线为高电平时,功率由单总线上的上拉电阻通过DQ引脚提供;
高电平总线信号同时也向内部电容CPP充电,CPP在总线低电平时为器件供电。
(注:
INTERNALVDD-内部VDD64-BITROMAND1-wirePROT-64位ROM和单线端MEMORYCONTROLLOGIC-存储器控制逻辑SCRATCHPAD暂存器TEMPERATURESENSOR温度传感器ALARMHIGHTRIGGER(TH)REGISTER上限温度触发ALARMLOWTRIGGER(TL)REGISTER下限温度触发8-BITCRCGENERTOR8位CRC产生器POWERSUPPLLYSENSE电源探测PARASITEPOWERCIRCUIT寄生电源电路)。
图2DS18B20内部框图
1.3.1.4DS18B20中4个主要数据部件
①光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
②DS18B20中的温度传感器可完成对温度的测量。
以12位转化为例:
用16位符号扩展的二进制补码读数形式提供,以0.0625℃LSB形式表达,其中S为符号位。
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;
如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H,如表2所示。
TEMPERATURE-温度,DIGITALOUTPUT-数字输出)
表2DS18B20温度数据表
③DS18B20温度传感器的存储器
DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPROM,后者存放高温度和低温度触发器TH、TL和结构寄存器。
④配置寄存器
表3配置寄存器
低五位一直都是"
1"
,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。
在DS18B20出厂时该位被设置为0,用户不要去改动。
R1和R0用来设置分辨率,如表4所示:
(DS18B20出厂时被设置为12位)
表4R1与R0确定传感器分辨率设置表
1.3.1.5DS18B20工作过程
初始化ROM命令跟随着需要交换的数据;
功能命令跟随着需要交换的数据。
访问DS18B20必须严格遵守这一命令序列,如果丢失任何一步或序列混乱,DS18B20都不会响应主机。
a.初始化:
DS18B20所有的数据交换都由一个初始化序列开始。
由主机发出的复位脉冲和跟在其后的由DS18B20发出的应答脉冲构成。
当DS18B20发出响应主机的应答脉冲时,即向主机表明它已处在总线上并且准备工作。
b.ROM命令:
ROM命令通过每个器件64-bit的ROM码,使主机指定某一特定器件(如果有多个器件挂在总线上)与之进行通信。
DS18B20的ROM如表3-6所示,每个ROM命令都是8bit长。
c.功能命令:
主机通过功能命令对DS18B20进行读写Scratchpad存储器,或者启动温度转换。
DS18B20的功能命令如表5所示。
表5DS18B20功能命令表
1.3.1.5DS18B20信号方式
DS18B20采用严格的单总线通信协议,以保证数据的完整性。
该协议定义了几种信号类型:
复位脉冲、应答脉冲、写0、写1、读0和读1。
除了应答脉冲所有这些信号都由主机发出同步信号。
总线上传输的所有数据和命令都是以字节的低位在前。
a.初始化序列:
复位脉冲和应答脉冲在初始化过程中,主机通过拉低单总线至少480µ
s,以产生复位脉冲(TX)。
然后主机释放总线并进入接收(RX)模式。
当总线被释放后,4.7kΩ的上拉电阻将单总线拉高。
DS18B20检测到这个上升沿后,延时15µ
s~60µ
s,通过拉低总线60µ
s~240µ
s产生应答脉冲。
初始化波形如图3所示。
图3初始化脉冲
b.读和写时序:
在写时序期间,主机向DS18B20写入指令;
而在读时序期间,主机读入来自DS18B20的指令。
在每一个时序,总线只能传输一位数据。
读写时序如图4所示。
写时序存在两种写时序:
“写1”和“写0”。
主机在写1时序向DS18B20写入逻辑1,而在写0时序向DS18B20写入逻辑0。
所有写时序至少需要60µ
s,且在两次写时序之间至少需要1µ
s的恢复时间。
两种写时序均以主机拉低总线开始。
产生写1时序:
主机拉低总线后,必须在15µ
s内释放总线,然后由上拉电阻将总线拉至高电平。
产生写0时序:
主机拉低总线后,必须在整个时序期间保持低电平(至少60µ
s)。
在写时序开始后的15µ
s期间,DS18B20采样总线的状态。
如果总线为高电平,则逻辑1被写入DS18B20;
如果总线为低电平,则逻辑0被写入DS18B20。
读时序DS18B20只能在主机发出读时序时才能向主机传送数据。
所以主机在发出读数据命令后,必须马上产生读时序,以便DS18B20能够传送数据。
所有读时序至少60µ
s,且在两次独立的读时序之间至少需要1µ
每次读时序由主机发起,拉低总线至少1µ
s。
在主机发起读时序之后,DS18B20开始在总线上传送1或0。
若DS18B20发送1,则保持总线为高电平;
若发送0,则拉低总线。
当传送0时,DS18B20在该时序结束时释放总线,再由上拉电阻将总线拉回空闲高电平状态。
DS18B20发出的数据在读时序下降沿起始后的15µ
s内有效,因此主机必须在读时序开始后的15µ
s内释放总线,并且采样总线状态。
DS18B20在使用时,一般都采用单片机来实现数据采集。
只需将DS18B20信号线与单片机1位IO线相连,且单片机的1位IO线可挂接多个DS18B20,就可实现单点或多点温度检测。
图4DS18B20读写时序图
1.3.1.6DS18B20测温原理
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。
DS18B20测温原理如图5所示。
图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。
高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。
计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。
图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。
图5DS18B20测温原理框图
1.3.2LED1602工作原理
1.3.2.1LED1602简介
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。
一般1602字符型液晶显示器实物如图6所示。
图61602实物图
1.3.2.2LED1602的基本参数及引脚功能
1602LED分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。
1602LED主要技术参数:
显示容量:
16×
2个字符
芯片工作电压:
4.5—5.5V
工作电流:
2.0mA(5.0V)
模块最佳工作电压:
5.0V
字符尺寸:
2.95×
4.35(W×
H)mm
引脚功能说明:
1602LED采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表6所示。
表61602引脚说明表
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
10
D3
3
VL
液晶显示偏压
11
D4
4
RS
数据命令选择
12
D5
5
RW
读写选择
13
D6
6
E
使能信号
14
D7
7
D0
15
BLA
背光源正极
8
D1
16
BLK
背光源负极
第1脚:
VSS为地电源。
第2脚:
VDD接5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:
D0~D7为8位双向数据线。
第15脚:
背光源正极。
第16脚:
背光源负极。
1.3.2.3LED1602的时序及指令说明
1602液晶模块内部的控制器共有11条控制指令,如表7所示。
表71602控制指令表
序号
指令
清显示
光标返回
*
置输入模式
ID
S
显示开关控制
D
C
B
光标或字符移位
SC
RL
置功能
DL
N
F
置字符发生存贮器地址
字符发生存贮器地址
置数据存贮器地址
显示数据存贮器地址
读忙标志或地址
BF
计数器地址
写数到CGRAM或DDRAM)
要写的数据内容
从CGRAM或DDRAM读数
读出的数据内容
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:
1为高电平、0为低电平)
指令1:
清显示,指令码01H,光标复位到地址00H位置。
指令2:
光标复位,光标返回到地址00H。
指令3:
光标和显示模式设置ID:
光标移动方向,高电平右移,低电平左移S:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效。
指令4:
显示开关控制。
D:
控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:
控制光标的开与关,高电平表示有光标,低电平表示无光标B:
控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:
光标或显示移位SC:
高电平时移动显示的文字,低电平时移动光标。
指令6:
功能设置命令DL:
高电平时为4位总线,低电平时为8位总线N:
低电平时为单行显示,高电平时双行显示F:
低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。
指令7:
字符发生器RAM地址设置。
指令8:
DDRAM地址设置。
指令9:
读忙信号和光标地址BF:
为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:
写数据。
指令11:
读数据。
与HD44780相兼容的芯片时序表如表8所示。
表8基本操作时序表
读状态
输入
RS=L,RW=H,E=H
输出
D0—D7=状态字
写指令
RS=L,RW=L,D0—D7=指令码,E=高脉冲
无
读数据
RS=H,RW=H,E=H
D0—D7=数据
写数据
RS=H,RW=L,D0—D7=数据,E=高脉冲
读写操作时序如图7和图8所示。
图7读操作时序
图8写操作时序
1.3.2.4LED1602的RAM地址映射及标准字库表
液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。
要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图9是1602的内部显示地址。
图91602LCD内部显示地址
在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。
每次输入指令前都要判断液晶模块是否处于忙的状态。
1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图10所示,这些字符有:
阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”
图10字符代码与图形对应图
1.3.2.5LED1602的初始化(复位)过程
延时:
15mS
写指令:
38H(不检测忙信号)
5mS
以后每次写指令、读写数据操作均需要检测忙信号。
写指令38H:
显示模式设置
写指令08H:
显示关闭
写指令01H:
显示清屏
写指令06H:
显示光标移动设置
写指令0CH:
显示开及光标设置
2.课程设计硬件电路设计
2.1.单片机最小系统模块
以AT89C52为核心组成的单片机最小系统,主要包括时钟振荡电路,复位电路。
正5V电源接到89C52的40脚(VCC)和20脚(GND)接地。
时钟振荡电路的18脚(XTAL1)和19脚(XTAL2)外接12MHz的晶振和2个30pF的电容,振荡频率就是晶振的固有频率,经过一定的电路连接实现设计的功能。
复位电路采用上电自动复位和手动复位相结合的方式接到89C52的9脚。
时间调节的按键模块包括时、分、光标调节和计数按键组成,分别接在单片机IO口的P1.0~P1.3口,并通过10K的上拉电阻接5V电源。
单片机最小系统原理图如图11所示。
图11单片机最小系统电路图
2.2.DS18B20测温电路
由于DS18B20工作在单总线方式,所以它与单片机的接口电路非常简单。
采用“一线总线”的数字方式传输,将两个DA18B20的数字输入输出引脚(引脚2)以并联的方式接在单片机IO口的P2.3口,引脚1(GND)接地,引脚3(VDD)通过一个4.7K的上拉电阻接5V电源。
蜂鸣器报警电路,驱动三极管的基极通过一个1K的电阻接在单片机IO口的P2.4口,三极管集电极接5V电压源,发射机接蜂鸣器VDD脚,蜂鸣器另一管脚接地。
具体电路图如图12所示。
图12DS18B20测温电路
2.3.LED1602显示电路
LED1602液晶数据输入输出口DB0~DB7通过一个10K的上拉排阻分别接在单片机的P0.0~P0.7,1602的GND、VO和BGGND接地,VCC和BGVCC接5V电压源。
具体电路图如图13所示。
图13LED1602显示电路
2.4.系统总电路图
综合以上各部分电路,系统总体电路图如图14所示。
图14系统总电路图
3.课程设计软件设计与流程图
3.1.系统软件流程图
N
Y
图15系统软件流程图
3.2.系统源程序(附录3)
3.2.1读取序列号程序
3.2.2多点测温程序
4.课程设计成果
4.1.Proteus仿真结果
Proteus软件是英国LabCenterElectronics公司出版的EDA工具软件它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前比较好的仿真单片机及外围器件的工具。
它可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。
还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。
对于工程设计及教学起到很大的辅助功能。
本设计首先采用Proteus进行软件仿真,对设计方案进行验证和反复修改,减少了更改硬件电路的麻烦和对硬件的损伤,对设计效果可以提前进行明朗的验证和查错。
具体仿真结果如图16、17所示。
图16读序列号仿真结果
Proteus软件中默认的DS18B20的序列号为2830C5BE,将多点测温程序中的数组改为以上序列号,进行仿真,测温结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)