用51单片机(汇编语言写)写一个跑马灯程序??知道的帮个忙写写。

作者&投稿:虞郑 (若有异议请与网页底部的电邮联系)
51单片机汇编语言编写一个跑马灯的程序,初学者做实验用,具体要求如下,好了可以加分~

程序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 A,P2
CJNE A,B,LOOP
SJMP LOOP1
DELAY:
MOV R2,#60
DELAY1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DELAY1
RET
END
程序2:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV SP,#5FH
JNB P2.0,LOOP1 ;
JNB P2.1,LOOP2 ;
SJMP MAIN
LOOP1:
MOV P0,#0FEH
MOV P1,#0FFH
LOOP11:
MOV C,P1.7
MOV A,P0
RLC A
MOV P0,A
MOV A,P1
RLC A
MOV P1,A
JNB P2.1,LOOP2
SJMP LOOP11
LOOP2:
MOV P0,#0FCH
MOV P1,#0FFH
LOOP21:
MOV C,P1.7
MOV A,P0
RLC A
MOV P0,A
MOV A,P1
RLC A
MOV P1,A
JNB P2.0,LOOP1
SJMP LOOP21
DELAY:
MOV R2,#60
DELAY1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DELAY1
RET
END

给个你参考
*******
/* 实验目的:初步了解单片机I/O口的工作原理,进一步掌握51单片机的汇编指令。
* 实验内容:用汇编指令对单片机I/O口进行编程,控制8个发光二极管的流水亮灭。
*/
/* 程序详细功能介绍:
*做单一灯的左移右移,八个发光二极管L0-L7分别接在单片机的P0.0-P0.7接口上,
*输出“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的初始值,即 P0.0的L0 点亮
SETB C
LOOP: MOV P0,A
LCALL DELAY
RLC A ;左移流水灯(带进位的左移),即亮点向P0口的高位移动
DJNZ R2,LOOP


MOV R2,#8 ;右移次数
LOOP1: RRC A ;右移流水灯
MOV P0,A
LCALL DELAY
DJNZ R2,LOOP1
LJMP START

DELAY: MOV R5,#10 ;延时子程序,改变R5,R6,R7 的值,可以改变延时的时间,从而改变流水灯移动速度
D1: MOV R6,#20
D2: MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END

答疑解难   跑马灯程序

                     ORG     0000H

                     LJMP     MAIN

                     ORG     0100H

MAIN:            JB          P0.7,MAIN  ;等待开始键按下

                     LCALL    YS             ;按键延时

                      JB         P0.7,MAIN

                      MOV     A,#7FH       ;是开始键按下  则跑马灯开始运行

LL:                 MOV     P1,A

                      LCALL    YS           ;显示延时

                      RR          A             ;循环右移一位

                      JB         P0.6, LL     ;没有按下停止键  则继续跑马

                      LCALL    YS            ;按键延时

                      JB          P0.6,LL         ;按下停止键 则停止跑马;否则继续跑马

                      MOV      A,#0FFH

                      MOV      P1,A

                      SJMP     MAIN            ;转到程序开始处,等待开始键的按下

 

YS:                MOV    R7,#150          ;延时子程序

YL:                MOV    R6,#200

YY:                NOP

                     DJNZ    R6,YY

                     DJNZ    R7,YL

                     RET

 

                     END

 

硬件接口电路如下:

 

        哈哈   还满意吗   就请给俺选择(满意选项)吧

 



急用!请教!!!
用汇编语言程序,程序功能:实现方向可控的跑马灯
编程要求:用八个LED发光二极管实现跑马灯(即:8个灯依次轮流发光,每次只亮一个灯),系统启动后,跑马灯右向流转,按下K1键,则反向流转,再按则再反向……。接线方法:流水灯接P0口,按键K1可自选P1~P3任一引脚。


单片机MCS-51汇编语言中的“A、B、C”指的是什么?
它们的含义分别为:A是累加器,是使用频率最高的特殊寄存器。B是通用寄存器,也是唯一可以参与乘、除运算指令的寄存器。C是进位位,属于位存储器,也是布尔处理机进行位运算最常用的位寄存器,同时受某些算术、逻辑运算指令影响,表征结果的状态。单片机是指一个集成在一块芯片上的完整计算机系统。单片机是一...

51单片机中汇编语言中的swap是什么意思?
51单片机汇编语言中的swap是半字节交换指令。\\x0d\\x0aSWAPA这条指令,将累加器A的高、低4位数据交换,也就是低4位数据进入高4位,高4位数据进入低4位。例如:\\x0d\\x0aMOVA#00001111B\\x0d\\x0aSWAPA\\x0d\\x0a执行SWAPA后,A中的内容变为11110000B。

用汇编语言编写51单片机程序时候,读引脚要先写MOV P1,#0FFH,才能读引脚...
MOV P1,#0FFH 这就是锁存了,P1的8个脚全为高电平了。也就是置高了,置低也是这么写,只是立即数要有0,例如 MOV P1,#0FH,这是就是高四位置低电平,低四位置高电平。读引脚是:MOV A,P1,这是读8位 也可以只读一位 没有那么多的麻烦,别听网上或书上乱讲一通,就是两条MOV指令搞定了...

汇编语言在51单片机中的所有指令有那些?
2017-01-19 51单片机汇编语言:位操作指令有哪些 1 2010-12-01 MCS-51单片机汇编语言的SP指令有什么作用? 69 2011-10-14 用汇编语言编写51单片机程序,指令程序存储在ROM里还是RA... 2 2018-02-27 MCS-51单片机汇编语言的SP指令有什么作用? 2 2011-02-27 51单片机的指令是汇编语言吗? 5 2018-01-...

51单片机 外部中断(汇编语言)问题
主程序是:流水灯0到7依次点亮、流水灯7到0依次点亮,反复循环。外部中断程序是:灯全亮、全灭3次。但是,程序没有开中断的指令,中断程序是不会执行的。START: ;在下面添加:SETB EA ;开总中断.SETB EX0 ;开INT0中断.CLR IT0 ; 设置INT0为电平触发.MOVA,#00H ……外部中断就...

C51单片机汇编语言
DEL,DLYRAM是标记号,后面跟有:(冒号)是本汇编行的地址,举个例子:SJMP 这一句,就相当于 Loop:AJMP Loop

用汇编语言编写一个51单片机程序,实现电子秒表功能
;=== ;功能:本程序实现P0口的对数码管动态显示秒表的分、秒、1\/100秒;; 计时程序由中断服务程序实现,采用定时计数器T0工作方式1;; P2口实现对数码管的片选功能 ;=== ;===初始化===

求单片机c51用汇编语言写的程序,功能为:8只发光二极管依次点亮,从...
51单片机汇编语言编程,流水灯如P1口8个Ⅰ\/O依次输出低电平点亮发光二极管,思路可以用定时器中断+计数来定时,可以用位移输出或者用状态表(查表法)输出,如表01111111、10111111、---、11111110,就是查表取状态字节再写入P1口。

51单片机汇编语言中的“$”代表什么意思?
代表当前的指令所在的地址\\x0d\\x0a举个例子来说,在0050H处定义了几个字节数据\\x0d\\x0a0050H:01H,02H,03H,04H\\x0d\\x0a那么下一条指令的地址应该为0054H,若下一条语句为\\x0d\\x0aCOUNT EQU $-0050H,则COUNT就等于4(0054H-0050H),但是一般 编程的时候是不知道数据定义在哪里的...

用汇编语言编写51单片机程序,指令程序存储在ROM里还是RAM里?_百度知...
51单片机采用的是哈佛结构,即数据和程序分开,这样可以提高程序的执行速度,如果是MOV 21H #35H这样的指令,#35H是作为一个立即数,是要和指令放在一起的,就是放在了rom里,如果是定义了的变量,那么就会放到数据存储器ram里,在定义变量的时候,可以通过命令选择变量放到rom或是ram中。

南充市14737892306: 用51单片机设计一个16位的跑马灯 要求通过一个开关控制3种不同的模式 用汇编语言写,三种模式随意 -
爨琬盐酸: 一个开关,比如导通了1秒一个模式,3秒一个模式,5秒一个模式. 要么在一定时间内,检测开关导通的次数 我觉得应该弄的直观点,从51上接4个led做指示用,一个灯表示待运行,还有3个灯,亮一个表示模式1,亮两个表示模式2,亮3个表示模式3 开机的时候,待运行灯亮,等待设定模式,这时候开始按按键设定模式,同时待运行灯灭.模式灯随按键操作变化. 模式设定好了,停止按键操作,两秒后待运行灯亮,表示模式设定完毕.这时候长按按键,开始跑马灯.短按按键则返回模式设定. 当开始运行跑马灯的时候,可以设定运行一遍返回,也可以中断返回. 个人想法,不知行不行

南充市14737892306: 51单片机汇编语言编写一个跑马灯的程序,初学者做实验用,具体要求如下,好了可以加分 -
爨琬盐酸: 程序1:ORG 0000HLJMP MAINORG 0030H MAIN:MOV SP,#5FH LOOP:MOV A,P2MOV B,AMOV P0,AMOV P1,#0FFH LOOP1:LCALL DELAYMOV C,P1.7MOV A,P0RLC AMOV P0,AMOV A,P1RLC AMOV P1,AMOV A,P2...

南充市14737892306: 51单片机汇编程序跑马灯 -
爨琬盐酸: 答疑解难 跑马灯程序 ORG 0000H LJMP MAIN ORG 0100H MAIN: JB P0.7,MAIN ;等待开始键按下 LCALL YS ;按键延时 JB P0.7,MAIN MOV A,#7FH ;是开始键按下 则跑马灯开始运行 LL: MOV P1,A LCALL YS ;显示延时 RR A ;循环右移一...

南充市14737892306: 单片机汇编程序.求程序短跑计时器怎么弄,有99毫秒,60秒,2分,一共5个数码管显示,有一开关暂停 -
爨琬盐酸: 1、看完吴鉴鹰单片机51视频不代表自己会设计会编程,你应该找些自己想到的或者找导师要的项目做一下(要完整),要对单片机的寄存器设置、中断、串口通信比较熟练.吴鉴鹰的单片机项目精讲资料不错,可以参阅2、在做项目过程中,...

南充市14737892306: 用51系列单片机编写一个跑马灯程序.哪位大侠帮帮忙,在线等..... -
爨琬盐酸: 程序我给你,假如说使用P1口作为输出口,P2^6作为开关,单片机用52的,按键用的是不带锁的按键开关,未按下时为高电平,按下后变成低电平,用P2...

南充市14737892306: 用汇编语言编写一个跑马灯音乐程序,用89C51单片机的P1.0到P1.7接八个LED
爨琬盐酸: 注意字符表未经验证, 请自行调试#include <AT89X51.H>#define uchar unsigned char #define uint unsigned intconst unsigned char design[16]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x10,0x00};void ...

南充市14737892306: 用汇编语言编写一个跑马灯音乐程序,用89C51单片机的P1.0到P1.7接八个LED -
爨琬盐酸: 注意字符表未经验证, 请自行调试#include <AT89X51.H> #define uchar unsigned char #define uint unsigned int const unsigned char design[16]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x10,0x00};void ...

南充市14737892306: 求一51单片机程序跑马灯,P1口接按键,p0口输出跑马灯,按2键跑马灯从两边走,3键中间往两边走,4键左右 -
爨琬盐酸: /***************** 晶振4MHZ,按键key1为P3.4,P3.5接口 功能:按 key1键三次,P1灯亮,再按一次灭 ,如此重复 ******************/ #includesbit key1 = P3^4; /****************** void delay40us(uint time) 输入参数:time 输出参数:无 函数功能:延时...

南充市14737892306: 怎么用80c51单片机编写一个跑马灯程序? -
爨琬盐酸: #include<reg51.h>#include<intrins.h> void delayms(unsigned char ms) { unsigned char i; while(ms--) { for(i = 0; i < 120; i++); } } main() { unsigned char LED; LED = 0xfe; P2 = LED; while(1) { delayms(250); LED = _crol_(LED,1); //循环右移1位,点亮下一个LED 此函数位库函数 P2 = LED; } }

南充市14737892306: 求个89c51单片机 汇编语言设计的LED跑马灯的程序 -
爨琬盐酸: 查询方式:ORG 0000H AJMP MAIN MAIN: MOV P1,#01H MOV R0,#8 MOV A,P1 XU: RL A MOV P1,A ACALL DELAY DJNZ R0,XU AJMP MAIN DELAY: MOV R0,#0FFH ONE:MOV R1,#0FFH TWO:MOV R2,#02H THE:DJNZ R2,THE DJNZ R1,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网