单片机温度采集与显示.docx
- 文档编号:20148581
- 上传时间:2023-04-25
- 格式:DOCX
- 页数:21
- 大小:87.18KB
单片机温度采集与显示.docx
《单片机温度采集与显示.docx》由会员分享,可在线阅读,更多相关《单片机温度采集与显示.docx(21页珍藏版)》请在冰豆网上搜索。
单片机温度采集与显示
创新设计实训报告
题目温度采集与显示
系别xx
年级Y07专业电子信息工程
班级07电信1班学号Y10107105
学生姓名xx
指导教师xx职称讲师
设计时间2010.10.09
目录
一、设计任务及要求2
1.1任务:
2
1.2基本要求(难度系数0.4):
2
1.3发挥部分:
2
二、硬件设计2
2.1MCS—51系列单片机2
2.1.1部分引脚介绍:
3
2.1.28051中断引脚3
2.1.38051中断源3
2.2DS18B20工作原理3
2.2.1温度检测4
2.2.2数值计算4
三、软件设计5
3.1总体设计5
3.2单元电路设计5
3.2.1测温电路设计5
3.2.2控制、键盘和显示电路设计6
3.2.3加热装置和功率电路设计6
3.2.4打印设计7
四、小结8
五、参考文献8
六、附录9
附1:
元器件明细表:
9
附2:
仪器设备清单9
附3:
程序清单9
一、设计任务及要求
1.1任务:
使用DS18B20、数码管和单片机实现温度采集和控制系统的设计。
1.2基本要求(难度系数0.4):
(1)使用DS18B20传感器实现温度测量,并使用数码管显示当前测量结果;
(1)做好隔水处理,要求进行水温测量;
1.3发挥部分:
(1)使用DS18B20和简易加热装置,实现一个水温控制系统,具有水温设定和恒温控制功能。
(+0.6)
二、硬件设计
2.1MCS—51系列单片机
图1MCS-51系列单片机引脚图
2.1.1部分引脚介绍:
(1)主电源引脚VCC
VCC正常工作电压+5V。
(2)时钟电路引脚XTAL1、XYAL2
XTAL1片内振荡电路输入端
XTAL2片内振荡电路输出端
(3)控制信号引脚RST/Vpd、ALE。
RST/Vpd复位控制输入/断电时,提供备用电源输入。
ALE允许地址锁存输出。
(4)输入输出引脚P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7
其中P3口具有双重功能。
2.1.28051中断引脚
AT89S51单片机的P3.0~P3.5构成了8051单片的中断引脚。
2.1.38051中断源
表1
中断服务程序
中断号
(n)
中断源名称
中断优先级
中断入口ROM地址(8n+3)
voidINT0_ISR(void)interrupt0{}
0
外部中断0(INT0)
高
0x0003
voidTIMER0_ISR(void)interrupt1{}
1
定时/计数器中断0(T0)
0x000B
voidINT1_ISR(void)interrupt2{}
2
外部中断1(INT1)
0x0013
voidTIMER1_ISR(void)interrupt3{}
3
定时/计数器中断1(T1)
0x001B
voidUART_ISR(void)interrupt4{}
4
串行口中断(TXD、RXD)
低
0x0023
2.2DS18B20工作原理
DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。
其一个工作周期可分为两个部分,即温度检测和数据处理。
它的内在原理是电桥一个桥臂用对温度敏感的材料做成,在温度改变的时候电阻随着改变,使得电桥失去平衡,达到测量温度的效果。
2.2.1温度检测
DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
表2
Bit7bit6bit5bit4bit3bit2bit1bit0
LsByte
23
22
21
20
2-1
2-2
2-3
2-4
Bit15bit14bit13bit12bit11bit10bit9bit8
MsByte
S
S
S
S
S
26
25
24
2.2.2数值计算
例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。
表3
温度
二进制值
十六进制值
+125°C
0000011111010000
07D0H
+85°C
0000010101010000
0550H
+25.0625°C
0000000110010001
0191H
+10.125°C
0000000010100010
00A2H
+0.5°C
0000000000001000
0008H
0°C
0000000000000000
0000H
-0.5°C
1111111111111000
FFF8H
-10.125°C
1111111101011110
FF5EH
-25.0625°C
1111111001101111
FE6FH
-55°C
1111110010010000
FC90H
DS18B20的主要特征:
(1)全数字温度转换及输出。
(2)先进的单总线数据通信。
(3)最高12位分辨率,精度可达土0.5摄氏度。
(4)12位分辨率时的最大工作周期为750毫秒。
(5)可选择寄生工作方式。
(6)检测温度范围为–55°C~+125°C(–67°F~+257°F)
(7)内置EEPROM,限温报警功能。
(8)64位光刻ROM,内置产品序列号,方便多机挂接。
(9)多样封装形式,适应不同硬件系统。
三、软件设计
3.1总体设计
对题目进行深入的分析和思考,可将整个系统分为以下几个部分:
测温电路、控制电路、功率电路和加热装置。
统框图如下所示。
3.2单元电路设计
3.2.1测温电路设计
如下图:
利用温度传感器DS18B20直接对水温进行测量,直接输出数字量。
可直接与单片机进行通信,读取测温数据,电路结构简单,它能够达到0.5摄氏度的固有分辨率。
3.2.2控制、键盘和显示电路设计
如下图:
控制、键盘和显示电路
这部分是一个单片机最小系统的基本电路,这里我们选用了AT89C51来满足系统需求。
键盘部分由2个,来实现用户自行设定温度,上面的实现十位加一,下面的实现个位加一,左边显示器显示实际温度,直接通过传感器显示实际温度,右边的显示自行设定的温度,操作简单
3.2.3加热装置和功率电路设计
如下图:
利用继电器可以很容易的通过较高的电压和电流,在正常的情况下,工作十分可靠,使用继电器无需外加光耦,自身就可实现电气隔离。
3.2.4打印设计
如下图:
利用MAX232对RS-232和TTL点平进行转换实现数据的通信
四、小结
完成这次单片机课程设计,我们学到了很多书本上学不到的知识。
首先是在网上查找资料,找到原器件,再进行软件的模拟连接和调试,每一步,我们都在很用心的去做,终于在努力的调试和修改下,我们达到了自己想要的结果。
在这次的单片机课程设计中我感觉受益匪浅。
不用说我们在其中学到的新知识是多么有价值,也不用说它拓宽了我们多少的眼界,只是说它让我们的能力得到了提高就已足以成为我们努力付出的回报。
通过这次单片机课程设计还增强了我们查阅资料的方法和技巧,更是大大的提高了我们的自学的能力,“授之以鱼,不若授之以渔”,这为我们以后学习新的知识提供了有效的方法,这才是我们最值得高兴的收获。
其次,通过这次课程设计,我们知道了团队合作的重要性,我们小组的成员每个人都在尽力的查找各种资料,这会使得我们的效率变得更加高效。
理论与现实总是要通过实践联系起来的,我们在这次课程设计中不再是局限于课本或是参考资料中的理论知识,而是把所有的实验都按部就班的做过,并通过实验结果对所理解的知识进行了加强巩固,更是对原来的理解偏差进行了改正,使我们对所学的AT89S51芯片板理解的更加透彻。
通过这次机会,我感觉收获很多,希望以后能有更多的机会去做这些有意义的工作和设计。
五、参考文献
[1]康华光等.《电子技术基础(数字部分)》[m].北京:
高等教育出版社,2008
[2]王楚、余道衡,《电子线路》,北京大学出版社
[3]王楚、沈伯弘,《数字逻辑电路》北京大学出版社,1999年
[4]蔡美琴等,《MCS-51系列单片机系统及其应用》第二版,高等教育出版社
[5]常熟理工学院物电学院单片机技术实验与指导书
六、附录
附1:
元器件明细表:
1、4位共阳数码管2
2、74HC2451
3、AT89C511
4、按钮2
5、电解电容1uf4
6、MAX2321
7、电炉丝1
8、发光二极管1
9、温度传感器DS18B201
10、固态继电器TLP5211
附2:
仪器设备清单
1、数字示波器
2、稳压电源
3、数字万用表
4、温度计
5、打印机
6、秒表
附3:
程序清单
TMPLEQU29H
TMPHEQU28H
FLAG1EQU38H
DATAINBITP3.7
ORG00H
LJMPMAIN1
ORG03H
LJMPZINT0
ORG13H
LJMPZINT1
ORG30H
MAIN1:
SETBIT0
SETBEA
SETBEX0
SETBIT1
SETBEX1
SETBP3.6
SETBP3.2
MOV74H,#0
MOV75H,#0
MOV76H,#9
MOV77H,#0
MAIN:
LCALLGET_TEMPER
LCALLCVTTMP
LCALLDISP1
AJMPMAIN
INIT_1820:
SETBDATAIN
NOP
CLRDATAIN
MOVR1,#3
TSR1:
MOVR0,#107
DJNZR0,$
DJNZR1,TSR1
SETBDATAIN
NOP
NOP
NOP
MOVR0,#25H
TSR2:
JNBDATAIN,TSR3
DJNZR0,TSR2
CLRFLAG1
SJMPTSR7
TSR3:
SETBFLAG1
CLRP1.7
MOVR0,#117
TSR6:
DJNZR0,$
TSR7:
SETBDATAIN
RET
GET_TEMPER:
SETBDATAIN
LCALLINIT_1820
JBFLAG1,TSS2
NOP
RET
TSS2:
MOVA,#0CCH
LCALLWRITE_1820
MOVA,#44H
LCALLWRITE_1820
ACALLDISP1
LCALLINIT_1820
MOVA,#0CCH
LCALLWRITE_1820
MOVA,#0BEH
LCALLWRITE_1820
LCALLREAD_1820
RET
WRITE_1820:
MOVR2,#8
CLRC
WR1:
CLRDATAIN
MOVR3,#6
DJNZR3,$
RRCA
MOVDATAIN,C
MOVR3,#23
DJNZR3,$
SETBDATAIN
NOP
DJNZR2,WR1
SETBDATAIN
RET
READ_1820:
MOVR4,#2
MOVR1,#29H
RE00:
MOVR2,#8
RE01:
CLRC
SETBDATAIN
NOP
NOP
CLRDATAIN
NOP
NOP
NOP
SETBDATAIN
MOVR3,#9
RE10:
DJNZR3,RE10
MOVC,DATAIN
MOVR3,#23
RE20:
DJNZR3,RE20
RRCA
DJNZR2,RE01
MOV@R1,A
DECR1
DJNZR4,RE00
RET
CVTTMP:
MOVA,TMPH
ANLA,#80H
JZTMPC1
CLRC
MOVA,TMPL
CPLA
ADDA,#1
MOVTMPL,A
MOVA,TMPH
CPLA
ADDCA,#0
MOVTMPH,A
MOV73H,#0BH
SJMPTMPC11
TMPC1:
MOV73H,#0AH
TMPC11:
MOVA,TMPL
ANLA,#0FH
MOVDPTR,#TMPTAB
MOVCA,@A+DPTR
MOV70H,A
MOVA,TMPL
ANLA,#0F0H
SWAPA
MOVTMPL,A
MOVA,TMPH
ANLA,#0FH
SWAPA
ORLA,TMPL
H2BCD:
MOVB,#100
DIVAB
JZB2BCD1
MOV73H,A
B2BCD1:
MOVA,#10
XCHA,B
DIVAB
MOV72H,A
MOV71H,B
TMPC12:
NOP
DISBCD:
MOVA,73H
ANLA,#0FH
CJNEA,#1,DISBCD0
SJMPDISBCD1
DISBCD0:
MOVA,72H
ANLA,#0FH
JNZDISBCD1
MOVA,73H
MOV72H,A
MOV73H,#0AH
DISBCD1:
RET
TMPTAB:
DB0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9
DISP1:
MOVR1,#70H
MOVR0,#74H
MOVR5,#0FEH
PLAY:
MOVP1,#0FFH
MOVA,R5
MOVP2,A
MOVA,@R1
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP1,A
MOVA,@R0
MOVCA,@A+DPTR
MOVP0,A
MOVA,R5
JBACC.1,LOOP1
CLRP1.7
CLRP0.7
LOOP1:
LCALLDL1MS
INCR1
INCR0
MOVA,R5
JNBACC.3,ENDOUT
RLA
MOVR5,A
MOVA,73H
CJNEA,#1,DD2
SJMPLEDH
DD2:
MOVA,72H
CJNEA,#0AH,DD3
MOV72H,#0
DD3:
MOVA,76H
CJNEA,72H,DDH
SJMPDDL
DDH:
JNCPLAY1
SJMPLEDH
DDL:
MOVA,75H
CJNEA,71H,DDL1
SJMPLEDH
DDL1:
JNCPLAY1
LEDH:
CLRP3.6
SJMPPLAY
PLAY1:
SETBP3.6
SJMPPLAY
ENDOUT:
MOVP1,#0FFH
MOVP2,#0FFH
RET
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H
DB92H,82H,0F8H,80H,90H,0FFH,0BFH
DL1MS:
MOVR6,#50
DL1:
MOVR7,#100
DJNZR7,$
DJNZR6,DL1
RET
ZINT0:
PUSHACC
INC75H
MOVA,75H
CJNEA,#10,ZINT01
MOV75H,#0
ZINT01:
POPACC
RETI
ZINT1:
PUSHACC
INC76H
MOVA,76H
CJNEA,#10,ZINT11
MOV76H,#0
ZINT11:
POPACC
RETI
ZZZ1:
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
RETI
END
课程设计独创性声明:
由于系统架构设计合理,功能电路实现较好,系统性能优良、稳定,
较好地达到了题目要求的各项指标。
学生签名:
指导教师评语:
课程设计成绩:
指导教师签名:
教研室意见:
教研室主任签名:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 温度 采集 显示