问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求个89c51单片机 汇编语言设计的LED跑马灯的程序

发布网友 发布时间:2022-04-30 08:09

我来回答

3个回答

热心网友 时间:2022-06-19 13:55

查询方式:
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,TWO
DJNZ R0,ONE(将近1S)
RET
END
中断方式:
org 0000h ;程序从0000开始运行
jmp init;跳到主程序
init:
mov ie,#10000001b ;中断使能
mov ip,#00000001b ;中断优先
mov tcon,#0000000b ;中断为电平触发
main: ;主程序循环点亮
mov p1,#00h ;全亮
lcall delay ;延时一段时间
mov a,#0feh ;每次只亮一个灯。
loop: mov p1,a ;输出到p1
lcall delay ; 延时
rl a ;循环左移。
ajmp loop ; 跳转main继续循环

delay: mov r5,#20 ;延时子程序1闪烁灯调用
d1:mov r6,#20
d2: mov r7,#250
djnz r7,$
djnz r6,d2
djnz r5,d1(时间此处可自行设置)

热心网友 时间:2022-06-19 13:55

我只有C语言编写的,你可以借鉴下!
#include <reg52.h>

#define uint unsigned int
#define uchar unsigned char

sbit DAT164 =P2^5;
sbit CLK164 =P2^4;
sbit b0=P0^0;
sbit b1=P0^1;

uchar sec,sec1,sec2,LED,a;

uchar code LEDMAP[] = {
0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xA7,0xA1,0x86,0x8E
};//定义显示数组

void delay(uchar z)//延时子程序
{
uchar x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

void send164(void) //往164中送数据
{
uchar data j;
for (j = 0; j < 8; j++)
{
if (LED & 0x80)
DAT164 = 1;
else DAT164 = 0;
CLK164 = 1;
CLK164 = 0;
LED <<= 1;
}
}

void init(void)//程序初始化
{
TMOD=0x01;
TH0=(65536-2500)/256;
TL0=(65536-2500)%256;
IE=0x82;
TR0=1;
sec=0;
sec1=0;
sec2=0;
a=0;
}

void display(void)//显示子程序
{

LED=LEDMAP[sec2];//十位显示
send164();
b0=0;
delay(5);
b0=1;

LED=LEDMAP[sec1];//个位显示
send164();
b1=0;
delay(5);
b1=1;
}

void main(void)//主程序
{
init();
while(1)
display();

}

void time() interrupt 1 using 3//定时10毫秒
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
a++;
if(a==10)//如果到100毫秒
{
a=0;
sec++;//分加
sec1=sec%10;//送给秒个位
sec2=sec/10;//送给秒十位
if(sec==99)//如过到99则为0
sec=0;
}

}

热心网友 时间:2022-06-19 13:56

参考一下这里:
http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/7f5d2259de6fa78d810a18da.html

http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/5adeb99112822680a877a415.html

http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/3aec3b946647c546d1135e97.html
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
武汉民政职业学院地址在哪里 全国有哪些民政学院 武汉民政学院 北京哪些区较好 北京哪个区环境好 北京海淀区属于什么档次 北京市哪个区最好 北京哪个区房子最好 递延是什么意思通俗 婚后是不是一定要自己买房子才可以结婚呢? 铬8与铬12有什么区别 mcgs脚本程序定时器五秒控制指示灯依次亮有四个按钮,四个开关 可以分别控制按钮的亮灭,当一个开关_百度问一问 加工cr12的材料的最佳刀具材料有哪些? 游戏王的资料 用粉象生活充值话费/视频会员有优惠吗? 7月1日出生的动漫人物 小赢卡贷逾期会怎么样?小赢卡贷逾期后果 关于动漫主角的生日 7月出生的动漫人物有谁? 你还知道漩涡鸣人的声优姐姐配过哪些经典角色? 除了翼支付以外,还有没有可以方便生活的充值平台? 优享生活充值怎么要充值到别人的银行卡号呢? 7月7日出生的动漫人物 校智付怎么充值生活费 决斗链接花嫁白龙怎么得 大家好,哪位知道我手机这个页面的掌上生活充值可靠不? 游戏王决斗链接国际服的神龙末日龙在哪个卡组里抽? 微信生活缴费里充值水费该怎样充啊 十年八个影后,章子怡一句不认识,徐峥反驳:她才是真正演员,你认识吗? 生活缴费折扣充值靠谱吗 求一部电影,好像是徐峥演的,里面有买汽油的场景。1500一桶,被叫做高价汽油,请问这部电影叫什么名 “采菊东篱下,悠然见南山.”的“见”拼音怎么读 采菊东篱下,悠然见南山拼音 “采菊东篱下,悠然见南山”中的“见”拼音是什么? “采菊东篱下,悠然见南山”中的“见”拼音是什么? &quot;采菊东篱下,悠然见南山.&quot;的&quot;见&quot;读什么音? &quot;采菊东篱下,悠然见南山.&quot;的&quot;见&quot;读什么音? 重庆的戏曲艺术被称为什么 采菊东篱下,悠然见南山.中的“见”是哪个读音 采菊东篱下,悠然见南山.中的“见”是哪个读音 采菊东篱下,悠然见南山怎么读音 采菊东篱下,悠然见南山怎么读音 采菊东篱下 悠然见南山中的见怎么读 采菊东篱下 悠然见南山中的见怎么读 “采菊东篱下,悠然见南山”的“见”怎么读? “采菊东篱下,悠然见南山”的“见”怎么读? 重庆历史文化 采菊东篱下,悠然见南山。中的见读xian还是jian. 采菊东篱下,悠然见南山。中的见读xian还是jian. 采菊东篱下,悠然见南山中的见怎么读? 采菊东篱下,悠然见南山中的见怎么读?