?? 595_4bit_數(shù)據(jù).lst
字號(hào):
A51 MACRO ASSEMBLER 595_4BIT_數(shù)據(jù) 10/18/2008 15:47:44 PAGE 1
MACRO ASSEMBLER A51 V1.11
OBJECT MODULE PLACED IN 595_4BIT_數(shù)據(jù).OBJ
ASSEMBLER INVOKED BY: C:\MANLEY\PMEDWIN\A51.EXE 595_4BIT_數(shù)據(jù).ASM DB
LOC OBJ LINE SOURCE
1 ;******************************************************************
2 ;模塊名: C52開發(fā)板 硬件型號(hào): STC89C52
3 ;創(chuàng)建人: 張軒偉 日期: 2008_10_15
4 ;修改人: 張軒偉 日期: 2008_10_16
5 ;功能描述: 595串行驅(qū)動(dòng)4位八段數(shù)碼管,閃爍及右推顯示GOOD
6 ;其他說明: 采用查詢表格方式,LIGHT為閃爍,RIGHT為右推
7 ;版本: 1.0
8 ;******************************************************************
00A4 9 CLK BIT P2.4
00A3 10 STB BIT P2.3
00A2 11 SDATA BIT P2.2
0060 12 BUFF EQU 60H
0080 13 SUFF EQU 80H
0000 14 ORG 0000H
0000 0130 15 AJMP MAIN
0030 16 ORG 0030H
0030 75A000 17 MAIN: MOV P2,#00H
0033 756012 18 MOV 60H,#12H
0036 756134 19 MOV 61H,#34H ;60H存放12H,61單元存放34H
0039 900060 20 MOV DPTR,#TABLE
003C E560 21 XUNZHI: MOV A,BUFF
003E C0E0 22 PUSH ACC
0040 540F 23 ANL A,#0FH
0042 93 24 MOVC A,@A+DPTR
0043 F580 25 MOV 80H,A
0045 0580 26 INC SUFF
0047 D0E0 27 POP ACC
0049 54F0 28 ANL A,#0F0H
004B C4 29 SWAP A
004C 93 30 MOVC A,@A+DPTR
004D F580 31 MOV SUFF,A
004F 0580 32 INC SUFF
0051 1560 33 DEC BUFF
0053 E560 34 MOV A,BUFF
0055 C0E0 35 PUSH ACC
0057 540F 36 ANL A,#0FH
0059 93 37 MOVC A,@A+DPTR
005A F580 38 MOV SUFF,A
005C 0580 39 INC SUFF
005E D0E0 40 POP ACC
0060 54F0 41 ANL A,#0F0H
0062 C4 42 SWAP A
0063 93 43 MOVC A,@A+DPTR
0064 F580 44 MOV SUFF,A
0066 0580 45 INC SUFF
46 ;==================================================================
47 ;傳送1位數(shù)據(jù)
48 ;==================================================================
0068 33 49 S_BIT: RLC A ;帶進(jìn)位右移A中數(shù)據(jù),
0069 92A2 50 MOV SDATA,C ;由SDATA串行發(fā)送數(shù)據(jù)
006B C2A4 51 CLR CLK ;CLK低
006D D2A4 52 SETB CLK ;CLK高
006F C2A4 53 CLR CLK ;CLK低,,,完成上升沿過程,將數(shù)據(jù)打入移位寄存器
54
55 ;CLR STB ;STB低
56 ;SETB STB ;STB高
57 ;CLR STB ;STB低,,,完成上升沿過程,將數(shù)據(jù)打入存儲(chǔ)寄存器
0071 22 58 RET
A51 MACRO ASSEMBLER 595_4BIT_數(shù)據(jù) 10/18/2008 15:47:44 PAGE 2
59 ;==================================================================
60 ;傳送8位數(shù)據(jù)
61 ;==================================================================
0072 7908 62 S_8BIT: MOV R1,#08H ;傳送8位數(shù)據(jù)
0074 C2A3 63 CLR STB ;清STB
0076 C2A4 64 CLR CLK ;清CLK
0078 120068 65 S_82: LCALL S_BIT
007B D9FB 66 DJNZ R1,S_82 ;8位數(shù)據(jù)依次打入,循環(huán)8次
67 ;CLR STB ;STB低
68 ;SETB STB ;STB高
69 ;CLR STB ;STB低,,,完成上升沿過程,將數(shù)據(jù)打入存儲(chǔ)寄存器
007D 22 70 RET
71 ;==================================================================
72 ;傳送32位數(shù)據(jù)
73 ;==================================================================
007E 7B04 74 S_FBIT: MOV R3,#04H ;決定傳送的位數(shù),04表示32位
75
0080 E4 76 S_F2: CLR A
0081 E580 77 MOV A,SUFF
0083 1580 78 DEC SUFF
0085 120072 79 LCALL S_8BIT
0088 DBF6 80 DJNZ R3,S_F2
008A C2A3 81 CLR STB
008C D2A3 82 SETB STB
008E C2A3 83 CLR STB ;32位數(shù)據(jù)全部打出
0090 22 84 RET
85
0060 86 ORG 0060H
0060 C0 87 TABLE: DB 0C0H
0061 F9 88 DB 0F9H
0062 A4 89 DB 0A4H
0063 B0 90 DB 0B0H
0064 99 91 DB 099H
0065 92 92 DB 092H
0066 82 93 DB 082H
0067 F8 94 DB 0F8H
0068 80 95 DB 080H
0069 90 96 DB 090H
006A 88 97 DB 088H
006B 83 98 DB 083H
006C C6 99 DB 0C6H
006D A1 100 DB 0A1H
006E 86 101 DB 086H
006F 81 102 DB 081H
103 END
A51 MACRO ASSEMBLER 595_4BIT_數(shù)據(jù) 10/18/2008 15:47:44 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ACC. . . . . . . . D ADDR 00E0H A
BUFF . . . . . . . N NUMB 0060H A
CLK. . . . . . . . B ADDR 00A0H.4 A
MAIN . . . . . . . C ADDR 0030H A
P2 . . . . . . . . D ADDR 00A0H A
SDATA. . . . . . . B ADDR 00A0H.2 A
STB. . . . . . . . B ADDR 00A0H.3 A
SUFF . . . . . . . N NUMB 0080H A
S_82 . . . . . . . C ADDR 0078H A
S_8BIT . . . . . . C ADDR 0072H A
S_BIT. . . . . . . C ADDR 0068H A
S_F2 . . . . . . . C ADDR 0080H A
S_FBIT . . . . . . C ADDR 007EH A
TABLE. . . . . . . C ADDR 0060H A
XUNZHI . . . . . . C ADDR 003CH A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -