




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数字温度计重庆交通大学课 外 实 践 报 告 题 目: 基于单片机数字控温器 姓 名: 罗 杰 专 业: 电子信息工程 班 级: 2011 级 4 班 学 号: 631106020405 指导老师: 王 淑 良 目 录 设计目的- 1设计要求- -1设计方案- 1系统工作原理- 2各部分电路的设计和芯片的结构功能作用- 2单片机程序(c语言程序)- 11设计总结- 20 一、设计目的 1、系统地运用已学的理论知识解决实际问题的能力和查阅资料的能力。培养一定的自学能力和独立分析问题、解决问题的能力,和团队协作能力,能通过独立思考、查阅工具书、参考文献,寻找解决方案。 2、能设计、安装和调试数显温
2、度测试控制系统,并能利用模拟和数字电路和单片机的知识分析和解决设计、安装和调试中遇到的实际问题。 3、能熟练的设计并良好的印制pcb电路板。 4、对温度的控制要求尽量的高效,精确。 二、设计要求1、(1)温度控制范围为30度100度之间;(2)可键盘设置控制温度值,并显示;(3)数字显示水的实际温度;(4)设置温度控制值和检测值之间的误差在1度;2、发挥部分(1)设计温度报警电路;(2)升温或降温在510分钟之内完成;三、设计方案方案:用控制器mcs-51系列单片机和数字传感器ds18b20来进行控制,并用七段数码显示管来显示温度,在程序中来设置温度的上下限,当温度超出上下限时,由单片机发出控
3、制信号,外界控制电路接收信号并作相应的响应来调节温度。此为全控制型,最为简便。 四、系统工作原理1、系统的总体结构图如下: 2、工作原理 首先,由数字温度传感器感受出温度并将其数字信号传递给单片机的接口部分,单片机接收到信号后,对其进行处理(由导入单片机的程序设置处理过程及处理结果),并将处理后的结果通过端口传递给七段数码显示管让其显示出当前的温度值。如果温度高于或者是低于所设置的温度上下限(上下限由程序进行设置),单片机以端口就向蜂鸣器和外接的控制装置发出信号,蜂鸣器接收信号后开始报警,外接控制装置接收信号后分析是上限信号还是下限信号(可调节),分析后控制升温或者是降温。当温度恢复至所控制的
4、范围后,数字温度传感器感受温度后将数字信号传递给单片机,单片机处理后则停止向蜂鸣器和外接的控制装置发信号,蜂鸣器和控制装置就停止动作等待下一次信号的到来。此过程即完成了温度的测量和两点间的温度控制工作,完全自动控制,方便快捷(直流电机的旋转来模拟升温和降温)。 五、各部分电路的设计和芯片的结构功能作用 1、单片机stc89c52rc(1)如上图所示,单片机能正常工作的条件,复位电路,和晶振电路,其中当按下按键开关rest,此时当处于震荡器工作的单片机reset出现连续两个高电平,可使单片机回到初始状态。为了提高系统的抗干扰能力,在电源的一端接上一个小电容。(2)外接晶振引脚xtal1和xtal
5、2xtal1(19脚)和xtal2(18脚):接外部石英晶振的一端,在单片机的内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。2、数字温度传感器ds18b20介绍(1)ds18b20基本介绍ds18b20是美国dallas半导体公司继ds1820之后最新推出的一种改进型智能温度传感器。与传统的热敏电阻相比,他能够直接读出被测温度并且 可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从ds18b20读出的信息或写入ds18b20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总 线,总线本
6、身也可以向所挂接的ds18b20供电,而无需额外电源。因而使用ds18b20可使系统结构更趋简单,可靠性更高。 (2)ds18b20简介(1)独特的单线接口方式:ds18b20与微处理器连接时仅需要一条口线即 可实现微处理器与ds18b20的双向通讯。 (2)在使用中不需要任何外围元件。 (3)可用数据线供电,电压范围: 3.0 5.5 v。 (4)测温范围:-55 125 。固有测温分辨率为0.5 。 (5)通过编程可实现912位的数字读数方式。 (6)用户可自设定非易失性的报警上下限值。 (7)支持多点组网功能,多个ds18b20可以并联在惟一的三线上,实现多点测温。 (8)负压特性,电源
7、极性接反时,温度计不会因发热而烧毁,但不能正常工作。 (3)ds18b20的工作时序 ds18b20的工作时序包括初始化时序、写时序和读时序。(1) 初始化:单片机将数据线的电平拉低480960us后释放,等待1560us, 单总线器件即可输出一持续60240us的低电平(存在脉冲)单片机收到此应答后即可进行操作。(2) 写时序:当主机将数据线的电平从高拉到低时,形成写时序,有“0”和写“1”两种时序。写时序开始后,ds18b20在15us60us期间从数据线上采样。如果采样到低电平,则向ds18b20写“0”;如果采样到高电平,则向ds18b20写“1”。两个独立的时序间至少需要1us的恢复
8、时间(拉高总线电平)。(3) 读时序:当主机从ds18b20读取数时,产生时序。此时,主机将数据线的电平从高拉到低使读时序被初始化。如果此后15us内,主机总线上采样到低电平,则ds18b20读“0”;如果此后15us内,主机在总线上采样到高电平,则ds18b20读“1”。(3)ds18b20的各个引脚与单片机连接图5、七段数码显示管 七段数码显示管用于显示所测量的温度值,如下图所示:此数码管的位选段由p2.0p2.4进行控制选通,段选端则有p1八位口进行控制,利用其动态扫描,来显示四位不同的数字温度。6、温度控制部分和报警蜂鸣器的连接电路 (1)蜂鸣器的工作,当温度高于上限温度或是低于下限温
9、度时,单片机控制器的p0.7口的就输出高低电平的波形而使三极管集电极和积集导通从而让蜂鸣器发出报警的声音。而当温度被控制在一个范围内时,单片机的p0.7口就发停止发出波形,而使蜂鸣器停止报警。 (2)外接温度控制部分,此部分为一个继电器,当温度低于下限温度时,单片机的p2.6口就发出低电平,从而是继电器的控制端通电导通,当继电器导通时,继电器的常闭触点变为常开触点,从而使c和b点连接导通,使加热装置通电,对被加热物体加热,使温度升高。当温度高于上限温度时,单片机的p2.6口就停止发出低电平,三极管关短导致继电器控制端也关断,使常开触点变为常闭触点,c和a之间导通,使外部制冷装置工作从而使温度降
10、低致所规定的范围。7、hk4001继电器s3-5工作原理(1)继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。(2)电磁继电器一般由 电磁铁,衔铁,弹簧片,触点 等组成的,其工作电路由低压控制电路和高压工作电路两部分构成。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消
11、失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。 8、上下限温度调节按钮电路 按钮s13控制上限温度的选择,当按下s13按钮时,数码管上显示上限温度值。按钮s14控制着下限温度的选择,当按下s14时,数码管显示下限温度值。s15为温度上下限设置增加键,s16为上下限温度设置减少键。通过此四个按键可以任意设置上下限温度。 六、单片机程序如下(c语言程序) 温度可控恒
12、温箱程序 /*/ ds18b20的读写程序 最大转化时间750微秒,显示温度-55.0到+99.9度,显示精度 为0.1度,显示采用3位led共阳显示测温值 p1口为段码输入, 晶振为12mhz /*/ #include #include /_nop_();延时函数用 #define uint unsigned int #define uchar unsigned char uint a=250; uint b=200; sbit dq=p30; /温度输入口 sbit p20=p20; sbit p21=p21; sbit p22=p22; sbit p23=p23; sbit p17=p1
13、7; sbit p25=p25; sbit p26=p26; sbit s1=p34; sbit s2=p35; sbit s3=p36; sbit s4=p37; unsigned int h,n=0; unsigned int temp; /*uchar code table=0x40,0xf9,0xa4, 0xb0,0x99,0x92,0x82,0xf8,0x80, 0x90,0x88,0x80,0xc6,0xa1,0x86, 0x8e;*/ /温度小数部分用查表法unsigned char data temp_data2=0x00,0x00; /读出温度暂放unsigned char
14、data display5=0x00,0x00,0x00,0x00,0x00; /显示单元数据,共4个数据和一个运算暂用 /11us延时函数void delay(unsigned int t) for (;t0;t-);/ /延时882usvoid delay882us(void)unsigned char i;for(i=0;i0;x-) for(y=110;y0;y-); /ds18b20复位函数ow_reset(void)char presence=1;while(presence) while(presence) dq=1;_nop_();_nop_();/从高拉倒低dq=0; del
15、ay(50); /550 usdq=1; delay(6); /66 uspresence=dq; /presence=0 复位成功,继续下一步 delay(45); /延时500 us presence=dq; dq=1; /拉高电平 /ds18b20写命令函数/向1-wire 总线上写1个字节void write_byte(unsigned char val) unsigned char i; for(i=8;i0;i-) dq=1;_nop_();_nop_(); /从高拉倒低 dq=0;_nop_();_nop_();_nop_();_nop_();/5 us dq=val&0x01;
16、 /最低位移出 delay(6); /66 us val=val/2; /右移1位 dq=1; delay(1); /ds18b20读1字节函数 /从总线上取1个字节unsigned char read_byte(void)unsigned char i;unsigned char value=0;for(i=8;i0;i-) dq=1;_nop_();_nop_(); value=1; dq=0;_nop_();_nop_();_nop_();_nop_(); /4 us dq=1;_nop_();_nop_();_nop_();_nop_();/4 us if(dq)value|=0x80
17、; delay(6); /66 usdq=1;return(value); /读出温度函数unsigned int read_temp() ow_reset(); /总线复位 delay(200); write_byte(0xcc); /发命令 write_byte(0x44); /发转换命令 ow_reset(); delay(1); write_byte(0xcc); /发命令 write_byte(0xbe); temp_data0=read_byte(); /读温度值的低字节 temp_data1=read_byte(); /读温度值的高字节 temp=temp_data1; temp
18、6348) temp=65536-temp; n=1; display4=temp&0x0f; / 取小数部分的值 temp=temp4; / 取中间八位,即整数部分的值 temp=temp*10+display4; return temp; /返回温度值 /数码管扫描void x8led(unsigned long ddd) unsigned char l11=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x7f; unsigned char xx4=0,0,0,0; xx0=ddd%10; xx2=ddd/10%10; xx1=ddd
19、/100%10; xx3=ddd/1000%10; p20=0; p1=lxx0; delay882us(); p20=1; p21=0; p1=lxx1; delay882us(); p21=1; p22=0; p1=lxx2; p17=0; delay882us(); p22=1; p23=0; p1=lxx3; delay882us(); p23=1; void baojing() beep=beep; delay(40); /主函数void main() p0=0xff; /初始化端口 p2=0xff; for(h=0;h4;h+) displayh=0; ow_reset(); /开机先转换一次 write_byte(0xcc); /skip rom write_byte(0x44); /发转换命令 for(h=0;h=a ) /当上限温度低于下限温度时报警 baojing(); if(tempa) baoj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国航空工业集团庆安校园招聘笔试参考题库附答案解析
- 2025年实验室医学血常规检查与结果分析模拟测试卷答案及解析
- 2025湖北图书档案与文博部校内招聘1人笔试模拟试题及答案解析
- 2025陕西秦川格兰德机床有限公司招聘笔试备考题库及答案解析
- 2025年放射治疗学放疗计划设计模拟试卷答案及解析
- 2025山西阳泉市晋泉水务有限责任公司社会招聘1人笔试备考题库及答案解析
- 2025杭州淳安县总工会公开招聘工会社会工作者2人笔试备考试题及答案解析
- 2025年儿科感染性疾病诊疗综合能力评估模拟考试卷答案及解析
- 节后复工安全生产培训课件
- 绥化市中石化2025秋招笔试模拟题含答案机械与动力工程岗
- 考务资格审核培训
- 广东省佛山禅城区2025~2026学年物理九年级上册开学摸底考试模拟练习卷【附答案】
- 2025四川成都蒲江县国有资产监督管理局县属国有企业招聘管理人员7人考试参考题库及答案解析
- 下载标准版门市房屋租赁合同3篇
- 井下安全用电培训课件
- 校企合作教材开发协议书
- 2025年医院麻醉科服务优化计划
- 校车安全管理操作规范
- Unit2WheredoanimalslivePeriod4课件-四年级上册《英语》(沪教版)
- 2025年秋期人教版3年级上册数学核心素养教案(第4单元)(教学反思有内容+二次备课版)
- 2025年江苏保安员考试题库及答案
评论
0/150
提交评论