已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
专业课程实习应用单片机设计智能温度采集与控制系统 学 院:机械控制与工程学院 专业名称:机械设计制造及其自动化班 级:机械08-3班小组成员:指导教师:代宣军、孙宝富 完成日期:2011年12月25日一、目标分析以及系统总体方案的确定题目要求是应用单片机设计智能温度采集和控制,以及温度每变化一度,显示数据要更新一次。由此可知设计的内容是温度采集显示控制系统,控制对象是温度。温度控制在日常生活及工业领域应用相当广泛,比如温室、水池、发酵缸、电源等场所的温度控制。而以往温度控制是由人工完成的而且不够重视。其实在很多场所温度都需要实时监控以防止发生意外,针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度控制系统,它应用广泛,功能强大,小巧美观,便于携带,是一款既实用又廉价的控制系统。本设计是对温度进行实时监测与控制,设计的温度控制系统实现了基本的温度控制功能:当温度低于设定下限温度时,系统自动启动加热继电器加温,使温度上升,同时绿灯亮。当温度上升到下限温度以上时,停止加温;当温度高于设定上限温度时,系统自动启动风扇降温,使温度下降,同时红灯亮。当温度下降到上限温度以下时,停止降温。温度在上下限温度之间时,执行机构不执行。一个四位数码管即时显示温度,温度每变化一度数码管数据就更新一次。经过分析根据测温电路的不同可以得到以下两种设计方案:方案一:测温电路使用热敏电阻之类的器件利用其感温效应,将被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,然后在显示电路上将被测温度显示出来。这种设计需要用到A/D转换电路,感温电路比较麻烦。方案二:考虑使用温度传感器。结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现。所以本设计采用方案二。系统的总体控制方案如下图所示:它由三部分组成:1)控制部分主芯片采用单片机AT89S52;2)显示部分采用4位LED数码管以动态扫描方式实现温度显示;3)温度采集部分采用DS18B20温度传感器。 1-1系统的总体控制方案二、温度采集部分的选择温度采集部分选用DS18B20。DS18B20温度传感器是美国DALLS半导体公司推出的一种改进型智能温度传感器,与传统的热敏电阻测温元件相比,它能直接读出被测温度。这一部分主要完成对温度信号的采集和转换工作,由DS18B20数字温度传感器及其单片机的接口部分组成。数字温度传感器DS18B20把采集到的温度通过数据引脚传到单片机的P1.0口,单片机接受温度并存储。(1) DS18B20的性能特点如下:1) 独特的单线接口仅需要一个端口引脚进行通信;2) 多个DS18B20可以并联在唯一的三线上,实现多点组网功能;3) 无须外部器件;4) 可通过数据线供电,电压范围为3.0-5.5V;5) 零待机功耗;6) 温度以3位数字显示;7) 用户可定义报警设置;8) 报警搜索命令识别并标志超过限定温度(温度报警条件)的器件;9) 负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。(2) DS18B20的内部结构 DS18B20采用3脚PR-35封装,如图2-1所示;DS18B20的内部结构,如图2-2所示。2-1 DS18B20封装2-2 DS18B20的内部结构2-1DS18B20封装的引脚定义:1)DQ为数字信号输入/输出端2)GND为电源地3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)2-2DS18B20内部结构主要由四部分组成:1)64位光刻ROM。开始8位的是产品类型的编码,接着是每个器件的唯一的序号,共有48位,最后8位是前56位的CRC校验码,这也是DS18B20可以采用一线进行通信的原因。2)非挥发的温度报警触发器TH和TL,可通过软件写入用户报警上下限值。3)高速暂存存储,可以设置DS18B20温度转换的精度。4)CRC的产生(3) DS18B20的工作原理 DS18B20工作时序根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:(1)每次读写之前都必须要对DS18B20进行复位; (2)复位成功后发送一条ROM指令;(3)最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主机CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待15-60微秒左右后发出60-240微秒的存在低脉冲,主CPU收到此信号表示复位成功,其工作时序包括初始时序、写时序和读时序,具体工作方法如图2-3、2-4、2-5所示。1)初始化时序图2-3 初始化时序 总线上的所有传输过程都是以初始化开始的,主机响应应答脉冲。应答脉冲使主机知道,总线上有从机设备,且准备就绪。主机输出低电平,保持低电平时间至少480us,已产生复位脉冲。接着主机释放总线,4.7K 上拉电阻将总线拉高,延时15-60us,并进入接受模式,以产生低电平应答脉冲,若为低电平,再延时60-240us2) 写时序图2-4写时序写时序包括写0时序和写1时序。所有写时序至少需要60us,且在2次独立写时序之间至少需要1us的恢复时间,都是以总线拉低开始。写1时序,主机输出低电平,延时2us,然后释放总线,延时60us。写0时序,主机输出低电平,延时60us,然后释放总线,延时2us。3) 读时序图2-5读时序总线器件仅在主机发出读时序时才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时序,以便从机能够传输数据。所有读时序至少需要60us,且在2次独立写时序之间至少需要1us的恢复时间。每次读时序都由主机发起,至少拉低总线1us。主机在读时序期间必须释放总线,并且在时序起始后的15us之内采样总线状态。主机输出低电平时延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后延时50us。三、显示电路的选择显示电路采用4位一体共阴极LED数码管,从P0口送数,P2口扫描。四、单片机系统的设计(1)硬件设计1)晶振电路单片机XTAL1,XTAL2分别接30PF的电容,中间再并个12MHz的晶振,形成单片机的晶振电路。如下图:2)复位电路3)EA引脚接VCC 复位后,首先执行片内程序存储器的程序,当PC值超过内部程序存储器空间时,后面的自动转到外部空间取指令执行。4)P1.5,P1.6,P1.7引脚接下载器电路,如下图所示:电路中加个电容,用于防止掉电保护。5)P3.5,P3.6,P3.7分别接按钮S1,S2,S3。如下图所示:S1按钮用于手动操作进入上下限温度设置界面;S2按钮用于上限温度设置;S3按钮用于下限温度设置。6)P1.1,P1.2引脚用于接警报指示灯。如下图所示: P1.1用于接绿色指示灯,表示温度低于下限温度,加热执行机构开始工作,直到绿灯熄灭。P1.2用于接红色指示灯,表示温度高于上限温度,风扇执行机构开始工作,直到红灯熄灭。由于各种原因,执行机构略,仅用红绿灯进行警报。7)P1.0接温度传感器电路,如下图:8)P0接口接8个820上拉电阻,同时分别接四位一体LED灯的a,b,c,d,e,f,g,dp引脚。具体接法见原理图。9)P2接口中P2.0、P2.1、P2.2、P2.3分别接到显示电路的4.7K电阻上,P2.5接蜂鸣器电路,其它悬空。具体接法见原理图。10)VCC接电源,VSS接地。11)硬件设计的原理图如下:12)系统的PCB印刷电路板图如下:(2)软件设计1)软件设计的相关流程图 主程序流程图 温度显示子程序 初始化上限温度设置 初始化下限温度设置 温度设置 下限值设置 上限值设置 温度处理子程序 报警程序温度转换2)软件设计的程序ORG 0000HLJMP MAINORG 000BHLJMP ZD_SUBORG 0100HN_TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,40HT00 EQU 40H ;个位T01 EQU 41HT02 EQU 42HT03 EQU 43HEXA EQU 50H ;上限个位EXB EQU 51HEXC EQU 52HEXD EQU 53HEI0 EQU 54H ;下限个位EI1 EQU 55HEI2 EQU 56HEI3 EQU 57HSEX EQU 58H ;上限数SEI EQU 59H ;下限数MAX EQU 5AH ;最大上限温度值MIN EQU 5BH ;最小下限温度值TEL EQU 60H ;温度低位TEH EQU 70H ;温度高位TELC EQU 72HTEHC EQU 73HSSET BIT 00H UP BIT 01H ;上限加DOWN BIT 02H ;下限加D1S BIT 03HFA BIT 04HD1820 BIT P1.0MAIN:MOV SP,#80H ;系统程序初始化 MOV P0,#00H MOV P1,#0FFH MOV P2,#0FFH MOV A,#00H MOV T00,A MOV T01,A MOV T02,A MOV T03,A MOV MAX,#01111101B MOV MIN,#11001001B MOV SEX,#01111101B MOV SEI,#11001001B SETB SSET SETB UP SETB DOWN CLR D1S CLR FA MOV R7,#20 MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#3CH MOV IE,#82H SETB TR0MLOOP: LCALL DISP_SUB ;调用温度显示子程序 LCALL KEY_SUB ;调用键盘扫描子程序 JB SSET,MNEST0 ;设置键按下时,即SSET为0转移,否则顺序执行 LCALL TS_SUB ;调用温度设置子程序MNEST0: JNB FA,MNEXT1 ;调用温度上下限设置键子程序 JNB D1S,MLOOP ;不是1S转移,按键去抖动法 CLR D1S LCALL RT_SUB ;调用读温度子程序 LCALL BJ_SUB ;调用报警子程序 LCALL TZS_SUB ;调用温度计算处理子程序MNEXT1: SETB FA LCALL ZH_SUB ;调用温度转变子程序 LJMP MLOOP TZS_SUB:MOV A, THE ;温度计算处理子程序 ANL A,#80H JZ TZS1 CLR C MOV A, TEL CPL A ADD A,#01H MOV TEL,A MOV A, TEH CPL A ADDC A,#00H MOV TEH,A MOV T03,#0BH SJMP TZS2TZS1:MOV T03,#0AHTZS2: MOV A,TEL ANL A,#0F0H SWAP A MOV TEL,A MOV A,TEH ANL A,#0FH SWAP A ORL A,TEL MOV B,#64H DIV AB MOV T02,A MOV A,#0AH XCH A,B DIV AB MOV T01,A MOV T00,BTZRET:RETZH_SUB: ;温度转变子程序 LCALL RST_SUB ;调用DS18B20复位程序 MOV A,#0CCH ;发跳过ROM命令 LCALL WRITE_SUB ;调用写一个字节程序 MOV A,#44H ;发温度转变命令 LCALL WRITE_SUB ;写命令字 NOP RETRT_SUB: ;读温度子程序LCALL RST_SUB ;复位DS18B20 MOV A,#0CCH ;发跳过ROM命令 LCALL WRITE_SUB ;写命令字 MOV A,#0BEH ;发读ROM命令 LCALL WRITE_SUB ;写命令字RT1:LCALL READ8_SUB ;调用读DS18B20RAM内容 NOP NOP LCALL RST_SUB MOV A,#0CCH LCALL WRITE_SUB MOV A,#0BEH LCALL WRITE_SUB LCALL READ16_SUBRTRET:RETREAD8_SUB: ;读DS18B20RAM内容 CLR EA SETB D1820 MOV R6,#8 RE1:CLR D1820 MOV R4,#2 NOP SETB D1820 RE2:DJNZ R4,RE2 MOV C,D1820 RRC A MOV R5,#32 RE3:DJNZ R5,RE3 DJNZ R6,RE1 MOV TEL,A SETB D1820 SETB EA RETREAD16_SUB: CLR EA SETB D1820 MOV R6,#16 RE4:CLR D1820 MOV R4,#2 NOP SETB D1820 RE5:DJNZ R4,RE5 MOV C,D1820 RRC A MOV R5,#32 RE6:DJNZ R5,RE6 DJNZ R6,RE4 MOV TEH,A SETB D1820 SETB EA RETJCRC_SUB: PUSH ACC MOV R6,#08HCRC1:XRL A,B RRC A MOV A,B JNC CRC2 XRL A,#18HCRC2:RRC A MOV B,A POP ACC RR A PUSH ACC DJNZ R6,CRC1 POP ACC RETWRITE_SUB: ;写一个字节程序 CLR EA MOV R3,#8WRLOOP1:SETB D1820 MOV R4,#8 RRC A CLR D1820WRLOOP2:DJNZ R4,WRLOOP2 MOV D1820,C MOV R4,#32HWRLOOP3:DJNZ R4,WRLOOP3 DJNZ R3,WRLOOP1 SETB D1820 SETB EA RETRST_SUB: ;DS18B20复位程序 CLR EA RST0:CLR D1820 MOV R2,#200 RST1:CLR D1820 DJNZ R2,RST1 SETB D1820 MOV R2,#32 RST4:DJNZ R2,RST4 CLR C JB D1820,RST0 MOV R6,#80 RST5:JB D1820,RST3 DJNZ R6,RST5 LJMP RST0 RST3:MOV R2,#242 RST2:DJNZ R2,RST2 SETB EA RETDISP_SUB: ;温度显示子程序 PUSH ACC MOV DPTR,#N_TAB MOV A,T02 CJNE A,#0,DISP_3 MOV A,T01 CJNE A,#0,DISP_20 MOV T01,T03 MOV T02,#0AH MOV T03,#0AH LJMP DISP_3DISP_20:MOV T02,T03 MOV T03,#0AHDISP_3:MOV A,T03 MOVC A,A+DPTR MOV P0,A CLR P2.0 SETB P2.1 SETB P2.2 SETB P2.3 LCALL DEL_SUB LCALL DEL_SUBDISP_2:MOV A,T02 MOVC A,A+DPTR MOV P0,A SETB P2.0 CLR P2.1 SETB P2.2 SETB P2.3 LCALL DEL_SUB LCALL DEL_SUBDISP_1:MOV A,T01 ;十位显示程序 MOVC A,A+DPTR MOV P0,A SETB P2.0 SETB P2.1 CLR P2.2 SETB P2.3 LCALL DEL_SUB LCALL DEL_SUBDISP_0:MOV A,T00 ;个位显示程序 MOVC A,A+DPTR MOV P0,A SETB P2.0 SETB P2.1 SETB P2.2 CLR P2.3 LCALL DEL_SUB LCALL DEL_SUB POP ACC RETZD_SUB: MOV TL0,#0B0H MOV TH0,#3CH DJNZ R7,DNEXT MOV R7,#20 SETB D1SDNEXT: RETIDEL_SUB: SETB RS0 MOV R5,#2DEL1: MOV R4,#248DEL2: DJNZ R4,DEL2 DJNZ R5,DEL1 CLR RS0 RETBJ_SUB: ;报警子程序 MOV A,TEH PUSH ACC MOV A,TEL PUSH ACC MOV A,TEH ANL A,#80H JZ BJ1 MOV A,TEH ANL A,#00000111B MOV TEH,ABJ1: MOV A,TEH ANL A,#00001111B SWAP A MOV TEH,A MOV A,TEL ANL A,#0F0H SWAP A ORL A,TEH MOV TEH,A CJNE A,SEX,BJ2BJ2:JC BJ6 CLR P1.2BJ3: CJNE A,SEI,BJ5 LJMP BJ6BJ5: JNC BJ6 CLR P1.1BJ4:CLR P2.5 LJMP BJRETBJ6: SETB P1.1 SETB P1.2 SETB P2.5BJRET: POP ACC MOV TEL,A POP ACC MOV TEH,A RETKEY_SUB:SETB P3.5;键盘扫描子程序 SETB P3.6 SETB P3.7 SETB SSET SETB UP SETB DOWN JB P3.5,KEY_0 MOV R6,#10D10: LCALL DEL_SUB DJNZ R6,D10 JB P3.5,KEY_0 JNB P3.5,$ CLR SSETKEY_0: JB P3.6,KEY_1 MOV R6,#10D11: LCALL DEL_SUB DJNZ R6,D11 JB P3.6,KEY_1 CLR UPKEY_1: JB P3.7,KEY_2 MOV R6,#10D12: LCALL DEL_SUB DJNZ R6,D12 CLR DOWNKEY_2: RETSEX_SUB: LCALL KEY_SUB JB UP,SEX_1 MOV A,SEX CJNE A,MAX,SEX_0 NOP LJMP SEX_1SEX_0: INC SEX LJMP SEX_3SEX_1: JB DOWN,SEX_3 MOV A,SEX CJNE A,SEI,SEX_2 NOP LJMP SEX_3SEX_2: DEC SEXSEX_3: MOV A,SEX JNB ACC.7,SEX_4 MOV T03,#0BH CPL A INC A LJMP SEX_5SEX_4: MOV T03,#0AHSEX_5: MOV B,#64H DIV AB MOV T02,A MOV A,B MOV B,#0AH DIV AB MOV T01,A MOV T00,B RETSEI_SUB: LCALL KEY_SUB JB UP,SEI_1 MOV A,SEI CJNE A,SEX,SEI_0 NOP LJMP SEI_1SEI_0: INC SEI LJMP SEI_3SEI_1: JB
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026秋小学体育北京版(新教材)三年级全一册每课教学设计附目录
- 2026中国智能智能平衡车行业市场供需分析及投资评估规划分析研究报告
- 2026智能建筑技术集成应用及市场需求与政策环境分析报告
- 2026中国过程可视化软件行业技术突破与市场应用前景
- 2026中国跨境电商平台运营模式比较及市场拓展策略报告
- ISO 13485 2016 中文版 医疗器械质量管理体系法规要求
- 2026年河北经贸大学公共课《思想道德基础与法律修养》科目期末试卷A(有答案)
- 2026全国执业兽医资格考试(兽医全科类-临床科目)历年参考题库含答案详解
- 2026全国同等学力申硕考试(计算机)历年参考题库含答案详解
- 2026保险高管-中介类考试历年参考题库含答案详解
- 光伏发电购买合同范本
- GB/T 14992-2025高温合金和金属间化合物牌号及化学成分
- AGV叉车安全培训课件
- 2025内蒙古通辽扎旗能投集团敦德诺尔露天煤矿招聘人员1人实施考试参考题库附答案解析
- 绵阳中科绵投环境服务有限公司绵阳市餐厨废弃物资源化利用和无害化处理扩建项目(重新报批)环评报告
- 《幼儿营养与膳食管理》课件-【第4章】婴幼儿膳食的搭配制作
- 居间协议格式(2025年版)
- 门诊诊断培训班
- 范里安微观经济学现代观点讲义
- 地质灾害调查与防治基础知识单选题100道及答案
- 《混凝土外加剂应用技术规程》
评论
0/150
提交评论