⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 5电子钟p1p2.lst

📁 这个是大学的计算机接口实验课上经常用到的原程序
💻 LST
📖 第 1 页 / 共 3 页
字号:

0197 30B5F7          255                        JNB          P3.5,SETOUT      ;是抖动,返回SETOUT再等待
019A C201            256                        CLR          01H              ;清调小时标志
019C C200            257                        CLR          00H              ;清调分标志
019E C202            258                        CLR          02H              ;清闪烁标志
01A0 C28E            259                        CLR          TR1              ;关闭定时器T1
01A2 C2AB            260                        CLR          ET1              ;关定时器T1中断
01A4 D28C            261                        SETB         TR0              ;开启定时器T0
01A6 D2A9            262                        SETB         ET0              ;开定时器T0中断(计时开始)
01A8 02004A          263                        LJMP         START1           ;跳回主程序
01AB 1200C6          264                 SET5:  LCALL    DISPLAY          ;键释放等待时调用显示程序(调小时)
01AE 2170            265                        AJMP     SETHH1           ;防止键按下时无时钟显示
01B0 1200C6          266                 SET7:  LCALL    DISPLAY          ;等待调小时按键时时钟显示用
01B3 2177            267                        AJMP     SET6
01B5 1200C6          268              SETOUT1:  LCALL    DISPLAY          ;退出时钟调整时键释放等待
01B8 2191            269                        AJMP     SETOUT           ;防止键按下时无时钟显示
                     270     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                     271     ;;           p3.6 分钟加1调整程序              ;;
                     272     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
                     273     ;当调分钟时p3.6按键按下时进入此程序
01BA C2A9            274                SET_MM: CLR          ET0            ;关定时器T0中断
01BC C28C            275                        CLR          TR0            ;关闭定时器T0
01BE 7A06            276                        MOV          R2,#06H        ;进入调时间的状态,赋闪烁定时初值
01C0 D2AB            277                        SETB         ET1            ;允许T1中断
01C2 D28E            278                        SETB         TR1            ;开启定时器T1
01C4 30B637          279                 SET2:  JNB          P3.6,SET1      ;p3.6口为0(键未释放),等待
01C7 D200            280                        SETB         00H            ;键释放,分调整闪烁标志置1
01C9 20B637          281                 SET4:  JB           P3.6,SET3      ;等待键按下
01CC 12011B          282                        LCALL        DL05S          ;有键按下,延时0.5秒
01CF 30B612          283                        JNB          P3.6,SETout_m     ;按下时间大于0.5秒转退出程序
01D2 7877            284                        MOV          R0,#77H        ;按下时间小于0.5秒加1分钟操作
01D4 1200AF          285                        LCALL        ADD1           ;调用加1子程序
01D7 EB              286                        MOV          A,R3           ;取调整单元数据
01D8 C3              287                        CLR          C              ;清进位标志
01D9 B46000          288                        CJNE         A,#60H,HHH     ;调整单元数据与60比较
01DC 40EB            289                   HHH: JC           SET4           ;调整单元数据小于60转SET4循环
01DE 1200C1          290                        LCALL        CLR0           ;调整单元数据大于或等于60时清0
01E1 C3              291                        CLR          C              ;清进位标志
01E2 21C9            292                        AJMP         SET4           ;跳转到SET4循环
01E4 30B621          293              SETOUT_m: JNB          P3.6,SETOUT1_m     ;调时退出程序。等待键释放
01E7 1200C6          294                        LCALL        DISPLAY          ;延时削抖
01EA 30B6F7          295                        JNB          P3.6,SETOUT_m      ;是抖动,返回SETOUT再等待
01ED C201            296                        CLR          01H              ;清调小时标志
01EF C200            297                        CLR          00H              ;清调分标志
01F1 C202            298                        CLR          02H              ;清闪烁标志
01F3 C28E            299                        CLR          TR1              ;关闭定时器T1
01F5 C2AB            300                        CLR          ET1              ;关定时器T1中断
01F7 D28C            301                        SETB         TR0              ;开启定时器T0
01F9 D2A9            302                        SETB         ET0              ;开定时器T0中断(计时开始)
01FB 02004A          303                        LJMP         START1           ;跳回主程序
01FE 1200C6          304                 SET1:  LCALL    DISPLAY          ;键释放等待时调用显示程序(调分)
0201 21C4            305                        AJMP     SET2             ;防止键按下时无时钟显示
0203 1200C6          306                 SET3:  LCALL    DISPLAY          ;等待调分按键时时钟显示用
0206 21C9            307                        AJMP     SET4
0208 1200C6          308            SETOUT1_m:  LCALL    DISPLAY          ;退出分钟调整时键释放等待
020B 21E4            309                        AJMP    SETOUT_m           ;防止键按下时无时钟显示
                     310                        END                     ;程序结束
A51 MACRO ASSEMBLER  5电子钟P1P2                                                          04/14/2005 16:27:46 PAGE     6

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

ACC. . . . . . . .  D ADDR   00E0H   A   
ADD1 . . . . . . .  C ADDR   00AFH   A   
ADDHH. . . . . . .  C ADDR   008BH   A   
ADDMM. . . . . . .  C ADDR   007EH   A   
ADDSS. . . . . . .  C ADDR   0073H   A   
CLEARDISP. . . . .  C ADDR   0028H   A   
CLR0 . . . . . . .  C ADDR   00C1H   A   
DISPLAY. . . . . .  C ADDR   00C6H   A   
DL05S. . . . . . .  C ADDR   011BH   A   
DL05S1 . . . . . .  C ADDR   011DH   A   
DL1. . . . . . . .  C ADDR   0106H   A   
DL1MS. . . . . . .  C ADDR   0104H   A   
DL1S . . . . . . .  C ADDR   0114H   A   
DL2. . . . . . . .  C ADDR   0108H   A   
DS20MS . . . . . .  C ADDR   010DH   A   
EA . . . . . . . .  B ADDR   00A8H.7 A   
ENDOUT . . . . . .  C ADDR   00F3H   A   
ET0. . . . . . . .  B ADDR   00A8H.1 A   
ET1. . . . . . . .  B ADDR   00A8H.3 A   
FLASH1 . . . . . .  C ADDR   0147H   A   
FLASH2 . . . . . .  C ADDR   0158H   A   
HHH. . . . . . . .  C ADDR   01DCH   A   
HOUR . . . . . . .  C ADDR   0098H   A   
HOUU . . . . . . .  C ADDR   018AH   A   
INTT0. . . . . . .  C ADDR   005BH   A   
INTT1. . . . . . .  C ADDR   0123H   A   
INTT1OUT . . . . .  C ADDR   0142H   A   
OUTT0. . . . . . .  C ADDR   009CH   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
PLAY . . . . . . .  C ADDR   00CAH   A   
PLAY_1 . . . . . .  C ADDR   00D9H   A   
PLAY_2 . . . . . .  C ADDR   00E0H   A   
PLAY_3 . . . . . .  C ADDR   00E5H   A   
PSW. . . . . . . .  D ADDR   00D0H   A   
SET1 . . . . . . .  C ADDR   01FEH   A   
SET2 . . . . . . .  C ADDR   01C4H   A   
SET3 . . . . . . .  C ADDR   0203H   A   
SET4 . . . . . . .  C ADDR   01C9H   A   
SET5 . . . . . . .  C ADDR   01ABH   A   
SET6 . . . . . . .  C ADDR   0177H   A   
SET7 . . . . . . .  C ADDR   01B0H   A   
SETHH1 . . . . . .  C ADDR   0170H   A   
SETOUT . . . . . .  C ADDR   0191H   A   
SETOUT1. . . . . .  C ADDR   01B5H   A   
SETOUT1_M. . . . .  C ADDR   0208H   A   
SETOUT_M . . . . .  C ADDR   01E4H   A   
SET_H. . . . . . .  C ADDR   0055H   A   
SET_HH . . . . . .  C ADDR   0166H   A   
SET_M. . . . . . .  C ADDR   0058H   A   
SET_MM . . . . . .  C ADDR   01BAH   A   
START. . . . . . .  C ADDR   0024H   A   
START1 . . . . . .  C ADDR   004AH   A   
TAB. . . . . . . .  C ADDR   00F9H   A   
TH0. . . . . . . .  D ADDR   008CH   A   
TH1. . . . . . . .  D ADDR   008DH   A   
TL0. . . . . . . .  D ADDR   008AH   A   
TL1. . . . . . . .  D ADDR   008BH   A   
TMOD . . . . . . .  D ADDR   0089H   A   
A51 MACRO ASSEMBLER  5电子钟P1P2                                                          04/14/2005 16:27:46 PAGE     7

TR0. . . . . . . .  B ADDR   0088H.4 A   
TR1. . . . . . . .  B ADDR   0088H.6 A   


REGISTER BANK(S) USED: 0 


ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -