?? m7219d.asm
字號:
; 這是三片MAX7219級連顯示24位LED時所用匯編程序, 文件名為
; M7219D.ASM 。三片MAX7219級連,是在兩片MAX7219級連的基礎上,
; 再加一片。連法和兩片相連類似。第三片的12腳、13腳依次接第二
; 片的12腳、13腳,第三片的第1腳接第二片的第24腳。
; 功能:本程序主要是將顯示緩沖區的24位數在LED上顯示出來,因所
; 用單片機為華邦的W77E58,所用顯示緩沖區分兩部份,第一
; 部份為單片機的內部DATA RAM區的40H,41HH,...,4FH連續的
; 16個字節, 第二部份為單片機的內部XDATA區的0050H,0051H,...,
; 0057H連續的8個字節, 這里顯示的3個8位數依次為0.1234567,
; 3.1415926,0.12655361。其中掃描界、數碼亮度、譯碼方式均
; 可選,參見程序中的注釋 。
PMR EQU 0C4H
DIN EQU P0.0
LOAD EQU P0.1
CLK EQU P0.2
ORG 0000H
LJMP MAIN
ORG 0050H
MAIN: MOV SP,#0CFH
CLR EA
MOV PMR,#01H
MOV 40H,#06H ;0.12655361
MOV 41H,#03H
MOV 42H,#05H
MOV 43H,#05H
MOV 44H,#06H
MOV 45H,#02H
MOV 46H,#01H
MOV 47H,#80H
MOV 48H,#06H ;3.1415926
MOV 49H,#02H
MOV 4AH,#09H
MOV 4BH,#05H
MOV 4CH,#01H
MOV 4DH,#04H
MOV 4EH,#01H
MOV 4FH,#83H
MOV DPTR,#0050H ;0.1234567
MOV A,#07H
MOVX @DPTR,A
INC DPTR
MOV A,#06H
MOVX @DPTR,A
INC DPTR
MOV A,#05H
MOVX @DPTR,A
INC DPTR
MOV A,#04H
MOVX @DPTR,A
INC DPTR
MOV A,#03H
MOVX @DPTR,A
INC DPTR
MOV A,#02H
MOVX @DPTR,A
INC DPTR
MOV A,#01H
MOVX @DPTR,A
INC DPTR
MOV A,#80H
MOVX @DPTR,A
NOP
SETB LOAD
LCALL INI2
LCALL DISP
SJMP $
INI2:MOV R2,#0CH ;選擇掃描界0-7
MOV R3,#01H
MOV R4,#01H
MOV R7,#01H
LCALL WRIT
MOV R2,#0AH ;選擇碼亮度 01-0FH
MOV R3,#01H
MOV R4,#01H
MOV R7,#01H
LCALL WRIT
MOV R2,#09H ;選擇譯碼方式00,0FFH
MOV R3,#0FFH
MOV R4,#0FFH
MOV R7,#0FFH
LCALL WRIT
MOV R2,#0BH ;選擇正常工作狀態00,01
MOV R3,#07H
MOV R4,#07H
MOV R7,#07H
LCALL WRIT
RET
DISP: MOV R5,#8
MOV R0 ,#40H
MOV R1 ,#48H
MOV DPTR,#0050H
MOV R2 ,#1
LOP3: MOV A,@R0
MOV R3 ,A
MOV A,@R1
MOV R4 ,A
MOVX A,@DPTR
MOV R7 ,A
LCALL WRIT
INC R0
INC R1
INC R2
INC DPTR
DJNZ R5, LOP3
RET
WRIT: CLR LOAD
MOV A,R2
LCALL SEND
MOV A,R3
LCALL SEND
MOV A,R2
LCALL SEND
MOV A,R4
LCALL SEND
MOV A,R2
LCALL SEND
MOV A,R7
LCALL SEND
CLR LOAD
NOP
NOP
SETB LOAD
NOP
RET
SEND:
MOV R6,#08H
LOP1: NOP
NOP
CLR CLK
RLC A
MOV DIN,C
NOP
NOP
SETB CLK
DJNZ R6,LOP1
RET
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -