(物联网)智能家居远程控制系统源程序最全版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(物联网)智能家居远程控制系统源程序
智能家居远程控制系统刘庆宇
;*****************************************************
;Filename:BSHB_1_0_2.ASM
;MCU:AT89S52OSC:6.0000MHz
;IC:MT8870ISD4002LM38674LS04ULN280324C02
;Display:LED*4
;Buildby:LiuQingYu
;Vision:V1.0.2
;Date:2008-06-13
;********************************************************
;功能:利用电话线路,远程控制4组继电器的通断,控制电饭煲、电;暖风等家用电器。可以设定延时通断。恢复出厂设置时按住设
;置按键按复位键即可恢复默认密码123456
;默认开关状态为:关,延时为:无
;
;如需改变等待振铃次数,请搜索“振铃检测程序”并进行修改。
;
;
;寄存器组使用:
;00:主程序
;01:显示子程序
;******************************************
;输入输出引脚定义
;******************************************
;MT8870:数据P0.0~P0.3
MT_INEQUP1
;STD____INT0
;ISD4002:
;ISDINT____INT1
MOSIBITP0.4
SSBITP0.5
SCLKBITP0.6
;HD7279:
DATBITP2.4
CSBITP3.5
CLKBITP3.6
;24C02:
SCLBITP1.6
SDABITP1.7
;继电器(摘机电路):
JDQKBITP1.4;低电平有效
;继电器1(控制高压)
JDQ0_DFBBITP0.0;电饭煲
JDQ1_DNFBITP0.1;电暖风
JDQ2_KTBITP0.2;空调
JDQ3_RSHBITP0.3;电热水器
;延时指示灯:(低电平有效)
LED0BITP2.0
LED1BITP2.1
LED2BITP2.2
LED3BITP2.3
;振铃检测
ZHENLJCBITP1.5
HUIFUBITP0.7;恢复出厂设置按键,默认密码123456,默认开关状态为:关,延时为:无;0=恢复出厂设置1=不恢复
;使用时按住此按键按复位键即可
;******************************************
;变量定义
;******************************************
;工作状态寄存(00-07)
GZZHTEQU20H
YSH0_KGBIT00H;延时状态,1=开启0=关闭
YSH1_KGBIT01H
YSH2_KGBIT02H
YSH3_KGBIT03H
MIMABIT04H;GZZHT.1密码状态,是否已经输入错误一次1=是0=否
STDBIT05H;有新数据输入1=有0=无
XINMIMABIT06H;新密码校验位,校验两次输入密码是否一致1=不一致0=一致
ZHL6CBIT07H;振铃次数已够,可以摘机1=可以0=不可以
;工作状态寄存2(08-0F)
GZZHT2EQU21H;位寻址寄存21H;
NOINPUTBIT08H;10秒没有新数据输入,自动挂机。1=可以挂机0=不可以
IS15SBIT09H;
DEC_ONBIT0AH;是否显示小数点:1=显示0=不显示
ISDINTBIT0BH;4002中断置位标志
OUT_PLAYBIT0CH;从播放进程中终止标志1=跳过后面的语音提示
;JDQ0_YSHBIT0AH;继电器延时状态1=开0=关
;JDQ1_YSHBIT0BH
;JDQ2_YSHBIT0CH
;JDQ3_YSHBIT0DH
;YANSHIBIT05H;GZZHT.2延时1=开启0=关闭
;YANSHIKGBIT06H;GZZHT.3延时状态1=延时开0=延时关
;YSH_OKBIT0BH;延时数据已准备好,可以写入1=可以0=不可以
M1EQU22H;密码寄存(1---6)
M2EQU23H
M3EQU24H
M4EQU25H
M5EQU26H
M6EQU27H
DINGSHIEQU28H;定时时间临时存储
DATA_INEQU29H;HD7279输入输出缓存
DATA_OUTEQU2AH
PLAY_ADDEQU2BH
BAK_A_T1EQU2CH
YSH0_TMEQU30H;延时时间寄存
YSH1_TMEQU31H
YSH2_TMEQU32H
YSH3_TMEQU33H
OUT_BWEQU34H;延时数据输出临时存储(用于显示)
OUT_SHWEQU35H
OUT_GWEQU36H
MIMAJSHEQU37H;【密码计数】对输入的密码个数进行计数
;ZHENLINGEQU31H;【振铃计数】对振铃次数进行计数
;TIMEMOODEQU29H;定时器模式:03=关,80=4096Hz,81=64Hz,82=1Hz,83=1/60Hz MTEMPEQU38H;记录密码输入错误次数
TEMPEQU39H
;第一次输入新密码临时存储(3AH~3FH)
MT1EQU3FH
T0_TMPEQU40H;T0临时存储,每隔0.0005秒加1
T0_TMP_SEQU41H;T0临时存储,每隔0.1S减1
T0_TMP_MEQU42H;T0临时存储,每隔0.5S减1
BAK_AEQU43H;中断期间A的备份
BAK_R1EQU44H;
BAK_RS1EQU45H
BAK_RS0EQU46H
BAK_A_SOUNDEQU47H
BAK_DPHEQU48H
BAK_DPLEQU49H
;延时数据临时存储
YSH_BWEQU4AH
YSH_SHWEQU4BH
YSH_GWEQU4CH
ADDRESSLEQU4DH;ISD4002放音地址低位
PANDAHEQU4EH;ISD4002放音地址高位
TEMP2EQU4FH;密码临时存储
TEMP3EQU50H;T1中断检测临时存储
TIMEEQU51H;倒计时定时时间临时存储,长度1字节
DISP_CHTEQU52H;更换显示继电器倒计时时间计数
DISP_CHEQU53H;显示开关指示(1-4)
YSH0_KG_1EQU54H;延时状态,1=开启0=关闭
YSH1_KG_1EQU55H
YSH2_KG_1EQU56H
YSH3_KG_1EQU57H