📄 ex3-7.lst
字号:
A51 MACRO ASSEMBLER EX3_7 06/23/2007 17:10:40 PAGE 1
MACRO ASSEMBLER A51 V7.09
OBJECT MODULE PLACED IN ex3-7.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE ex3-7.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;--------------程序信息-----------------
2 ;文件名 : ex3-7.asm
3 ;版本 : 1.0
4 ;作者 :
5 ;修改时间 :
6
7 ;--------------程序说明------------------
8 ;CHAP 3.7 实时时钟实例
9
10 ;-----------常量和变量声明---------------
11
12 ;ACC EQU A;
13 ;--------------预定义--------------------
14
0000 15 ORG 0000H
0000 020003 16 LJMP START
17
18 ;------------中断入口地址分配------------
19 ;ORG 0003H
20 ;LJMP INT0PRG
21 ;ORG 000BH
22 ;LJMP INT1PRG
23 ;ORG 0013H;
24 ;LJMP
25 ;ORG 0030H
26
0003 27 START:
0003 120012 28 LCALL RTCINIT; RTC实时时钟初始化
29 ;--------------初始化子程序--------------
0006 856081 30 MOV SP,60H;
31 ;--------------主程序--------------------
0009 120043 32 MAIN: LCALL RTCREAD; RTC实时时钟寄存器读取
000C 120063 33 LCALL DELAY100MS; 延时间隔100ms
34
000F 020009 35 LJMP MAIN
36
37
38 ;----------------子程序------------------
39 ;---------------------------------
40 ; DS12887初始化子程序
41 ;---------------------------------
0012 42 RTCINIT:
0012 90800A 43 MOV DPTR,#800AH; 寄存器A的地址为800AH
0015 7470 44 MOV A, # 70H; 关闭晶振,并分频器复位
0017 F0 45 MOVX @DPTR, A; 将累加器A的内容传送给寄存器A
0018 A3 46 INC DPTR; DPTR为寄存器B的地址
0019 748A 47 MOV A, #8AH; 停止更新,允许中断,选择BCD码,24小时制
001B F0 48 MOVX @DPTR, A;
001C 758200 49 MOV DPL, # 00H; DPTR中为秒单元地址
001F E4 50 CLR A; 累加器清零
0020 F0 51 MOVX @DPTR, A; 秒单元送00
0021 758202 52 MOV DPL, # 02H; DPTR中为分单元地址
0024 E4 53 CLR A
0025 F0 54 MOVX @DPTR, A; 分单元送00
0026 758204 55 MOV DPL, # 04H; DPTR中为小时单元地址
0029 7400 56 MOV A,#00H; 0时
002B F0 57 MOVX @DPTR, A; 时单元送00H
002C 758207 58 MOV DPL, # 07H; 日单元
A51 MACRO ASSEMBLER EX3_7 06/23/2007 17:10:40 PAGE 2
002F 7401 59 MOV A,#01H; 1日
0031 F0 60 MOVX @DPTR, A; 日单元送01
0032 A3 61 INC DPTR; DPTR中为月单元地址
0033 E501 62 MOV A, 01H; 1月
0035 F0 63 MOVX @DPTR , A; 月单元送01
0036 A3 64 INC DPTR; DPTR中为年单元地址
0037 7406 65 MOV A ,#06H; 2006年
0039 F0 66 MOVX @DPTR, A; 年单元送06
003A A3 67 INC DPTR; DPTR中的值为800AH,是寄存器A的地址
003B 7426 68 MOV A, # 26H; DV2一DV0,打开晶振
003D F0 69 MOVX @DPTR, A;
003E A3 70 INC DPTR; DPTR中为寄存器B的地址
003F 741A 71 MOV A,#1AH; 更新正常,周期中断禁止,定闹中断禁止,允许更新中断
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -