怎么用汇编语言编写八个灯依次点亮后不能熄灭,然后按倒顺序依次熄灭

如题所述

假设P1口接8个LED灯,灯控制部分程序如下:
LEDCTL:
MOV P1,#0FEH ;点亮第一个灯
LCALL DELAY
MOV R0,#7
LEDLP1:
CLR C
MOV A,P1
RLC A
MOV P1,A
LCALL DELAY
DJNZ R0,LEDLP1
MOV R0,#8
LEDLP2:
SETB C
MOV A,P1
RRC A
MOV P1,A
LCALL DELAY
DJNZ R0,LEDLP2
LJMP LEDCTL
DELAY:
MOV R1,#100
DELAY1:
MOV R2,#200
DJNZ R2,$
DJNZ R1,DELAY1
RET
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-04-25
假设P1口接8个LED灯,灯控制部分程序如下:
LEDCTL:
MOV
P1,#0FEH
;点亮第一个灯
LCALL
DELAY
MOV
R0,#7
LEDLP1:
CLR
C
MOV
A,P1
RLC
A
MOV
P1,A
LCALL
DELAY
DJNZ
R0,LEDLP1
MOV
R0,#8
LEDLP2:
SETB
C
MOV
A,P1
RRC
A
MOV
P1,A
LCALL
DELAY
DJNZ
R0,LEDLP2
LJMP
LEDCTL
DELAY:
MOV
R1,#100
DELAY1:
MOV
R2,#200
DJNZ
R2,$
DJNZ
R1,DELAY1
RET
第2个回答  2012-03-07
有嘛用?移动点击变化就行呗

怎么用汇编语言编写八个灯依次点亮后不能熄灭,然后按倒顺序依次熄灭
假设P1口接8个LED灯,灯控制部分程序如下:LEDCTL:MOV P1,#0FEH ;点亮第一个灯 LCALL DELAY MOV R0,#7 LEDLP1:CLR C MOV A,P1 RLC A MOV P1,A LCALL DELAY DJNZ R0,LEDLP1 MOV R0,#8 LEDLP2:SETB C MOV A,P1 RRC A MOV P1,A LCALL DELAY DJNZ R0,LEDLP2 LJMP LEDCTL DEL...

计算机汇编与借口如何让八个灯依次亮,然后再依次灭
用mov p1,a 语句将a里的东西送到p1口(假设p1口输出,并且输出1为点亮灯,如果不同就反一下)。过程这样:先将a清零,然后依次置位d0到d7,清零d0到d7,每次更改a然后用mov输出,调用延时程序,

单片机用汇编做一个控制8个LED灯泡从左到右依次点亮,最后全部亮,再全部...
define uchar unsigned char define uint unsigned int \/\/延时 void DelayMS(uint x){ uchar i;while(x--){ for(i=0;i<120;i++);} } \/\/主程序 void main(){ uint s;while(1){ P0=0xfe;DelayMS(150);for(s=8;s>1;s--){ P0=_crol_(P0,1); \/\/P0 的值向左循环移动 DelayMS...

如何用汇编语言使流水灯(8个灯)从左向右依次点亮且不灭,之后从右往左...
A CLR C RLC A LCALL DELAY DJNZ R2,LOOP1 MOV R2,#8 MOV A,#80HLOOP1: MOV P1,A SETB C RRC A LCALL DELAY DJNZ R2,LOOP1 SJMP MAINDELAY: MOV R2,#200DLY: MOV R3

用汇编语言让51单片机八个灯从左到右依次点亮且都不灭,每个灯亮的时
用汇编语言让51单片机八个灯从左到右依次点亮且都不灭,每个灯亮的时间间隔0.5秒,然后全灭,再循环之前的步骤。参考如下:电路 代码 LED_COUNTDATA30H T0_COUNTDATA31H ORG0000HLJMPMAINORG000BHLJMPT0_INTORG0030HMAIN:ANLTMOD,#0F0HORLTMOD,#01HMOVTH0,#3CHMOVTL0,#0B0HORLIE,#82HSETBTR0...

c语言和汇编的程序八个LED依次左移逐个点亮,点亮后在依次右移逐个点亮不...
汇编语言 LEDEQU 30H ORG 0000H LJMP MAIN ORG 0030H MAIN:CLR EA MOV SP,#5FH MOV LED,#0FEH MOV R0,#7 LOOP:MOV R7,#50 LCALL DELAY MOV A,LED RL A MOV LED,A MOV P3,A DJNZ R0,LOOP MOV R0,#7 LOOP1:MOV R7,#50 LCALL DELAY MOV A,LED RR A MOV LED,A MOV P3,A ...

单片机控制8个灯依次亮,全亮了,再依次灭的c语言流程图,顺便加上解释...
1、创建项目,如图所示。2、创建延迟函数。3、创建C语言主函数。设计unsigned char k=0;变量。4、添加循环效果。5、点亮灯,通过k++,改变效果。6、添加延迟效果,单片机就可以控制8个灯依次亮,全亮了,然后再依次灭。

单片机汇编程序:有八个小灯,要求依次点亮,时间间隔1s
实验内容:用汇编指令对单片机I\/O口进行编程,控制8个发光二极管的流水亮灭。\/ \/* 程序详细功能介绍:做单一灯的左移右移,八个发光二极管L0-L7分别接在单片机的P0.0-P0.7接口上,输出“0”时,发光二极管亮,开始时P0.0→P0.1→P0.2→P0.3→┅→P0.7→P0.6→┅→P0.0亮,重复...

求解,用一个开关控制八个LED灯间隔一秒依次点亮,点亮后不熄灭,用汇
LJMP MAIN ORG 000BH LJMP T0ISR ORG 0030H MAIN:MOV TMOD,#01H MOV TH0,#HIGH(65536-50000)MOV TL0,#LOW(65536-50000)SETB ET0 SETB EA MOV A,#FEH MOV P0,A MOV R2,#20 JB KEY,JNB KEY,SETB TR0 SJMP T0ISR:CLR TR0 MOV TH0,#HIGH(65536-50000)MOV TL0,#LOW(65536-50000)...

51单片机汇编程序控制8个灯从两边向中间依次点亮,再从中间向两边依次点...
LCALL DELAY INC R0 DJNZ R2,LOOP MOV R2,#4LOOP1: DEC R0 MOV A,@R0 MOV P1,A LCALL DELAY DJNZ R2,LOOP1 MOV R2,#4 SJMP LOOPDELAY: MOV R3,#200DLY: MOV R4,#250 DJNZ R4,$ DJNZ R3,DLY RET END ...

相似回答