77范文网 - 专业文章范例文档资料分享平台

基于单片机的智能温控风扇(5)

来源:网络收集 时间:2019-04-09 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

附录二 源程序

;******************************************************************** ;精准温度显示温控自动风扇系统 * ;*说明:

;* 1、K1 → 按第一次进入设定低温动作温度值 TL 状态: ;* 2、K1 → 按第二次进入设定高温动作温度值 TH 状态: ;* 3、K1 → 按第三次显示当前温度值

;* 4、设定过程: K2 →加键, K3 →减键,可快速调

; 5、当实时温度值在TL和TH之间时,开启弱风档;当实时温度低于TL时,关闭

风扇;当实时温度高于TH时,开启大风档。每次设置的TH和TL均被保存在 DS18B20的ROM

内,掉不需重新设置. *

;

;******************************************************************** TIMER_L DATA 23H TIMER_H DATA 24H TIMER_COUN DATA 25H

TEMPL DATA 26H TEMPH DATA 27H TEMP_TH DATA 28H TEMP_TL DATA 29H

TEMPHC DATA 2AH TEMPLC DATA 2BH TEMP_ZH DATA 2CH

BEEP EQU P3.7 DATA_LINE EQU P3.3

C1 EQU P3.4 ;C1控制口,接继电器1 C2 EQU P3.5 ;C2控制口,接继电器2

FLAG1 EQU 20H.0 FLAG2 EQU 20H.1

;-------------------------------------------------

17

K1 EQU P1.4 K2 EQU P1.5 K3 EQU P1.6

;================================================= ORG 0000H JMP MAIN

ORG 000BH AJMP INT_T0

;-------------------------------------------------- MAIN: MOV SP,#30H

MOV TMOD,#01H ;T0,方式1 MOV TIMER_L,#00H ;50ms定时值 MOV TIMER_H,#4CH

MOV TIMER_COUN,#00H ;中断计数 MOV IE,#82H ;EA=1,ET0=1 LCALL READ_E2 MOV 20H,#00H SETB BEEP SETB C1 setb C2

MOV 7FH,#0AH ;熄灭符

CALL RESET ;复位与检测DS18B20 JNB FLAG1,MAIN1 JMP START

MAIN1: CALL RESET JB FLAG1,START LCALL BEEP_BL JMP MAIN1 START:

MOV A,#0CCH ; 跳过ROM匹配 CALL WRITE

MOV A,#044H ; 发出温度转换命令

18

CALL WRITE

CALL RESET

MOV A,#0CCH ; 跳过ROM匹配 CALL WRITE

MOV A,#0BEH ; 发出读温度命令 CALL WRITE

CALL READ ;读温度数据 CALL CONVTEMP CALL DISPBCD CALL DISP1 CALL SCANKEY LCALL TEMP_COMP JMP MAIN1

;==================================================== ;功能键扫描子程序

;==================================================== SCANKEY:

MOV P1,#0F0H JB K1,SCAN_K2 CALL BEEP_BL SCAN_K1: CALL ALERT_TL CALL ALERT_PLAY JB K1,SCAN_K1 CALL BEEP_BL SCAN_K11: CALL ALERT_TH CALL ALERT_PLAY JB K1,SCAN_K11 CALL BEEP_BL SCAN_K2: JB K2,SCAN_K3 CALL BEEP_BL SCAN_K3: JB K3,SCAN_END CALL BEEP_BL LCALL RESET_ALERT

19

LCALL RE_18B20 LCALL WRITE_E2 SCAN_END: RET

;================================================ ;设置动作温度值TL,TH

;================================================ RESET_ALERT:

CALL ALERT_TL CALL ALERT_PLAY

JNB K3,$ ;K3 SETB TR0 RESET_TL:

CALL ALERT_PLAY JNB FLAG2,R_TL01

mov 75H,7fh ; mov 76H,7fh CALL ALERT_PLAY JMP R_TL02 R_TL01: CALL ALERT_TL

mov 75h,7Eh ; mov 76h,7Dh

CALL ALERT_PLAY R_TL02: JNB K1,K011A JNB K2,K011B JNB K3,RESET_TH JMP RESET_TL K011A:

INC TEMP_TL MOV A,TEMP_TL

CJNE A,#120,K012A ; MOV TEMP_TL,#0 K012A: CALL TL_DEL JMP RESET_TL K011B:

为位移键 消影 送设定值 没有到设定上限值,转20

MOV A,TEMP_TL

CJNE A,#00H,K ;没有到设定下限值,转

MOV TEMP_TL,#120 K: DEC TEMP_TL K012B: CALL TL_DEL JMP RESET_TL

;------------------------------------------------------- RESET_TH:

CALL BEEP_BL JNB K3,$ RESET_TH1:

CALL ALERT_PLAY JNB FLAG2,R_TH01

mov 75H,7fh ;消影 mov 76H,7fh CALL ALERT_PLAY JMP R_TH02 R_TH01: CALL ALERT_TH

mov 75h,7Eh ; mov 76h,7Dh CALL ALERT_PLAY R_TH02: JNB K1,K021A JNB K2,K021B JNB K3,K002 JMP RESET_TH1 K021A:

INC TEMP_TH MOV A,TEMP_TH

CJNE A,#120,K022A ;没有到设定上限值,转 MOV TEMP_TH,#0 K022A: CALL TH_DEL JMP RESET_TH1

21

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于单片机的智能温控风扇(5)在线全文阅读。

基于单片机的智能温控风扇(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/583061.html(转载请注明文章来源)
上一篇:补钠计算
下一篇:凯迪拉克 - 图文
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: