在硬件方面我们要焊接出一个单片机最小系统,然后需要8个LED发光二极管,为了发光色彩好看我们最好选用不同发光色彩的LED比如红色、黄色、绿色、蓝色等。限流电阻可以用220欧姆,因为单片机标准电压是5V,可以共用一个电源。最后接上四个独立按键就可以了,为了切换彩灯切换方式。
下面是程序的设计了:
程序的设计主要包括:读取按键的状态并判断是否有按键按下、按键的去抖动处理并判断是否真正有按键按下、判断被按下的按键号码并调用亮灯的闪烁方式。现在我编写一个简单的程序给你参考一下,希望能帮助到你。
ORG 0000H
START:MOV A,, P3
CJNE A,#0FFH, PL0
SJMP START
PL0:LCALL DELAY
MOV A,P3
CJNE A,#0FFH,PL1
SJMP START
PL1:JNB ACC.0,K1
JNB ACC.1,K2
JNB ACC.0,K1
JNB ACC.1,K2
LJMP START
ORG 0040H
K1:MOV A,#0FFH//按下按键1时的亮灯子程序
LCALL DL1S
MOV A,#00H
LCALL DL1S
RET
K2:MOV P1,A//按下按键2时的亮灯子程序
MOV A,#0EFH
L1:MOV P1,A
LCALL DL1S
JNB ACC.0,M1
RL A
SJMP L1
M1:RET
K3:MOV P1,A//按下按键3时的亮灯子程序
MOV A,#0FEH
L2:MOV P1,A
LCALL DL1S
JNB ACC.7,M2
RR A
SJMP L2
M2:RET
K4:MOV A,#0AAH//按下按键4时的亮灯子程序
LCALL DL1S
MOV A,#55H
LCALL DL1S
RET
END