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

📄 ex5-4.sdi

📁 《单片机原理实用教程——基于Proteus虚拟仿真》一书的配套光盘
💻 SDI
字号:
,,,        ORG  0000H                ;复位入口
0000,02 00 1E,,        LJMP    MAIN              ;转到主程序
,,,        ORG  000BH                ;T0中断入口
000B,02 00 3E,,        LJMP    TT0               ;转到T0中断服务程序
,,,        ORG  0030                 ;主程序入口
001E,75 81 60,MAIN,MAIN:   MOV  SP,#60H              ;设置堆栈指针
0021,75 20 0A,,        MOV  20H,#0AH             ;设置中断次数
0024,75 30 00,,        MOV  30H,#00H             ;时、分、秒单元清0
0027,75 31 00,,        MOV  31H,#00H
002A,75 32 00,,        MOV  32H,#00H
002D,75 89 01,,        MOV  TMOD,#01H            ;设置T0工作方式
0030,75 8C 3C,,        MOV  TH0,#3CH             ;装入T0初值
0033,75 8A B0,,        MOV  TL0,#0B0H
0036,D2 8C,,        SETB TR0                  ;启动T0
0038,D2 AF,,        SETB EA                   ;开中断
003A,D2 A9,,        SETB ET0                  ;允许T0中断
003C,80 FE,,        SJMP $                    ;等待中断
003E,C0 D0,TT0,TT0:    PUSH PSW                  ;保护现场
0040,C0 E0,,        PUSH ACC
0042,75 8C 3C,,        MOV  TH0,#3CH             ;重装T0初值
0045,75 8A B0,,        MOV  TL0,#0B0H
0048,D5 20 33,,        DJNZ 20H,RT               ;1秒定时未到,返回
004B,75 20 0A,,        MOV  20H,#0AH             ;重置中断次数
004E,74 01,,        MOV  A,#01H
0050,25 32,,        ADD  A,32H                ;秒单元加1
0052,D4,,        DA   A                    ;十进制调整
0053,F5 32,,        MOV  32H,A                ;转换为BCD码
0055,B2 90,,        CPL  P1.0
0057,B4 60 24,,        CJNE A,#60H,RT            ;未到60秒,返回
005A,75 32 00,,        MOV  32H,#00H             ;到60秒,秒单元清0
005D,74 01,,        MOV  A,#01H
005F,25 31,,        ADD  A,31H                ;分单元加1
0061,D4,,        DA   A                    ;十进制调整
0062,F5 31,,        MOV  31H,A                ;转换为BCD码
0064,B2 92,,        CPL  P1.2
0066,B4 60 15,,        CJNE A,#60H,RT            ;未到60分,返回
0069,75 31 00,,        MOV  31H,#00H             ;到60分,分单元清0
006C,74 01,,        MOV  A,#01H
006E,25 30,,        ADD  A,30H                ;时单元加1
0070,D4,,        DA   A                    ;十进制调整
0071,F5 30,,        MOV  30H,A                ;转换为BCD码
0073,B2 94,,        CPL  P1.4
0075,B4 24 06,,        CJNE A,#24H,RT            ;未到24小时,返回
0078,75 30 00,,        MOV  30H,#00H             ;到24小时,时单元清0
007B,75 90 00,,        MOV  P1,#00H
007E,D0 E0,RT,RT:     POP  ACC                  ;恢复现场
0080,D0 D0,,        POP  PSW
0082,32,,        RETI                      ;中断返回
000E,,,        END

⌨️ 快捷键说明

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