求单片机程序,实现灯左右移动和闪烁
悬赏分:100 - 解决时间:2009-12-3 23:22
功能说明:单片机P1口接八只LED,要求端口做单一灯的变化:从P1.0开始先向左移3次,然后向右移2次,再闪烁4次,不断循环。
最佳答案:
用汇编语言编写程序如下。
ORG 0000H
MOV A, #0FEH
SSS:
MOV P1, A ;P1.0外接LED发光
LCALL DL1S
RL A ;左移一位
MOV P1, A ;P1.1外接LED发光
LCALL DL1S
RL A
MOV P1, A
LCALL DL1S
RL A
MOV P1, A ;左移3次完成
LCALL DL1S
RR A ;右移
MOV P1, A
LCALL DL1S
RR A ;右移
MOV P1, A
LCALL DL1S
MOV P1, #0FF ;灭
LCALL DL1S
MOV P1, A ;亮
LCALL DL1S
MOV P1, #0FF ;灭
LCALL DL1S
MOV P1, A ;亮
LCALL DL1S
MOV P1, #0FF ;灭
LCALL DL1S
MOV P1, A ;亮
LCALL DL1S
MOV P1, #0FF ;灭
LCALL DL1S
MOV P1, A ;亮
LCALL DL1S
LJMP SSS ;循环
DL1S: ;亮灯时间,由下面的数字进行控制
MOV R5, #20
DL2:MOV R6, #100
DL3:MOV R7, #250
DJNZ R7, $
DJNZ R6, DL3
DJNZ R5, DL2
RET
回答者: 做而论道 - 十一级 2009-12-2 11:36
提问者对于答案的评价:谢谢