温度采集与显示在最.docx
- 文档编号:23839317
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:11
- 大小:104.88KB
温度采集与显示在最.docx
《温度采集与显示在最.docx》由会员分享,可在线阅读,更多相关《温度采集与显示在最.docx(11页珍藏版)》请在冰豆网上搜索。
温度采集与显示在最
温度采集与显示
1、设计的目的
1.了解温度传感器电路的工作原理。
2.了解弱信号传感器的常见电路。
3.进一步熟悉A/D变换电路的工作原理
2、设计要求
利用实验仪上提供的温度传感电路、A/D变换电路及数码管显示电路,完成温度的采样和显示。
3、设备
1.LAB6000微控制器实验系统
2.PC机一台
3.实验导线
4、参考电路及连线
4.1温度传感器接线图
4.2接线说明
连线
连线空1
连接孔2
1
KEY/LED_CS
CS0
2
模数转换AD_CS
CS2
3
温度传感输出
模数转换器IN0
4.3A/D变换电路及数码管显示电路如下
4.4数码管显示电路如:
5、说明
上图是一个较常用的温度测量电路,大致分电源,电阻电桥,运放,输出四部分。
电源由R4、R6、C1、U1B组成,R4、R6为电压电路,C1主要滤除VCC中纹波,U1B为LM324运算放大器,工作于电源跟随器方式,其特点是具有较高的输入阻抗低输出阻抗,为后级电桥提供较稳定的电流。
电桥人R1、R2、R3、R13及热敏电阻组成,通过调节R13使电桥平衡,当温度发生变化时,热敏电阻阻值变化,电桥产生变化,电桥产生电压差。
运放电路R7、R8、R9、R10及U1A组成,这是一种灵敏度较高的电桥放大电路,放大倍数由R9/R8得到。
输出电路由R4、R12、R14、D1组成,调节R14可以调整输出电压幅度。
D1主要用于防止输出负电压,保护后级A/D电路。
该电路是一个负温度系数关系,当温度升高时,输出电压减小。
其他电阻类的传感器的工作原理于此相似,也可以分成以上几部分,具体电路可能有所不同,但原理是相同的。
6、实验步骤
(1)阅读设计需求
(2)根据设计的需求,画出设计结构框图
3位数字显示系统
温度采集
A/D转换
8051单片机
(3)选择需要的芯片
(4)画出设计流程图,设计程序
(5)上级调试
(6)连接电路
(7)模拟仿真
7、实验原理
7.1A/D转换电路的原理
A/D转换电路由ADC0809来完成。
ADC0809的引脚功能如下:
ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。
它是逐次逼近式A/D转换器,可以和单片机直接接口。
ADC0809的引脚结构图如图2-2所示:
IN0-IN7:
8条模拟量输入通道
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。
地址输入和控制线:
4条
ALE为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。
A,B和C为地址输入线,用于选通IN0-IN7上的一路
模拟量输入。
通选择表如下表所示。
图2-2ADC0809的引脚结构图
表2-1通道选择表
C
B
A
选择的通道
0
0
0
IN0
0
0
1
IN1
0
1
0
IN2
0
1
1
IN3
1
0
0
IN4
1
0
1
IN5
1
1
0
IN6
1
1
1
IN7
数字量输出及控制线:
11条
ST为转换启动信号。
当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。
EOC为转换结束信号。
当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。
OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。
OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。
D7-D0为数字量输出线。
CLK为时钟输入信号线。
因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,
VREF(+),VREF(-)为参考电压输入。
7.2位数字显示系统
静态显示是LED数码管的各个段都与一个固定驱动端相连接,每个数码管有七段,N个数码管就有7N固定固定驱动端与其相连接。
图中外接74LS164移位寄存器对应于各个数码管。
8051的串行口设定为方式0输出。
由于被显示的字形是以字形码的形式出现。
因此,首先在程序中要建立一个字形表SEGPT。
该表以16进制数的次序,存放其相应字形码,把表格的首地址SEGPT,送入基址寄存器DPTR,把要显示的数作为偏移量送入变址寄存器A,然后执行查表指令MOVCA,@A+DPTR,从表中取出对应字符的字形码送到累加器。
另外,还要开辟一个显示缓冲区DISMO-DISMN,缓冲区中每个单元对应一个LED数码管。
显示子程序的作用就是依次将显示缓冲区中的内容(16进制数据)取出,并查表变换成要显示字符的字形码,送往数码中显示。
因此,凡是需要调整、更新显示内容时,必须先向显示缓冲区的单元送数,然后再调用显示子程序。
8、编辑程序
ORG0000H
COMP:
MOVB,#11H;扩大256倍的K值B
MULAB;256*K*Vt
MOVA,#12H;T0值送A,舍弃乘积低8位
CLRC;清进位位
SUBBA,B;T0-K*VT
CJNEA,#00H,COMP1
COMP1:
JNCCOMP3;温度高于10度转移
CJNEA,#96H,COMP2
COMP2:
JCCOMP3;温度低于150度转移
MOV27H,#0FH;超出有效温度范围显示F
MOV28H,#0FH
MOV29H,#0FH
MOV2AH,#0FH
MOV2BH,#0FH
MOV2CH,#0FH
ACALLDISP;调用显示子程序
RET
;十进制转换程序如下:
COMP3:
MOVR1,#00H
MOVR2,#00H
CLRC
CHAN:
SUBBA,#64H;减100
JCCHAN1;不够减,转
INCR1
AJMPCHAN2
CHAN1:
ADDA,#64H;恢复系数
CHAN2:
SUBBA,#0AH;减10
JCCHAN3;不够减,转
INCR2;够减,十位加1
AJMPCHAN2;重复减10
CHAN3:
ADDA,#0AH;还原个位数
MOV27H,#0AH
MOV28H,#0DH
MOV29H,#10H
MOV2AH,A
MOV2BH,R2
MOV2CH,R1
RET
;显示子程序如下:
DISP:
MOVR6,#27H;指向显示缓冲区
MOVR7,#20H;指向显示器最高位
MOVR0,#88H;段控口地址
MOVR1,#8CH;位控口地址
DISP1:
MOVA,#00H;各位数码管清零
MOVX@R0,A
MOVA,R7
MOV@R1,A
RRCA
JCDISP2
MOVR7,A
AJMPDISP1
DISP2:
MOVR7,#20H;重新指向显示器最高位
DISP3:
MOVA,R7;输出位控码
MOVX@R1,A;取出显示数据
MOVA,27H
ADDA,#0EH;查表,字形码送a
MOVCA,@A+PC;输出字形码
MOVX@R0,A;延时
ACALLDELAY;到最低位则转
INCR6
MOVA,R7
JBACC.0,DISP4
RRA
MOVR7,A
AJMPDISP3
DISP4:
RET
MAP:
DB3FH,06H,5BH,4FH,66H
DB6DH,7DH,07H,7FH,6FH
DB77H,7CH,39H,5EH,79H
DB71H,00H
DELAY:
MOVR7,#50
D0:
MOVR6,#10
D1:
DJNZR6,D1
DJNZR7,D0
RET
9、调试遇到的问题和解决方法
1.在输入程序的时候发现有错误,在同学的帮助下,完成了检查,并顺利通过编译。
2.由于对八段数码管认识的不足,在编程的时候遇到了一些问题即位码输出地址和段码的输出地址的控制。
在老师的讲解下,认识有了明显的进步,方便了接下来的设计。
10、课程设计小结
不可否认的是在这次课程设计时遇到了一些困难。
首先便是对温度传感器的认识存在不足。
在设计之初没有考虑温度传感器的物理特性。
后来经过上网查阅解决了这个问题。
另外就是具体的编程,也遇到了一些问题,比如指令的应用。
但通过自己的努力,克服了许多问题,又有同学和老师的帮助。
在这次课程设计中,我使用protel2004设计电路。
事实也证明我们的努力没有白费,认真严谨的实习态度给我们带来了成功的喜悦!
通过这次课程设计看到了很多问题,光是学习书本知识是远远不够的。
实际的操作和理论之间还是有差距的。
这短短一周的实践,我感觉到自己在课本上学到的理论知识和实践仍有一定的差距。
这次单片机课程设计,我掌握了设计一个路温度采集与显示系统的基本方法和基本步骤,实际解决了设计中出现的问题。
参考文献
[1]专著:
赵德安,等.单片机原理与应用[M].北京:
机械工业出版社2009
[2]专著:
屈波.单片机原理及应用实验指导书[M].南京:
南京工程学院2011
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 温度 采集 显示
![提示](https://static.bdocx.com/images/bang_tan.gif)