资源描述:
《智能插座程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ORG0000HLJMPMAINORG000BHLJMPTIMEORG1000HHOUR1EQU10hHOUR2EQU12hMIN1EQU14hMIN2EQU16hSEC1EQu18HCOUNTEQU20HNUM1EQU22HNUM2EQU24HLL4EQU26Hs1bitP1.0s2bitP1.1s3bitP1.2s4bitP1.3A1EQU36HA2EQU38HB1EQU40HB2EQU42HWELAbitP1.6DULAbitP1.7C1EQU48HC2EQU50HD1EQU52HD2EQU54HF1EQ
2、U56HE1EQU58HTIMEEPROEQU60HMAIN:MOVSP,#50H;SP初始化MOVP3,#0FFH;端口初始化START:MOVHOUR1,#00H;初始化的时间变量MOVMIN1,#00HMOVSEC1,#00HMOVHOUR2,#01H;初始化定时变量MOVMIN2,#00HMOVCOUNT,#00H;初始化计时变量MOVNUM1,#00H;初始化按键计数变量MOVNUM2,#00HMOVTMOD,#01H;16位计数器MOVTH0,#0D8H;赋初值MOVTL0,#0EFHSETBET0
3、;中断允许SETBEASETBTR0;启动T0LOOP:MOVA,NUM2JNZLOOP1;A不为0时转移LCALLDISPLAY1;显示当前时间LCALLKEYTIME;调用时间调整子程序LCALLSETTIME;调用定时设置子程序LJMPLOOPLOOP1:LCALLDISPLAY2;显示定时时间LCALLKEYTIME;调用时间调整子程序LCALLSETTIME;调用定时设置子程序LJMPLOOP;***************SETTIMEPROGRAM************SETTIME:;定时设置
4、子程序LL1:JBS2,LL3;P1.1=1时转移LCALLDELAY5;延时5mSMSTOP1:JBS2,LL3;P1.1=0时转移MOVC,S2JNCMSTOP1;P1.1=0时转移INCNUM2;按键计数变量加1MOVA,NUM2CJNEA,#1H,LL2;判断按键计数是否为1CLRTR0;定时器中断关闭LL2:CJNEA,#3,LL;判断按键计数是否为3MOVNUM2,#0;按键计数变量清0SETBTR0;定时器中断打开LL:LCALLDISPLAY2;显示定时时间LL3:MOVA,NUM2;A为0时转
5、移JZLL5JBS3,KK2;P1.2=1时转移LCALLDELAY5;延时5MSKK1:JBS3,KK2;P1.2=1时转移MOVC,S3JNCKK1;P1.2=0时转移MOVA,NUM2CJNEA,#1,MM1;判断按键计数是否为1INCHOUR2;小时定时变量加1MOVA,HOUR2CJNEA,#24,MM1;判断小时定时变量是否为24MOVHOUR2,#0;小时定时变量为24则复位0LCALLDISPLAY2;显示定时时间MM1:LCALLDISPLAY2;显示定时时间MOVA,NUM2CJNEA,#2
6、,kk2;判断按键计数是否为2INCMIN2MOVA,MIN2CJNEA,#60,KK2;分钟定时变量是否为60MOVMIN2,#0;分钟定时变量为60复位0LCALLDISPLAY2;显示定时时间KK2:LCALLDISPLAY2JBS4,LL5;P1.3=1时转移LCALLDELAY5;延时5MSKK3:JBS4,LL5;P1.3=1时转移MOVC,S4JNCKK3;P1.3=0时转移MOVA,NUM2CJNEA,#1,MM2;判断按键计数是否为1DECHOUR2;小时定时变量减1MOVA,HOUR2CJN
7、EA,#0,MM2MOVHOUR2,#24LCALLDISPLAY2MM2:LCALLDISPLAY2MOVA,NUM2CJNEA,#2,LL5;判断按键计数是否为2DECMIN2MOVA,MIN2CJNEA,#0,LL5MOVMIN2,#60;显示定时时间LL5:LCALLDISPLAY2RET;***************KEYTIMEPROGRAM************KEYTIME:;时间调整子程序L1:JBS2,L3;P1.0=1时转移LCALLDELAY5;延时5MSMSTOP2:JBS2,L3
8、;P1.0=1时转移MOVC,S2JNCMSTOP2;P1.0=0时转移INCNUM1MOVA,NUM1CJNEA,#1,L2;判断按键计数是否为1CLRTR0;定时器中断关闭L2:CJNEA,#4,L3;判断按键计数是否为4MOVNUM1,#0SETBTR0;定时器中断打开L3:MOVA,NUM1JNZFF;A不为0时转移LJMPL5FF:JBS3,K2;P1.2=1时转移LCALL