㈠ 用单片机仿真实现走马灯的运行效果,8只LED从左到右循环滚动点亮,时间间隔0.5s
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
㈡ 单片机中走马灯如何编程
就是所谓的流水灯,可以说是单片机中最简单的了,直接用一组总线控制(P0,P1,P2,P3口都可以),控制相应的LED的端口的高低电平就可以(至于是高电平还是低电平就要看你的硬件电路了)
㈢ 单片机走马灯汇编程序
KEY EQU P1.0
KEYVAL EQU 30H
LED EQU 31H
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV LED,#0FEH
JB KEY,LP
LCALL DELAY
JB KEY,LP
INC KEYVAL
LP:
MOV A,KEYVAL
CJNE A,#2,LP1
LP1:
JC LP2
MOV KEYVAL,#0
CLR A
LP2:
JNZ LP3
MOV A,LED
MOV P0,A
RL A
MOV LED,A
LCALL DELAY
LCALL DELAY
SJMP MAIN
LP3:
DEC A
JNZ LP4
MOV A,LED
MOV P0,A
RR A
MOV LED,A
LCALL DELAY
LCALL DELAY
LP4:
LJMP MAIN
DELAY:
MOV R2,#60
DELAY1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DELAY1
RET
END
㈣ 期末大作业 求51单片机控制走马灯的程序设计然后带图
单片机控制的马上程序,当然根据它的提示来操作就可以了
㈤ 求单片机走马灯程序
大兄弟,看来你是要交老师作业吧。自己好好学习下单片机,很简单,没有你想的那么难。给你几个提示,自己去网络上搜吧,就当为以后工作提前学点。
实验一:最基本的循环控制 + 外部中断控制循环
实验二:这个对初学应该是麻烦点的,因为只靠一般的89s51等等类的单片机,必须要加ADC(这类IC很多,就是A/D转换器,AD0809等等)
实验三:试验一你会了这个更简单(可以扩展LED数码管显示,数字的二进制码应该不用教了吧)
如果你还想学的话,我这里有以前玩开发板时,送的光盘资料,可以给你学下,都是些最基本的程序和电路。当然仅仅想完成任务的话,别找我啦。谢谢!
㈥ 单片机串行口设计走马灯,断开其中两根串口线其中一条,为什么不会影响实验结果
单片机串行口设计走马灯,断开其中两根串口线其中一条,为什么不会影响实验结果
㈦ 单片机走马灯程序
//==============
#include <reg51.h>
#define count 11
char TAB[]={ 0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x83,0xf8,0x80,0x98,
0xff};
char disp[11][4]={ {10,10,10,10},
{1,10,10,10},{10,1,10,10},{10,10,1,10},{10,10,10,1},
{2,10,10,1},{10,2,10,1},{10,10,2,1},
{3,10,2,1},{10,3,2,1},
{4,3,2,1}};
void delay1ms(int);
void scanner(char);
//================
main()
{ char i=0;
while(1)
{
if(i==0)
{ for(i=0;i<count;i++)
scanner(i);
}
else
{ for(i=10;i>=0;i--)
{
scanner(i);
if(i==0)break;}
}
}
}
//================
void delay1ms(int x )
{ int i,j;
for(i=0;i<x;i++)
for(j=0;j<=120;j++);
}
//====================
void scanner(char x)
{ char i,j,scan,BCD;
for(i=0;i<30;i++)
{ scan=1;
for(j=0;j<4;j++)
{ P0=0xff;
P2=~scan;
BCD=disp[x][j];
P0=TAB[BCD];
delay1ms(4);
scan<<=1;
}
}
}
㈧ 在单片机编写走马灯程序中,怎样实现当按下一个键使八个灯全亮,当松开按键时又回到原来的亮灯的程序中。
这个程序结构的问题,有很多种方法,这里提供两种做为参考,一,以按键为条件做个分支(就是if else语句),按键无按下时运行跑马灯,有按键时输出全亮。这是初学者最容易理解的。二,程序的结构调整一下,做一个输出的BUF,按键按下时填BUF全亮的数据,这时跑马灯的数据是停在那里的,不按下时BUF放入跑马灯的数据,开始继续运行,这个结构放在这实际不实用,但当很多地方同时操作同一设备时就有用了,写大一点的程序一般都这么用,我个人的见解。
㈨ 单片机走马灯总结怎么写就100字左右
最近无意间看到了涉及到跑马灯效果的代码,于是在网上查阅了很多资料,在这里对自己看的一些文章进行一下总结,顺便加上自己的一些体会。
首先我们要实现走马灯这样一个效果,通常来说都是在TextView这个控件中来实现的,而且其中的文字一定是单行显示,如果多行显示,那走马灯效果也就失去了存在的意义。另外,在EditText中使用走马灯没有必要,也不合理,实际上对于EditText来说android:ellipsize这个属性只有对于设置在android:hint中的文字
的时候是有用的,而且android:ellipsize="marquee"这个用法不能用在EditText控件上。对于在EditText用户输入的文字,android:ellipsize这个属性没有用处。关于EditText
设置android:ellipsize的相关用法以后再讲,在这里也算留个标记,以防自己忘了。
㈩ 51单片机设计跑马灯的程序用(c语言)编写
|P1口接8个发光二极管共阳
#include <AT89X51.H>
unsigned char i;
unsigned char temp;
unsigned char a,b;
void delay(void)
{
unsigned char m,n,s;
for(m=20;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}
void main(void)
{
while(1)
{
temp=0xfe;
P1=temp;
delay();
for(i=1;i<8;i++)
{
a=temp<<i;
b=temp>>(8-i);
P1=a|b;
delay();
}
for(i=1;i<8;i++)
{
a=temp>>i;
b=temp<<(8-i);
P1=a|b;
delay();
}
}
}
(10)走马灯单片机实验扩展阅读:
Proteus 自从有了单片机也就有了开发系统,随着单片机的发展开发系统也在不断发展。 keil是一种先进的单片机集成开发系统。它代表着汇编语言单片机开发系统的最新发展,首创多项便利技术,将开发的编程/仿真/调试/写入/加密等所有过程一气呵成,中间不须任何编译或汇编。