导航:首页 > 操作系统 > 单片机32彩灯

单片机32彩灯

发布时间:2023-04-11 09:06:32

㈠ 如何用AT89C51单片机点亮32个LED灯求详细原理图。各位帮帮忙了!!!谢谢啦!

呵呵,最简单的,就是把四个端口的32条IO各连到一个LED的负极,然后每个LED各串一个电阻到电源.
不过这样的话,你的单片机就不能干别的事了.
当然也可以通过扩展,或者用矩阵,方法就很多了.

㈡ 单片机彩灯控制

ORG 0000H
MOV R1,#0FEH ;使左1灯亮的信号
MOV R6,#8 ;设置循环次数
LOOP:
MOV P1,R1
LCALL DEL_1S
MOV A,R1
RL A
MOV R1,A
DJNZ R6,LOOP ;当最右灯亮后结束循环
MOV R6,#8 ;再次设置模脊银循环次数
LOOP1:
MOV A,R1
RR A
MOV R1,A
MOV P1,R1
LCALL DEL_1S
DJNZ R6,LOOP1 ;当最左边的灯亮后旦宴结束循环
MOV R6,#4 ;第三次设置循环的次数 ;;;这里不用R6!!!!
LOOP2:
MOV P1,#0 ;全野悔亮
LCALL DEL_05S
MOV P1,#0FFH ;全灭
DJNZ R6,LOOP2 ;四次后结束循环
AJMP $

㈢ 单片机控制32盏灯循环显示

按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统。8051单片机是Intel公司生产的,除无片内ROM外,其余特性与MCS-51单片机基本一样。8051单片机都采用40引脚的直插封装(DIP方式),在单片机的40条引脚中有2条专团悔用于主电源的引脚,2条外接晶体的引森或雀脚,4条控制或与其它电源复用的引脚,32条输入/输出(I/O)引脚。8051单片机的引脚除了电源、复位、时钟接入,用户I/O口外,其余管脚是为实现系统扩展而设置的。
因此,本流水灯实际上就是一个带有8个发光二极管的单片机最小应用系统,即为由单片机8051、发光二极管和必要的软件组成的单个单片机系统。此系统利用单片机的P1.0-P1.7作为8段显示LED的段控码输入,当位控线输入高电平时对应的LED点亮。再利用单片机内部的定时器对每一个输出口的电平做时间控制,实现每一个接口出现循环的高低电平,从而实现对每一个接口所接灯的循环控制,使32盏灯各依次亮灭。
(1)、单片机的选择
选用8031单片机,配备11.0592MHz晶振,复位电路采用上电复位
(2)、显示电路此早选择
采用软件译码动态显示,P0.0-P0.7作发光二极管的位选口。码管的段选口。考虑直接用单片机I/O口作位选时可能驱动功率不够,可采用三极管9012作驱动,共阳极数码管显示。 (3)、电源选择 采用直流5V电源供电。

㈣ 单片机编程 彩灯闪烁

你可以将灯连接到p1口来实现( 假设有八个彩灯,且为共阳的);
1.轮流点亮 逐个点亮
MOV A,#11111110B
;先点亮连p1.0的灯,然后是p1.1的,一直到p1.7的,然后又点亮p1.0的
LOOP:
MOV P1,A
ACALL DELAY;你建一个延时子程序使灯亮一段时间
RL A
SJMP LOOP
2.间隔点亮
MOV A,#10101010B
;先点亮连p1.0,p1.2,p1.4,p1.6的灯,然后是p1.1,p1.3,p1.5,p1.7的
LOOP:
MOV P1,A
ACALL DELAY;你建一个延时子程序使灯亮保持一段时间
RL A
SJMP LOOP
3.全灭全亮
MOV A,#00000000B
;先全部点亮,然后再全灭
LOOP:
MOV P1,A
ACALL DELAY;你建一个延时子程序使灯亮保持一段时间
CPL A
SJMP LOOP

㈤ 怎么用51单片机控制32个led灯但是不用完32个引脚,还要能实现很多方式的亮灭,怎么实现。

用51单片机控制32个led灯,又不能全用32个IO引脚,还要能实现很多方式的亮灭,这很容易实现。扩展四个并行口就行了,一个并行口控制8个LED灯,最常用的是8位锁存器74HC573,用P0口做数据线,再用P2.0~P2.3做锁存控制线,共用12个IO脚,就可以了。剩下的引脚做其它用不受影响。而扩展的32个灯可以做任意的变化的花样。

㈥ 51单片机能否正常驱动32盏LED灯LED灯做流水灯用。求高人解答!

驱动小功率LED是没有问题的。1个51单片机外加4个PNP三极管(如C9012或8550),以及12个电阻就可以了。将32个LED分成4组共阳连接,采用动态扫描方式输出驱动LED,这样共占用单片机12根口线。

㈦ 51单片机32个流水灯编程如何实现指定其中某一个灯亮,如何实现多种花样亮灯

要51单片机控制32个流水灯,关键是要解决电路设计,只要能设计出电路来,编程实现控制指定其中某一个灯亮,并实现多种花样亮灯,就容易了。如果只做32个流水灯,就用单片机的四个并行口,共32个IO引脚全部用上,正好控制32个流水灯。如果引脚还有其他应用,可用四片锁存器,也可以控制32个流水灯了。

㈧ 求51单片机驱动32盏LED流水灯(单向流水,全部亮时闪烁两次,双向流水,全部亮时闪烁两次)的C程序!谢谢

这个比较简单吧
uchar table[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

void delay();//自己写吧 延迟一秒
void led_blink();//~~~~~~~~~~~~
void single_stream();//单向流水函数声明
void double_stream();//~~~~~~~~

void led_blink() //全部亮时闪烁两次

{
uchar i;
if(P3^7==0)

{ i=2;

while(i--)

{
P0=0x00;//低电平点亮
P1=0x00;
P2=0x00;
P3=0x00;
delay();
P0=0xff;//熄灭
P1=0xff;
P2=0xff;
P3=0xff;
delay();

}
}

}
void single_stream()//单向流水灯
{
uchar i;//自己定义一下 unsigned char

for(i=0;i<8;i++)
{
P0=table[i];//逐个点亮led0-7 第零组

delay();

}
for(i=0;i<8;i++)
{
P1=table[i];//第一组
delay();
}
for(i=0;i<8;i++)
{
P2=table[i];//第二组
delay();
}
for(i=0;i<8;i++)
{
P3=table[i];//第三组
delay();
}

}

void double_stream()//这个你也自己写吧
{

}

void main()//main 函数就调用下 前面的就可以了。。

{
while(1)
{
single_stream();
led_blink();
double_stream();
led_blink();
}

}// 大概就是这样。。我没测试

阅读全文

与单片机32彩灯相关的资料

热点内容
我的世界如何编程 浏览:84
vue反编译代码有问题 浏览:948
linuxshell字符串连接字符串 浏览:51
androidviewpager刷新 浏览:438
python编程计算平均分 浏览:678
加密数字货币市值查询 浏览:692
时尚商圈app怎么样 浏览:584
stacklesspython教程 浏览:138
用命令行禁用135端口 浏览:212
linux防火墙编程 浏览:627
pdf阅读器删除 浏览:979
考研人如何缓解压力 浏览:822
买电暖壶哪个app便宜 浏览:505
洛克王国忘记服务器了怎么办 浏览:782
为什么cf登录服务器没反应 浏览:695
服务器如何获取文件列表 浏览:673
creo五轴编程光盘 浏览:14
苹果app网络验证在哪里 浏览:14
博科清空命令 浏览:384
简爱英文pdf 浏览:376