智能家居远程控制系统刘庆宇;*****************************************************;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.3MT_INEQUP1;STD____INT0;ISD4002:;ISDINT____INT1MOSIBITP0.4SSBITP0.5SCLKBITP0.6;HD7279:DATBITP2.4CSBITP3.5CLKBITP3.6;24C02:SCLBITP1.6SDABITP1.71;继电器(摘机电路):JDQKBITP1.4;低电平有效;继电器1(控制高压)JDQ0_DFBBITP0.0;电饭煲JDQ1_DNFBITP0.1;电暖风JDQ2_KTBITP0.2;空调JDQ3_RSHBITP0.3;电热水器;延时指示灯:(低电平有效)LED0BITP2.0LED1BITP2.1LED2BITP2.2LED3BITP2.3;振铃检测ZHENLJCBITP1.5HUIFUBITP0.7;恢复出厂设置按键,默认密码123456,默认开关状态为:关,延时为:无;0=恢复出厂设置1=不恢复;使用时按住此按键按复位键即可;******************************************;变量定义;******************************************;工作状态寄存(00-07)GZZHTEQU20HYSH0_KGBIT00H;延时状态,1=开启0=关闭YSH1_KGBIT01HYSH2_KGBIT02HYSH3_KGBIT03HMIMABIT04H;GZZHT.1密码状态,是否已经输入错误一次1=是0=否STDBIT05H;有新数据输入1=有0=无XINMIMABIT06H;新密码校验位,校验两次输入密码是否一致1=不一致0=一致ZHL6CBIT07H;振铃次数已够,可以摘机1=可以0=不可以2;工作状态寄存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)M2EQU23HM3EQU24HM4EQU25HM5EQU26HM6EQU27HDINGSHIEQU28H;定时时间临时存储DATA_INEQU29H;HD7279输入输出缓存DATA_OUTEQU2AHPLAY_ADDEQU2BHBAK_A_T1EQU2CHYSH0_TMEQU30H;延时时间寄存YSH1_TMEQU31H3YSH2_TMEQU32HYSH3_TMEQU33HOUT_BWEQU34H;延时数据输出临时存储(用于显示)OUT_SHWEQU35HOUT_GWEQU36HMIMAJSHEQU37H;【密码计数】对输入的密码个数进行计数;ZHENLINGEQU31H;【振铃计数】对振铃次数进行计数;TIMEMOODEQU29H;定时器模式:03=关,80=4096Hz,81=64Hz,82=1Hz,83=1/60HzMTEMPEQU38H;记录密码输入错误次数TEMPEQU39H;第一次输入新密码临时存储(3AH~3FH)MT1EQU3FHT0_TMPEQU40H;T0临时存储,每隔0.0005秒加1T0_TMP_SEQU41H;T0临时存储,每隔0.1S减1T0_TMP_MEQU42H;T0临时存储,每隔0.5S减1BAK_AEQU43H;中断期间A的备份BAK_R1EQU44H;BAK_RS1EQU45HBAK_RS0EQU46HBAK_A_SOUNDEQU47HBAK_DPHEQU48HBAK_DPLEQU49H;延时数据临时存储YSH_BWEQU4AHYSH_SHWEQU4BHYSH_GWEQU4CHADDRESSLEQU4DH;ISD4002放音地址低位PANDAHEQU4EH;ISD4002放音地址高位TEMP2EQU4FH;密码临时存储TEMP3EQU50H;T1中断检测临时存储4TIMEEQU51H;倒计时定时时间临时存储,长度1字节DISP_CHTEQU52H;更换显示继电器倒计时时间计数DISP_CHEQU53H;显示开关指示(1-4)YSH0_KG_1EQU54H;延时状态,1=开启0=关闭YSH1_KG_1EQU55HYSH2_KG_1EQU56HYSH3_KG_1EQU57HSOUND_OUT_BWEQU58H;延时数据输出临时存储(用于剩余时间提示)SOUND_OUT_SHWEQU59HSOUND_OUT_GWEQU5...