资源描述:
《灯光喷雾控制器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、EEPROMEQU0A2H ;0A0H为8563地址BITCNTDATA30H ;数据位计数器BYTECNTDATA31H ;发送或接收的字节个数SLVADRDATA32H ;=0A0H为8563地址SUBADRDATA33H ;被控器单元地址RCVDATDATA34H ;接收数据缓冲器首址8563首址XMTDATDATA44H ;发送数据缓冲器首址SDA BITP2.6 ;数据线SCL BITP
2、2.7 ;时钟线B0 BITP0.5B1 BITP0.6B2 BITP0.7CLK BITP3.4DIN BITP3.5ACK BIT73H ORG00H AJMPMAIN ORG013H LJMPT0SUB ORG30HMAIN: MOVIE,#84H ;开外部中断1 MOVIP,#04H ;外部中断1优先 MOVTCON,#00H ;
3、低电平方式 LCALLSTIT ;跳转到启动时钟设置和报警中断子程序 START1:JNBB0DEBUG0 ;查询是否有调整时间按钮按下S0: LCALLDSUB0 ;读出并显示当前时间 AJMPSTART1;----------------------------------------------;读子程序 R: MOVSLVADR,#EEPROM MOVBYTECNT,55H MOVSUBADR
4、,56HMA0:LCALLRCVDATA JB F0,MA0 RET;----------------------------------------------;写子程序W: MOVSLVADR,#EEPROM MOVBYTECNT,57H MOVSUBADR,58H MA1:LCALLSENTBYTE JB F0,MA1 RET ;----------------------------------------
5、------DSUB0:MOV55H,#02H ;读两个时间信息 MOV56H,#03H ;取读时间的首字节地址 LCALLR ;调用读子程序 MOVR7,34H ;将分钟的信息放入R7 MOVR6,35H ;将小时的信息放入R6 LCALLDISPLAY ;调用显示时间子程序 RET;--------------------------------------
6、--------DEBUG0:LCALLDELAY1 ;调用延时子程序,消抖作用 JB B0,START1 ;判断是否为外界干扰 JNBB0,$ ;判断按键是否弹起DEBUG1:JNB B1MINI ;判断调节分钟的按钮是否按下,是则跳到分钟子程序M1:JNB B2HOUR ;判断调节小时的按钮是否按下,是则跳到小时子程序 JNB B0RETU ;判断时间是否调整好,是则跳到返回子程序
7、 LCALLDSUB0 AJMPDEBUG1 RETU:LCALLDELAY1 JB B0,M1 JNBB0,$ AJMPS0 MINI:LCALLDELAY1 ;调用延时子程序,消抖作用 JB B1,M1 ;判断是否为外界干扰 JNBB1,$ ;判断按键是否弹起 CJNER7,#59,MINI0 ;判断分钟是否到59,若没有则跳转到MINI0
8、 MOV R7,#00 ;59后,让分钟归零MIN:MOV 44H,R7 ;将调整后的分钟放入R7 MOV 57H,#02H ;调用写子程序 MOV 58H,#03H LCALLW RET MINI0:INCR7 AJMPMIN HOUR:LCALLDELAY1 ;调用延时子程序,消抖作用 JB B2,M1 ;