导航:首页 > 操作系统 > 51单片机点阵屏

51单片机点阵屏

发布时间:2022-07-04 01:22:19

⑴ 51单片机最多可以带动多少块8*8点阵屏

基本上每个8*8点阵要用到8字节内存,51的话最多有大概200字节的空余内存,大概也就25块,这就很困难了。如果可以通过特殊的算法压缩内存的话就要看个人水平了。

⑵ 51单片机LED点阵屏有灯不亮怎么办

可进入调试模式,在执行22句后,检查595数据,看看其输出是不是 0xaa,在执行23句后,检查P0口数据,看看是不是 0x7f;

⑶ 51单片机+10片 74hc595 控制16*64点阵屏显示

#include<reg52.h>
sbit HC595_DS = P2^0;
sbit HC595_STCP = P2^1;
sbit HC595_SHCP = P2^2;
sbit HC595_OE = P2^3;
void HC595_WriteByte(unsigned char value)
{
unsigned char i;

for(i=0;i<8;i++)

{
HC595_SHCP = 0;

HC595_DC = value&(0x80>>i);

HC595_SHCP = 1;

}
}
void Lattice_WriteData(unsigned char *buffer,unsigned char value,value1)
{
while(*buffer)//列扫描

{
HC595_WriteByte(*buffer++);

}
HC595_WriteByte(value);//行数据低八位
HC595_WriteByte(value1);//行数据高八位
HC595_STCP = 0;
HC595_STCP = 1;
}
unsigned char buffer[8]={0x01,0,0,0,0,0,0,0};//64列
void main()
{
HC595_OE = 0;
HC595_OE = 1;
//假设行低电平有效,列高电平有效,显示效果为第一行,第一列坐标为(0,0)的像素点亮,其他均不亮
Lattice_WriteData(buffer,0xfe,0xff);
while(1)
{

}
}

//如有问题,可再咨询

⑷ 51单片机控制的64×16LED点阵屏的电源选择

用红色1.6伏LED,,你算的差不多,,如果用蓝色3.6伏的LED,电流还要小一些,
40安的电源用不着,浪费了。。如果标的10安好的电源,没有水分,就够了,当然,单片机最好是独立供电。

⑸ 51单片机 点阵屏滚动显示姓名首字母

摘要 #include "csb.h"

⑹ 51单片机如何储存LED点阵屏显示的图案并且可以实现调用出来,求程序

首先你要确定点阵的大小,黑白(单色)点阵一个 点占一位二进制数据,128*128点占16*128个字节,即2K。用专门的软件将图形转化成十六进制数据,存储于表格中,显示时再一个一个读出,进行显示。
点阵显示屏有的是一个点一个点写入,有的是一行一行(或半行)写入,程序当然是不一样的。

⑺ 单片机 8*8点阵C51程序

一.基于51的点阵屏显示:(1)点亮第一个8*8点阵:
1.首先在Proteus下选择我们需要的元件,AT89C51、74LS138、MATRIX-8*8-GREEN(在这里使用绿色的点阵)。在Proteus
6.9中8*8的点阵总共有四种颜色,分别为MATRIX-8*8-GREEN,MATRIX-8*8-BLUE,MATRIX-8*8-ORANGE
,MATRIX-8*8-RED。
在这里请牢记:红色的为上列选下行选;其它颜色的为上行选下列选!而所有的点阵都是高电平选中列,低电平选中行!也就是说如果某一个点所处的行信号为低,列信号为高,则该点被点亮!此结论是我们编程的基础。
2.在选择完以上三个元件后,我们开始布线,具体如下图:
这里P2是列选,P3连接38译码器后作为行选。
选择38译码器的原因:38译码器每次可输出相应一个I/O口的低电平,正好与点阵屏的低电平选中行相对,并且节省了I/O口,大大方便了我们的编程和以后的扩展。
3.下面让我们把它点亮,先看一个简单的程序:
(将奇数行偶数列的点点亮,效果如下图)
下面是源代码:
/************8*8LED点阵屏显示*****************/
#include<reg51.h>
void
delay(int
z)
//延时函数
{
int
x,y;
for(x=0;x<z;x++)
for(y=0;y<110;y++);
}
void
main()
{
while(1)
{
P3=0;
//行选,选择第一行
P2=0x55;
//列选,即该行显示的数据
delay(5);
//延时
/*****下同*****/
P3=2;
//第三行
P2=0x55;
delay(5);
P3=4;
//第五行
P2=0x55;
delay(5);
P3=6;
//第七行
P2=0x55;
delay(5);
}
}
上面的程序实现了将此8*8点阵的奇数行偶数列的点点亮的功能。重点让我们看while循环内,首先是行选P3=0,此时38译码器的输入端为000,则输出端为01111111,即B0端为低电平,此时选中了点阵屏的第一行,接着列选我们给P2口赋0x55,即01010101,此时又选中了偶数列,紧接着延时。然后分别对第三、五、七行进行相同的列选。这样就点亮了此点阵屏奇数行偶数列交叉的点。
完成这个程序,我们会发现其实点阵屏的原理是如此简单,和数码管的动态显示非常相似,只不过换了一种方式而已。
对不起啦,我传了三次图片都没传上,郁闷哪!希望你能理解哈!
不过我有传一份WORD文档在我的空间里面

阅读全文

与51单片机点阵屏相关的资料

热点内容
喷油螺杆制冷压缩机 浏览:577
python员工信息登记表 浏览:375
高中美术pdf 浏览:159
java实现排列 浏览:511
javavector的用法 浏览:980
osi实现加密的三层 浏览:230
大众宝来原厂中控如何安装app 浏览:912
linux内核根文件系统 浏览:241
3d的命令面板不见了 浏览:524
武汉理工大学服务器ip地址 浏览:147
亚马逊云服务器登录 浏览:523
安卓手机如何进行文件处理 浏览:70
mysql执行系统命令 浏览:929
php支持curlhttps 浏览:142
新预算法责任 浏览:443
服务器如何处理5万人同时在线 浏览:249
哈夫曼编码数据压缩 浏览:424
锁定服务器是什么意思 浏览:383
场景检测算法 浏览:616
解压手机软件触屏 浏览:348