|
【原创】
问题:根据P3.2口状态,改变P1口点亮8个LED的顺序。当P3.2=0时,P1口由低到高点亮LED,P3.2=1时,由高到低点亮LED。电路图如图所示。
附件:Protues仿真电路图+单片机汇编源代码
(已经跑过,无问题)
单片机源程序如下:
- ORG 0000H
- MOV P1,#0FFH;共阳极SETB P3.2;置1
- MOV A,#11111110BLOOP:
- MOV P1,A
- JB P3.2,HL
- RL A
- SJMP NEXT
- HL:RR A
- NEXT:LCALL DELAY;调用延时子程序
- SJMP LOOP
- DELAY:
- MOV R2,#5
- D1:MOV R3,#200
- D2:
- MOV R4,#250
- DJNZ R4,$
- DJNZ R3,D2
- DJNZ R2,D1
- RET
- END
复制代码
所有资料51hei提供下载:
新建文件夹.zip
(10.87 KB, 下载次数: 13)
p3.2控制.docx
(12.7 KB, 下载次数: 7)
|
-
1.png
(76.09 KB, 下载次数: 61)
电路图
|