会员注册 | 登录 | 微信快捷登录 支付宝快捷登录 QQ登录 微博登录 | 帮助中心 人人文库renrendoc.com美如初恋!
站内搜索 百度文库

热门搜索: 直缝焊接机 矿井提升机 循环球式转向器图纸 机器人手爪发展史 管道机器人dwg 动平衡试验台设计

基于单片机89C51控制的温度智能控制系统.doc基于单片机89C51控制的温度智能控制系统.doc -- 2 元

宽屏显示 收藏 分享

资源预览需要最新版本的Flash Player支持。
您尚未安装或版本过低,建议您

TEMPER_LEQU41H用于保存读出温度的低8位TEMPER_HEQU40H用于保存读出温度的高8位FLAG1EQU38H是否检测到DS18B20标志位A_BIT1EQU31H数码管个位数存放内存位置B_BIT1EQU32H数码管十位数存放内存位置D_BIT1EQU35H数码管百位数存放内存位置DQEQUP3.230H,31H,32H,33HX个位十位XMOD7MOVSP,60HLCALLGET_TEMPER调用读温度子程序LCALLTEMPCOVLCALLJDQGZLCALLDISPLAY调用数码管显示子程序AJMPMOD7TEMP0INCAAJMPTEMP1TEMPCOVMOVA,TEMPER_L数据处理子程序TEMPCOVMOVB,16DIVABJBB.3,TEMP0TEMP1MOV34H,A将TEMPER_L的高四位右移四位,存入34H中(温度值)MOVA,B将TEMPER_L的低四位X10/16得小数后一位数.MOVB,10MULABMOVB,16DIVABMOV30H,A将小数后一位数.存入30H中MOVA,TEMPER_HTEMPER_H中存放高8位数,权重16MOVB,16MULABADDA,34H34H中存入温度值的整数部分MOVB,10DIVABMOV31H,B个位存入31H中MOVB,10DIVABMOV32H,B十位存入32H中MOVB,10DIVABMOV35H,B百位存入33H中MOVA,TEMPER_HMOV33H,10HJBACC.7,EXIT7MOV33H,00HEXIT7RETINIT_1820这是DS18B20复位初始化子程序SETBDQNOPCLRDQ主机发出延时537微秒的复位低脉冲MOVR1,3TSR1MOVR0,107DJNZR0,DJNZR1,TSR1SETBDQ然后拉高数据线NOPNOPNOPMOVR0,25HTSR2JNBDQ,TSR3等待DS18B20回应DJNZR0,TSR2LJMPTSR4延时TSR3SETBFLAG1置标志位,表示DS1820存在LJMPTSR5TSR4CLRFLAG1清标志位,表示DS1820不存在LJMPTSR7TSR5MOVR0,117TSR6DJNZR0,TSR6时序要求延时一段时间TSR7SETBDQRETGET_TEMPER读出转换后的温度值SETBDQLCALLINIT_1820先复位DS18B20JBFLAG1,TSS2RET判断DS1820是否存在若DS18B20不存在则返回TSS2MOVA,0CCH跳过ROM匹配LCALLWRITE_1820MOVA,44H发出温度转换命令LCALLWRITE_1820LCALLDISPLAY等待AD转换结束,12位的话750微秒LCALLINIT_1820准备读温度前先复位MOVA,0CCH跳过ROM匹配LCALLWRITE_1820MOVA,0BEH发出读温度命令LCALLWRITE_1820LCALLREAD_18200将读出的温度数据保存到35H/36HRET写DS18B20的子程序有具体的时序要求WRITE_1820MOVR2,8一共8位数据CLRCWR1CLRDQMOVR3,6DJNZR3,RRCAMOVDQ,CMOVR3,23DJNZR3,SETBDQNOPDJNZR2,WR1SETBDQRET读DS18B20的程序,从DS18B20中读出两个字节的温度数据READ_18200MOVR4,2将温度高位和低位从DS18B20中读出MOVR1,TEMPER_L低位存入TEMPER_LTEMPER_L,高位存入TEMPER_HRE00MOVR2,8数据一共有8位RE01CLRCSETBDQNOPNOPCLRDQNOPNOPNOPSETBDQMOVR3,9RE10DJNZR3,RE10MOVC,DQMOVR3,23RE20DJNZR3,RE20RRCADJNZR2,RE01MOVR1,ADECR1DJNZR4,RE00RET显示子程序DISPLAYMOVDPTR,TAB指定查表启始地址MOVR0,4DPL1MOVR1,250显示1000次DPLOPMOVA,A_BIT1取个位数MOVCA,ADPTR查个位数的7段代码MOVP1,A送出个位的7段代码CLRP3.7开个位显示ACALLD1MS显示1MSSETBP3.7MOVA,B_BIT1取十位数MOVCA,ADPTR查十位数的7段代码MOVP1,A送出十位的7段代码CLRP3.5开十位显示ACALLD1MS显示1MSSETBP3.5MOVA,D_BIT1取百位数MOVCA,ADPTR查百位数的7段代码MOVP1,A送出百位的7段代码CLRP3.4开百位显示ACALLD1MS显示1MSSETBP3.4MOVP1,00HDJNZR1,DPLOP100次没完循环DJNZR0,DPL14个100次没完循环RETJDQGZMOVR7,34H34H为温度的整数位.MOVA,10这里以10度为例,若高于10度,刚开启继电器SUBBA,R710度减当前温度.JCKAI如果高于10度,则KAISETBP3.3关闭,P3.3接PNP三极管AJMPJDQFHKAICLRP3.3JDQFHRET1MS延时按12MHZ算D1MSMOVR7,0FFHDJNZR7,DJNZR7,RET实验板上的7段数码管0~9数字的共阴显示代码TABDB07DH0DB018H1
编号:201311191447174449    大小:47.50KB    格式:DOC    上传时间:2013-11-19
  【编辑】
2
关 键 词:
教育专区 开题报告 精品文档 基于单片
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

当前资源信息

4.0
 
(2人评价)
浏览:14次
zhaozilong上传于2013-11-19

官方联系方式

客服手机:13961746681   
2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   

相关资源

相关资源

相关搜索

教育专区   开题报告   精品文档   基于单片  
关于我们 - 网站声明 - 网站地图 - 友情链接 - 网站客服客服 - 联系我们
copyright@ 2015-2017 人人文库网网站版权所有
苏ICP备12009002号-5