最近忙着复习考试,差点连自己姓什么都忘了。今天早上看到自己焊的实验板才猛然想起自己对EEPW的承诺,于是赶紧写了一个流水灯的小程序。下载到单片机板上,一切正常,除了LED2以外。LED2异常的原因是由于P1.0的电平被R1通过Q1的发射极拉低了。暂时不管这个问题。但从今天的流水灯实验来说,是成功的。LED2异常的情况之后再解决。下面附上我的程序,仅供参考。
ORG 0000H
MOV R0,#80H
MOV A,#0FFH
AJMP LED2_LED9 ;跳到程序LED2_LED9,使LED2至LED9逐个点亮
ORG 0010H
MOV R0,#80H
MOV A,#80H
AJMP LED9_LED2 ;跳到程序LED9_LED2,使LED9至LED2逐个熄灭
ORG 0030H
LED2_LED9:
MOV P1,A
ACALL DELAY200ms ;延时0.2S
JZ 0010H
MOV A,R0
RL A ;循环左移
MOV R0,A
MOV A,P1
SUBB A,R0
AJMP LED2_LED9
LED9_LED2:
MOV P1,A
ACALL DELAY200ms ;延时0.2S
MOV A,R0
RR A ;循环右移
MOV R0,A
MOV A,P1
ADD A,R0
CJNE A,#0FFH,LED9_LED1
AJMP 0000H
DELAY200ms: ;实际为200011us
MOV R4,#2
D3: MOV R3,#250
D2: MOV R2,#198
D1: DJNZ R2,D1
NOP
DJNZ R3,D2
DJNZ R4,D3
RET
END
新手上路,欢迎指正~~
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |