循环点亮你只要用位移指令就行啦!假如是p1口,你只要先给他赋予一个初值00000001,假如是高电平点亮,那这是就只有一盏灯亮,循环左移就行啦!每次循环一次,都调用一下延时这就可以按自己要求设置延时的时间啦!其实思路都

led1,led2,led3,led4,led5,led6,led7 );inputclk_in;outputled0;outputled1;outputled2;outputled3;outputled4;outputled5;outputled6;outputled7;regled0;regled1;regled2;regled3;regled4;regled5;regled6;

跑马灯程序用汇编是很好实现的,只要用好循环移位指令就可以,以下是程序。\x0d\x0aORG 0000H\x0d\x0aLJMP MAIN\x0d\x0aORG 0030H\x0d\x0aMAIN:\x0d\x0a MOV A,#0FEH\x0d\x0a\x0d\x0aLOOP:

答疑解难 跑马灯程序 ORG 0000H LJMP MAIN ORG 0100H MAIN: JB P0.7,MAIN ;等待开始键按下 LCALL YS ;按键延时 JB P0.7,MAIN MOV A,#7FH ;是开始键按下 则跑马灯开始

程序1:ORG 0000H LJMP MAIN ORG 0030H MAIN:MOV SP,#5FH LOOP:MOV A,P2 MOV B,A MOV P0,A MOV P1,#0FFH LOOP1:LCALL DELAY MOV C,P1.7 MOV A,P0 RLC A MOV P0,A MOV A,P1 RLC A MOV P1,A MOV

ORG 0000H MAIN:MOV A,#0FEH MOV R2,#8 LP1: ;左移 MOV P0,A RL A LCALL DELAY DJNZ R2,LP1 MOV R2,#8 LP2: ;右移 MOV P0,A RR A LCALL DELAY DJNZ R2,LP2 MOV R2,#8 LP3: ;闪烁右移

LJMP MAIN ORG 0030H MAIN:MOV DPTR,#TAB MOV R2,#4 LOOP:CLR A MOV A,@A+DPTR MOV P0,A INC DPTR LCALL DELAY DJNZ R2,LOOP SJMP MAIN DELAY:MOV R3,#200 DELAY1:MOV R4,#250 DJNZ R4,DJNZ R3,DELAY1

两边往中间的跑马灯汇编语言程序

程序1:ORG 0000H LJMP MAIN ORG 0030H MAIN:MOV SP,#5FH LOOP:MOV A,P2 MOV B,A MOV P0,A MOV P1,#0FFH LOOP1:LCALL DELAY MOV C,P1.7 MOV A,P0 RLC A MOV P0,A MOV A,P1 RLC A MOV P1,A MOV

输出“0”时,发光二极管亮,开始时P0.0→P0.1→P0.2→P0.3→┅→P0.7→P0.6→┅→P0.0亮,重复循环。/ ORG 0000H LJMP START ORG 0030H START:MOV R2,#8 ;左移次数 MOV A,#0FEH ;A的初始值,即

MAIN: JB P0.7,MAIN ;等待开始键按下 LCALL YS ;按键延时 JB P0.7,MAIN MOV A,#7FH ;是开始键按下 则跑马灯开始运行 LL: MOV P1,A LCALL YS ;显示延时 RR A

CSEG AT 0000H LJMP START CSEG AT 401BH LJMP INT CSEG AT 4100H START: MOV A,#01H MOV R1,#03H MOV R0,#5H MOV TMOD,#10H MOV TL1,#57H MOV TH1,#9EH ORL IE,#88H SETB TR1 LOOP1: CJNE R0,#00

求汇编语言的单片机跑马灯程序 要求开始可以依次亮 按一次开关 点亮方向改变依次

这就是典型的流水灯,又叫跑马灯。这种流水灯的仿真图和程序,在百度知道这里可以搜索到无数个答案,找一个合适的下载复制下来就行了。自己动手,一会就搞定了。比你这样守株待兔省事省时,往往是没有结果的。

ORG 0000H ;程序从000H地址开始运行 AJMP MAIN ;跳转到 MAIN程序 ORG 030H ;MAIN程序从030H开始运行 MAIN:MOV P2,#0FEH ACALL DEL ;调用延时子程序 MOV P2,#0FCH ACALL DEL ;调用延时子程序 MOV P2,#0

第8根亮,时间间隔为1s ,全亮后,显示10s ,再反过来从8→7→„„→1按1s 间隔顺序熄灭,全灭后停亮2s ;再从第8根开始亮,顺序点亮7→6→„„→1,时间间隔1s ,显示5s ,再从1→2

TH0=0x3c; //初使化 TL0=0x0b0;TR0=1; //启动0计时器 ET0=1; //开启0计时器 led=0xff;while(1){ led=1;} void t0 intrrupt 1 { for(i=0;i<8;i++)led=led>>1;delay(30000);} void

其中DELAY 是一个延时1S子程序(不要改变A的值),具体要根据单片机的时钟计算延时时间,可以采用循环嵌套的方式,很容易就可以实现。

跑马灯电路设计,led由上至下依次点亮,间隔一秒,再跳回最下边,不断循环显示。

8个灯的 include define uchar unsigned char uchar code tab[8]={0x18,0x24,0x42,0x81,0x81,0x42,0x24,0x18};uchar count,i;void main(){ TMOD=0x01;//设置定时器0的工作方式1 TH0=(65536-

i>0;i++)deng[i-1]<=deng[i];end endcase end end endmodule 右跑为例,依次如下 00000000 10000000 11000000 11100000 。。。11111111 01111111 00111111 00011111 。。。00000000 direction接开关,deng接8位led灯

CALL DELAY ;单片机运行很快,为了能看到灯的变化,必须延迟,把速度降下来 DJNZ R2, LOOP ;R2每次减1后判断是否=0,8次后=0程序才会下行,否则会跳回LOOP MOV R2,#07H ;R2右转循环计数器 LOOP1: RRC A >>

//设是AVR单片机,为1表示LED亮,8个LED接在A上 a[]={0x18,0,0x24,0,0x42,0,0x81,0,0x42,0,0x24,0};for (int i=0;i<12;++i){ PORTA=a[i];//A口接了8个LED delay(500);//延时函数可自己写 }

#250 DJNZ R4,$ DJNZ R3,DLY RET END

MOV R2, #0FEH ;初始状态:设定点亮边上的一个灯 1111 1110 MOV R3, #7FH ;初始状态:设定点亮边上的一个灯 0111 1111 LOOP: MOV A, R2 ANL A, R3 ;A = 0111 1110 MOV P1,

8个灯的led跑马灯要控制灯同时从中间向两边跑的代码是什么?

1、 灯管点亮的顺序依次为;1号到2号8号时间隔为1S,8根彩灯全亮后,持续10S,然后按照8号到7号1号开始顺序依次熄灭时间为1S,灯管全部熄灭后等待2S,再重新开始上述过程的循环,直至系统停止工作。2、

假如按键是一个开个,接在P1.0,八个灯在P0,低电平灯亮 程序是这样的 MOV 30H ,#00 LOP :SETB P1.0 JNB P1.0, PRESS AJMP LOP PRESS:INC 30H MOV A,30H CJNE A,#9,L_NEXT MOV 30H,#1 L_

1.未按动开关 电源通过电阻给电容充电,使电容电压很快被充到电源电压,这样两个输入都是高电平,根据内部RS触发器的真值表,此时输出为低电平0.这是一个稳态。2.按动开关 此时,电容快速放电,电压迅速降为零,两个输入

while(1){ for(j = 0;j < 8;j++){ P1 = 255;//全灭,P1外接LED,低电平发光.delay_ms(500);//稍等片刻.for(i = 0;i < 8;i++){ P1 <<= 1;delay_ms(900 - 100 j);//延 渐短 } } } } /

while(1){ j=0x01;//假如高电平灯亮 for(i=0;i<8;i++){ P0=j;delay(1000);//逐个循环点亮 j<<=1;} j=0xfe;for(i=0;i<8;i++){ P0=j;delay(1000); // 逐个循环熄灭 j<<=1;} } }

AJMP MAIN ;跳转到 MAIN程序 ORG 030H ;MAIN程序从030H开始运行 MAIN:MOV P2,#0FEH ACALL DEL ;调用延时子程序 MOV P2,#0FCH ACALL DEL ;调用延时子程序 MOV P2,#0F8H ACALL DEL MOV P2,#0F0H ACAL

最简单单路跑马灯汇编程序 8展灯 一个开关 开关按下 8个灯从上到下依次点亮 每盏亮1秒 用汇编语言

已发送致邮箱
用PLC内部继电器和时间继电器来做程序,6个时间继电器分别控制每次亮的那盏灯,时间可以设定3秒6秒9秒--依此类推。
ORG 0000H LJMP MAIN ORG 000BH LJMP T0ISR ORG 0030H MAIN: MOV TMOD,#01H MOV TH0,#HIGH(65536-50000) MOV TL0,#LOW(65536-50000) SETB TR0 SETB ET0 SETB EA MOV A,#0FEH SJMP $ T0ISR: CLR TR0 MOV TH0,#HIGH(65536-50000) MOV TL0,#LOW(65536-50000) SETB TR0 MOV P0,A RL A RETI END
主函数对了,宏定义要定义每个LED的开关函数才行
给个示例程序看看 /*----------------------------------------------- 名称:流水灯 公司:上海浩豚电子科技有限公司 编写:师访 日期:2009.5 修改:无 内容:循环点亮P1口对应的8个LED灯,造成循环流水点亮的效果 --------------------------...
ORG 0000H JMP BEGIN ORG 000BH LJMP T0INT ORG 0030H;---------------------------------------TABLE: ; 共阴极数码管显示代码表 DB 3FH,06H,5BH,4FH,66H ;01234 DB 6DH,7DH,07H,7FH,6fh ;56789;---------------------------------------BEGIN: MOV SP,#5FH MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 SETB ET0 SETB EA MOV R2,#20 MOV P1,#0FEH MOV DPTR,#TABLE MOV A,#1 MOVC A,@A+DPTR MOV P0,A MOV R3,#1 SJMP $;---------------------------------------T0INT: CLR TR0 MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 DJNZ R2,T0INTE MOV R2,#20 INC R3 MOV A,R3 CJNE A,#9,T0INT1 MOV A,#1T0INT1: MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P0,AT0INTE: RETI END
这个简单,采用带进位移位指令就可以实现,假如是高有效,程序如下。 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV A,#01H MOV P1,#01H MOV P2,#00H MOV P3,#00H MOV R2,A MOV R3,#00H MOV R4,#00H LOOP: MOV P1,R2 MOV P2,R3 MOV P3,R4 LCALL DELAY CLR C MOV A,R2 RLC A MOV R2,A MOV A,R3 RLC A MOV R3,A MOV A,R4 RLC A MOV R4,A MOV A,R2 MOV ACC.0,C MOV R2,A LJM,P LOOP DELAY: MOV R5,#200 DLY1: MOV R6,#250 DJNZ R6,$ DJNZ R5,DLY1 RET END
跑马灯程序用汇编是很好实现的,只要用好循环移位指令就可以,以下是程序。 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV A,#0FEH LOOP: MOV P1,A ;将控制字送端口 RL A ;控制字循环左移 LCALL DELAY ;延时 SJMP LOOP DELAY: ;延时大概1秒 MOV R2,#10 DLY1: MOV R3,#200 DLY2: MOV R4,#250 DJNZ R4,$ DJNZ R3,DLY2 DJNZ R2,DLY1 RET END