我的開發板是P0低三位(38數碼管的輸入端口)口控制數碼管的位選的,八個輸出口分別控制八個數碼管工作的。程序: 通過三八譯碼器讓三個IO口控制八個數碼管的工作狀態
ORG 00H
STARY:
MOV P0,#00000000B;根據三八譯碼器真值表的原理控制第一個數碼管工作
MOV P1,#00111111B;顯示 0
CALL DELAY;短暫的延時
MOV P0,#00000001B;根據三八譯碼器真值表的原理控制第二數碼管工作
MOV P1,#00000110B;顯示 1
CALL DELAY;短暫的延時
MOV P0,#00000010B;根據三八譯碼器真值表的原理控制第三數碼管工作
MOV P1,#01011011B;顯示 2
CALL DELAY;短暫的延時
MOV P0,#00000011B;根據三八譯碼器真值表的原理控制第四個數碼管工作
MOV P1,#01001111B;顯示 3
CALL DELAY;短暫的延時
MOV P0,#00000100B;根據三八譯碼器真值表的原理控制第五個數碼管工作
MOV P1,#01100110B;顯示 4
CALL DELAY;短暫的延時
MOV P0,#00000101B;根據三八譯碼器真值表的原理控制第六個數碼工作
MOV P1,#01101101B;顯示 5
CALL DELAY;短暫的延時
MOV P0,#00000110B;根據三八譯碼器真值表的原理控制第七個數碼工作
MOV P1,#01111101B;顯示 6
CALL DELAY;短暫的延時
MOV P0,#00000111B;根據三八譯碼器真值表的原理控制第八個數碼工作
MOV P1,#00000111B;顯示 7
CALL DELAY;短暫的延時
JMP STARY
DELAY:;延時程序
MOV R0,#3
DV1: MOV R1,248
DV2: DJNZ R1,DV2
DJNZ R0,DV1
RET
END
效果:在八個數碼管上顯示數字0至7 |