ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:201.97KB ,
资源ID:8304087      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8304087.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课设结题报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课设结题报告.docx

1、单片机课设结题报告 Beijing Jiaotong University 单片机课设结题报告温度计的设计组员姓名:WTTYP班级: 电气0906指导老师:季晓衡完成日期:2011年11月24日一、实验元件介绍1、感温元件AD590(1)AD590的主要特性:AD590是美国模拟器件公司生产的单片集成两端感温电流传感器,是一种已经IC化的温度感测器,它会将温度转换为电流。其规格如下:a、 度每增加1,它会增加1A输出电流b、 可测量范围-55至150c、 供电电压范围+4V至+30V(2)AD590管脚图及元件符号(3)AD590工作原理AD590相当于一个温度控制的恒流源,输出电流大小只与温

2、度有关,且与温度成正比。只需一个精密电阻,就可以将电流(温度)信号转化为电压信号,总的灵敏度系数通过该电阻设定。AD590的温度系数是1A/K,即温度每增加1K,它会增加1A输出电流。其输出电流是以绝对温度零度-273为基准,每增加1,它会增加1A输出电流,因此 0到100时AD590输出电流为273A到373A。(4)电流-电压转换电路电压-电流转换电路图中,AD590输出端输出电流,经过10K的电阻,转换为电压值。OP07为一射极跟随器,A=1,用于提高输入阻抗。两个二极管用于隔离干扰。电流-电压转换公式如下:AD590的灵敏度: 经过10K电阻后: 具体温度-电压值对应如下表摄氏温度/A

3、D590电流/A经10K电压/V0273.22.73210283.22.83220293.22.93230303.23.03240313.23.13250323.23.23260333.23.332100373.23.7322、ADC0832通过特定的电流-电压转换电路之后,可得到与温度相对应的电压。但是若想显示,需要得到数字信号才行。所以需要用ADC0832。ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,芯片的模拟电压输入在0-5V之间。其引脚图及说明如下:引脚功能说明: CS_ 片选使能,低电平芯片使能。 CH0 模拟输入通道0,或作为IN+/-使用。 CH1 模拟输入

4、通道1,或作为IN+/-使用。 GND 芯片参考0 电位(地)。 DI 数据信号输入,选择通道控制。 DO 数据信号输出,转换数据输出。 CLK 芯片时钟输入。 Vcc/REF 电源输入及参考电压输入(复用)输入格式配置位选择通道号CH0CH1CH0CH1差分LL+-LH-+单端HL+HH+ADC0832时序:当CS由高变低时,选中ADC0832。在时钟的上升沿,Din端的数据移入ADC0832内部的多路地址移位寄存器。在第一个时钟期间,Din为高,表示启动位,紧接着输入两位配置位。当输入启动位和配置位后,选通输入模拟通道,转换开始。转换开始后,经过一个时钟周期延迟,以使选定的通道稳定。ADC

5、0832接着在第4个时钟下降沿输出转换数据。数据输出时先输出最高位(D7-D0);输出完转换结果后,又以最低位开始重新输出一遍数据(D7-D0),两次发送的最低位共用。当片选CS为高时,内部所有寄存器清0,输出变为高阻态。实验中我们由CH0输入模拟量,Dout输出数字量。我们把ADC0832的CS、CLK、Dout、Din端分别连接在P3.3、P3.2,P3.1,P3.0端,所以ADC0832的片选、时钟信号、启动位和配置位均通过置位端口实现。由于是CH0输入模拟信号,所以配置位为10(B)。ADC0832为单端输出模式。由于AD是串行输入输出,故前3个脉冲上升沿完成设置,第411个脉冲下降沿

6、后取1位AD转换的结果,在第1118个脉冲下降沿后第二次取AD转换结果,将两次结果进行比对,如果一致,则完成转换,关ADC0832;如果不一致,则重新开始转换。经AD转换后,数字量D与温度值的转换如下所示:3、51单片机 实验中将用51单片机作为将数字信号输出为数码显像管显示数字的转换芯片,用汇编程序控制单片机不同输出端口的高低电平,即可控制数码显像管显示的数字。4、数码显像管 实验中所用的是较为普遍的4个8位显像管,显示的数字分别有不同的输出位所对应。其字形表为1-10:3FH, 06H, 5BH, 4FH, 66H,6DH,7DH,07H,7FH,6FH。二、设计思路:该数字温度计的设计要

7、求为:(1)四位数码管显示,两位整数,两位小数;(2)温度显示范围:0(或20室温)100。电路由温度传感器(AD590),电压-电流转换电路,AD转换器,51单片机和显示模块组成。AD590属于电流输出型传感器,其输出的电流经电压-电流转换电路变为模拟电压信号,通过AD转换器变为数字量。此数字量输入单片机,单片机直接控制显示。显示模块由四个LED数码显示管和若干阻排组成。电路板连接如下图: 实验原理图如下图:三、程序设计框图及汇编语句:系统程序包括主程序、AD子程序、BCD子程序和显示子程序。实验中由于需要显示小数,所以需要借助100/51得到的小数位。具体计算过程如下:程序中将R7作为存储

8、ADC0832输出8位的位。实验测得在0100的过程中,AD590经过10k电阻,经过ADC0832转换之后的范围为8BH-BEH,其中共有51个数,反映的是0100的变化。由于100/51=1.96=2-0.04,所以2可以作为整数显示的基础位,0.04可作为小数显示的基础位。这样就可以实现实验要求的功能。在ADC0832输出8BH-A4H的时候,小数位都不会超过1,所以就在整数位将其输出的数值乘以2之后减1,然后送到数码显像管显示;小数位就用其输出的数值乘以4,再用100减去这个数,作为小数位的数,送给数码显像管显示。这就是我们设计的温度计的基本原理。当然,由于ADC0832的原因,在CL

9、K口输入的时钟信号需要从单片机中发出,所以还需要用SETB,CLR,DELAY等语句产生时钟信号。程序框图如下:开始输入使能信号,使之开始工作输入通道控制字产生时钟脉冲,输出两字节数据调用显示子程序调用子程序调用BCD子程序初始化 开始否关显示显示缓存区内容送A,查字形表字型码送P0口,字位码送P1口延时2ms变量调整,3位显示完成?是结束(返回)显示子程序主程序:ORG 0000HSJMP 0040HORG 0040HMAIN:MOV IE,#00H CLR REN MOV P3,#0FFH MOV P2,#0FFH MOV P0,#0FFH CLR P3.2CHUSHI:MOV R0,#0

10、0H CLR P3.3 ACALL DELAY SETB P3.2 ACALL DELAY CLR P3.2 ACALL DELAY SETB P3.2 ACALL DELAY CLR P3.2 CLR P3.0 ACALL DELAY SETB P3.2 ACALL DELAY CLR P3.2 ACALL DELAY SETB P3.2 ACALL DELAY CLR P3.2DUSHU: ACALL DELAY MOV B,P3 SETB P3.2 JB B.1,ZHIWEI CLR ACC.7FANHUI:RL A INC R0 CLR P3.2 CJNE R0,#08H,DUSHU

11、ACALL LUEGUO MOV P3,#0FFH CLR P3.2 AJMP XIANSHI ZHIWEI:SETB ACC.7 AJMP FANHUIXIANSHI:CLR C MOV R7,A SUBB A,#8BH JNC PANDUAN1 MOV R1,#00H MOV R2,#00HPANDUAN1:MOV A,R7 CLR C SUBB A,#0BEH JC PANDUAN2 MOV R1,#99 MOV R2,#99PANDUAN2:MOV A,R7 CLR C SUBB A,#0A4H JNC JIEWEI MOV A,R7 CLR C SUBB A,#8BH MOV B,#

12、02H MUL AB SUBB A,#01H MOV R1,A MOV A,R7 SUBB A,#8BH MOV B,#04H MUL AB MOV R0,A MOV A,#64H SUBB A,R0 CLR C MOV R2,AHUIGUI: MOV A,R1 MOV B,#10 DIV AB MOV R3,A MOV R4,B MOV A,R2 MOV B,#10 DIV AB MOV R5,A MOV R6,B MOV R0,#00HXIANSHIW:MOV DPTR,#MAP MOV A,R3 MOVC A,A+DPTR MOV P2,A CLR P0.5 ACALL DELAY AC

13、ALL DELAY SETB P0.5 MOV DPTR,#MAP MOV A,R4 MOVC A,A+DPTR ORL A,#80H MOV P2,A CLR P0.4 ACALL DELAY ACALL DELAY SETB P0.4 MOV DPTR,#MAP MOV A,R5 MOVC A,A+DPTR MOV P2,A CLR P0.3 ACALL DELAY ACALL DELAY SETB P0.3 MOV DPTR,#MAP MOV A,R6 MOVC A,A+DPTR MOV P2,A CLR P0.2 ACALL DELAY ACALL DELAY SETB P0.2 IN

14、C R0 CJNE R0 ,#0FFH,XIANSHIW AJMP CHUSHIJIEWEI: MOV A,R7 CLR C SUBB A,#8BH MOV B,#02H MUL AB SUBB A,#02H MOV R1,A SUBB A,#8BH MOV B,#04H MUL AB MOV R0,A MOV A,#0C8H SUBB A,R0 CLR C MOV R2,A AJMP HUIGUILUEGUO: MOV R0,#00HXUNHUAN:SETB P3.2 ACALL DELAY INC R0 CLR P3.2 ACALL DELAY CJNE R0,#07H,XUNHUAN R

15、ETMAP:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDELAY: NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP RETEND四、实验心得:通过这次课程设计,我对ADC0832的结构有了全面的认识,也对运用汇编语言编程的能力和整体掌握有了大幅度的提升。而此次课设对我最大的提高在于对未知知识的搜集、掌握和运用过程。由于之前帮助老师焊过板子,所以我们就先于其他人知道了各种转换电路的元器件,如温度传感器是输出电流的

16、,A/D转换是用ADC0832的,他们之间需要用10k电阻作相应转换。最关键的就在于对ADC0832的掌握。因为单片机课上主要讲授了ADC0809,所以我们上网查到相关芯片的资料,得知AD0832的数字量输出与AD0809的并行输出不同,是串行输出的,所以应该将其输出量在P3.1口输入到单片机。而且它的选口、输输出都要在外部输入的时钟下降沿的时候读写,时钟信号还需要外部给定,所以它的CLK口要与P3.2口相连。ADC0832在数据传输前要在Din中输入起停位和配置位,以设定ADC0832的工作模式,这三位数据也可通过移位输入。由于ADC0832的输入在CH0口,输出为单端输出,所以配置位为10

17、(B)。有了总体思路后我们开始着手分块编写程序,编译无误后就到实验室进行了实验仿真。我们的实验还只停留在仿真头试验阶段,没有真正的将程序烧入单片机,所以还是有点遗憾的。不管之前怎样全面思考,实验过程中还是会出现意想不到的问题。实验过程中AD590输出的电流变化范围没有设计的那么大,即使将1k电位器调到最大也不能将显示的室温调至准确。所以我们对程序进行了进一步修改,将输入的数值做了一定比例的放大,并做了一些误差调整,最终实现了室温时显示21-23度,用电烙铁烫AD590之后最大显示数值度能超过100(即在99.99之后又从0.00开始显示),最终做出的温度计量程为0到100左右。在实验调试过程中,我们的程序出现了一个小bug,就是在温度到60度以上的时候第三个显像管就自动灭掉,到80度以上之后又会恢复显示。一开始我们都想不明白,但之后终于想清楚了:是以A作为字位选择的时候超过了9,字形表就查不到,自然就显示不出来了。之后我们将字形表增加成三个0-9循环的形式,成功解决了这一问题,我们也感到很欣慰。总的来说,这样的课设总是比较有趣,富有挑战性而又不枯燥,非常吸引人,对我个人来说试一次绝佳的锻炼机会,既能进一步巩固专业知识,增强专业基础,又能提高动手能力,使自己对实验调试的方法更加熟练。如果以后还能有机会接触此类实验的话,我一定会倍加珍惜的。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1