51单片机控制ledled室内全彩单元板板,怎么显示汉字?

查看: 7401|回复: 24
STM32和51单片机控制标准08接口 LED单元板 点阵单元板源码样例等资料
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
本帖最后由 cornrn 于
09:42 编辑
在闲鱼买了几块LED点阵屏,想着用战舰mini控制显示玩,都说很简单.1.LED显示屏的扫描方式  LED显示屏的扫描方式有静态、1/2、1/4、1/8、1/16几种。这些扫描方式具体是什么意思呢?我们以1/16扫描方式为例来说明。因为LED显示屏是逐行刷新显示的,所以在任意时刻我们只能控制其任意一行的显示,每次刷新显示一行,16行为一个扫描周期,这就是1/16扫描方式。当然了,一个扫描周期的时间必须要小于人眼视觉暂留的时间(约0.05秒到0.2秒),否则,人眼会观察到LED显示屏所呈现的画面出现闪烁。 2.LED显示屏的接口形式  LED显示屏的接口形式有04接口、08接口、12接口几种,这里只介绍08接口。  08接口的管脚定义如图1所示。图1 08接口管脚定义  其中,管脚LA、LB、LC、LD表示行信号;管脚R1、R2、G1、G2表示列信号;管脚EN表示使能信号;管脚SCK表示时钟信号;管脚STB表示锁存信号;管脚GND表示接地。  那么,管脚LA、LB、LC、LD是如何来控制行信号,从而实现1/16扫描方式的。其实很简单,这是通过两个3-8译码器74HC138芯片来实现,通过这两个芯片可以实现如下的功能:  当管脚LD、LC、LB、LA的输出分别为0000时,LED显示屏的第一行被选中;  当管脚LD、LC、LB、LA的输出分别为0001时,LED显示屏的第二行被选中;  当管脚LD、LC、LB、LA的输出分别为0010时,LED显示屏的第三行被选中;  ......  当管脚LD、LC、LB、LA的输出分别为1111时,LED显示屏的第十六行被选中。  现在,我们已经知道如何通过08接口的四个行信号LA、LB、LC、LD来控制LED显示屏的每一行了。将08接口的四个列信号都接地,循环给四个行信号输入,就可以点亮整个LED显示屏了。  但是要在LED显示屏上显示出汉字或是图形,仅仅对行信号进行控制是远远不够的,我们还需要对列信号进行控制。 3.LED显示屏的列驱动  LED显示屏的列驱动使用了74HC595芯片,该芯片具有8位串行输入、8位串行/并行输出,8位锁存功能。  对于64*32的LED显示屏来说,因为其总共有64列,所以通过对8个74HC595芯片进行级联,即可将其扩展为64位串行输入,64位并行输出,从而实现对64列信号进行控制。  08接口中的管脚R1、R2、G1、G2就是用来输入64位串行数据的。其中,R1、G1分别用来控制上半屏(16行)的红、绿信号;R2、G2分别用来控制下半屏(16行)的红绿信号。因此,对于64*32的双色LED显示屏来说,总共需要使用32个74HC595芯片。  显然,当红绿信号同时使能时(列信号低电平使能),就可以控制LED显示屏显示出黄色来了。  现在,我们已经知道LED显示屏的列驱动原理,下一步就可以编写程序,让LED显示屏显示出任意我们想要的汉字或图形了。 4.示例程序  了解了LED显示屏的驱动原理之后,编写单片机程序,利用08接口对其进行控制是很容易的。  程序的大致流程应该是这样的:  (1)初始化单片机的GPIO引脚。  (2)设置08接口的使能信号EN。  (3)利用行信号选中第1行,移位串行输入第1行的列信号数据,锁存列信号,并行输出显示。  (4)利用行信号选中第2行,移位串行输入第2行的列信号数据,锁存列信号,并行输出显示。  (5)依次遍历,直到第32行,并行输出显示为止。  (6)循环进行3-5的过程。  
(45.02 KB, 下载次数: 31)
18:00 上传
(146.73 KB, 下载次数: 10)
18:04 上传
18:00 上传
点击文件名下载附件
46.21 KB, 下载次数: 1194
18:00 上传
点击文件名下载附件
3.26 KB, 下载次数: 920
18:00 上传
点击文件名下载附件
2.86 KB, 下载次数: 876
18:00 上传
点击文件名下载附件
4.18 MB, 下载次数: 23288
18:00 上传
点击文件名下载附件
4.18 MB, 下载次数: 22710
18:00 上传
点击文件名下载附件
1.12 MB, 下载次数: 2444
18:00 上传
点击文件名下载附件
8.85 MB, 下载次数: 38734
09:42 上传
点击文件名下载附件
2.46 MB, 下载次数: 12475
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
主题帖子精华
金牌会员, 积分 2054, 距离下一级还需 946 积分
在线时间154 小时
非常不错,谢谢分享。
主题帖子精华
高级会员, 积分 515, 距离下一级还需 485 积分
在线时间104 小时
主题帖子精华
新手入门, 积分 28, 距离下一级还需 -8 积分
在线时间1 小时
谢谢楼主分享
主题帖子精华
金牌会员, 积分 1763, 距离下一级还需 1237 积分
在线时间204 小时
谢谢楼主分享
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
本帖最后由 cornrn 于
09:08 编辑
其他一些资料更近
09:04 上传
点击文件名下载附件
691.12 KB, 下载次数: 382
09:04 上传
点击文件名下载附件
2.04 MB, 下载次数: 181
09:05 上传
点击文件名下载附件
5.03 MB, 下载次数: 176
09:05 上传
点击文件名下载附件
1.65 MB, 下载次数: 343
09:05 上传
点击文件名下载附件
207.42 KB, 下载次数: 313
09:05 上传
点击文件名下载附件
3.17 MB, 下载次数: 220
09:05 上传
点击文件名下载附件
18.6 MB, 下载次数: 1019
09:05 上传
点击文件名下载附件
7.68 MB, 下载次数: 6623
09:05 上传
点击文件名下载附件
11.23 KB, 下载次数: 347
09:05 上传
点击文件名下载附件
18.27 KB, 下载次数: 462
09:07 上传
点击文件名下载附件
70.74 KB, 下载次数: 324
09:07 上传
点击文件名下载附件
26.08 MB, 下载次数: 7266
09:07 上传
点击文件名下载附件
19.19 KB, 下载次数: 312
09:08 上传
点击文件名下载附件
7.21 MB, 下载次数: 151
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
BF531开发板资料分享
09:10 上传
点击文件名下载附件
15.91 MB, 下载次数: 1372
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
其他一些资料备份,需要的拿去
09:17 上传
点击文件名下载附件
231.79 KB, 下载次数: 297
09:17 上传
点击文件名下载附件
49.27 KB, 下载次数: 312
09:17 上传
点击文件名下载附件
3.94 MB, 下载次数: 123
09:17 上传
点击文件名下载附件
8.58 MB, 下载次数: 3046
09:17 上传
点击文件名下载附件
13.04 MB, 下载次数: 276
09:17 上传
点击文件名下载附件
4.04 MB, 下载次数: 2591
09:17 上传
点击文件名下载附件
1.6 MB, 下载次数: 298
09:17 上传
点击文件名下载附件
1.05 MB, 下载次数: 344
09:17 上传
点击文件名下载附件
2.84 MB, 下载次数: 3710
09:17 上传
点击文件名下载附件
349.88 KB, 下载次数: 282
09:18 上传
点击文件名下载附件
2.45 MB, 下载次数: 132
09:18 上传
点击文件名下载附件
948.17 KB, 下载次数: 300
09:18 上传
点击文件名下载附件
730.84 KB, 下载次数: 292
09:18 上传
点击文件名下载附件
18.04 MB, 下载次数: 686
09:18 上传
点击文件名下载附件
38.52 KB, 下载次数: 289
09:18 上传
点击文件名下载附件
249.04 KB, 下载次数: 282
09:18 上传
点击文件名下载附件
2.36 MB, 下载次数: 132
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
再上传一些资料可以在STM32 MINI开发板上实现的。:::
09:25 上传
点击文件名下载附件
2.46 MB, 下载次数: 7680
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
主题帖子精华
初级会员, 积分 159, 距离下一级还需 41 积分
在线时间25 小时
楼主你好&&有个问题想咨询一下 你的点阵的驱动芯片是什么型号? 我的是HC245
主题帖子精华
初级会员, 积分 159, 距离下一级还需 41 积分
在线时间25 小时
楼主你好 我用了你的程序 不知道汉字为什么显示不出来&&希望你能帮助一下&&11 &&我的QQ&&如果您能看到的话 加我qq 行吗&&谢谢
主题帖子精华
新手入门, 积分 8, 距离下一级还需 12 积分
在线时间0 小时
谢谢分享。楼主真好人。
天涯hah 该用户已被删除
提示: 作者被禁止或删除 内容自动屏蔽
主题帖子精华
新手入门, 积分 17, 距离下一级还需 3 积分
在线时间2 小时
很不错的资料,谢谢分享~
主题帖子精华
新手入门, 积分 38, 距离下一级还需 -18 积分
在线时间4 小时
6666&&谢谢分享
菜鸟鸭梨 该用户已被删除
提示: 作者被禁止或删除 内容自动屏蔽
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
楼主你好,请问您做过51单片机控制全彩单元板的程序吗?简单点亮那种就行
可以的,群里好像有人分享
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
主题帖子精华
初级会员, 积分 118, 距离下一级还需 82 积分
在线时间26 小时
主题帖子精华
高级会员, 积分 947, 距离下一级还需 53 积分
在线时间68 小时
很好的资料.谢谢啦!
主题帖子精华
新手入门, 积分 15, 距离下一级还需 5 积分
在线时间6 小时
问下32的IO口是3.3V的可以直接驱动吗? 还是一定要5V才可以
主题帖子精华
新手入门, 积分 15, 距离下一级还需 5 积分
在线时间6 小时
楼主你好 我用了你的程序 不知道汉字为什么显示不出来&&希望你能帮助一下&&11 &&我的QQ&&如果您能 ...
您好 请问你用STM32做的点阵显示屏吗 问下您请问32IO口可以直接驱动电阻屏吗&&
主题帖子精华
新手入门, 积分 15, 距离下一级还需 5 积分
在线时间6 小时
楼主你好 我用了你的程序 不知道汉字为什么显示不出来&&希望你能帮助一下&&11 &&我的QQ&&如果您能 ...
您好 请问你用STM32做的点阵显示屏吗 问下您请问32IO口可以直接驱动电阻屏吗&&
主题帖子精华
初级会员, 积分 118, 距离下一级还需 82 积分
在线时间26 小时
谢谢分享,资料很好
主题帖子精华
初级会员, 积分 118, 距离下一级还需 82 积分
在线时间26 小时
群号多少?之前做过LED显示屏售后维修,一直对这块很感兴趣
主题帖子精华
金牌会员, 积分 1354, 距离下一级还需 1646 积分
在线时间232 小时
群号多少?之前做过LED显示屏售后维修,一直对这块很感兴趣
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
Powered by豆丁微信公众号
君,已阅读到文档的结尾了呢~~
基于单片机控制的led汉字显示
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
基于单片机控制的led汉字显示
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口网站已改版,请使用新地址访问:
P10wordmoveleft 51单片机控制ledP10单元板实现文字左移,本人做项目时用的程序,有助于大家解决及时问 SCM 发 272万源代码下载- www.pudn.com
&文件名称: P10wordmoveleft& & [
& & & & &&]
&&所属分类:
&&开发工具: C-C++
&&文件大小: 24 KB
&&上传时间:
&&下载次数: 16
&&提 供 者:
&详细说明:51单片机控制ledP10单元板实现文字左移,本人做项目时用的程序,有助于大家解决及时问题-51 MCU control unit board ledP10 achieve a text to the left, when I do the project with the program that helps you solve the problem in a timely manner
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&文字左移&&........\STARTUP.A51&&........\STARTUP.LST&&........\STARTUP.OBJ&&........\Text2.c&&........\Text2.LST&&........\Text2.OBJ&&........\wenzi&&........\wenzi.hex&&........\wenzi.lnp&&........\wenzi.M51&&........\wenzi.Opt&&........\wenzi.plg&&........\wenzi.Uv2&&........\wenzi_Opt.Bak&&........\wenzi_Uv2.Bak
&[]:很好,推荐下载&[]:很好,推荐下载
&近期下载过的用户:
&输入关键字,在本站272万海量源码库中尽情搜索:
本程序是16*32点阵测试用程序,稍做修改便可以使用。主要方便学习和自制LED点阵用。
&[] - P10单元板的程序 很难得的!好久才写出来的 希望可以好好学习一下。。
&[] - 用单片机控制16X64的点阵屏,可以上下左右显示滚动的汉子、时间、温度等
&[] - P10板51驱动程序,带左移,静态显示等功能。有详细的注释说明。
&[] - 实现P10单元板的51驱动作用,编程语言C
&[] - P10单元板32*32点阵驱动源码,现流行的P10户外单元板
&[] - p10-1R(1/4)点阵屏电路图,PCB电路以及程序,好东西,大家分享
&[] - 1/4led扫描显示屏。16-32点阵的上下左右移,硬件用一个74hc138作位选和16个74hc595连接而成的.博客分类:
单片机应用经常会用到液晶显示或者LED点阵屏,是用点阵的方式显示的,要显示汉字或字符的时候会用到字模,字模就是字在点阵上显示时对应的编码。以字模的方式存储图形或者文字,每一个点都需要一个bit位来存储,该位为0代表该像素点不显示,为1代表显示。这样,一个字节就可以存储8个像素点的显示情况。
一般采用宋体小四号的字符来做显示,这样一个英文字符刚好占8*16个像素;而汉字需要两倍,即16*16像素来显示一个汉字。这样,存储一个英文字符每行8个点需要1个字节存储,一共16行需要16个字节, 同理一个汉字需要32个
所以如果M这个英文字符按从左到右从上到下的方式从高位到低位取模
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 1 0 1 1 1 0
0 1 1 0 1 1 0 0
0 1 1 0 1 1 0 0
0 1 1 0 1 1 0 0
0 1 1 0 1 1 0 0
0 1 0 1 0 1 0 0
0 1 0 1 0 1 0 0
0 1 0 1 0 1 0 0
0 1 0 1 0 1 0 0
0 1 0 1 0 1 0 0
1 1 0 1 0 1 1 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
其中为1的地方画出了M的形状;如果把0换成空格,由1拼成的M就显示出来了:
因此,我们要记录16行中每一行由0和1组成的一字节整数的值,就记录了这张位图;
如第1,2,3行是,它的值为0,第四行是,用十六进制表示就是0xee;
以此类推,得到16个单字节整数:0x00,0x00,0x00,0xEE,0x6C,0x6C,0x6C,0x6C,0x54,0x54,0x54,0x54,0x54,0xD6,0x00,0x00
这些数组可以通过软件计算出来,我们只需要在单片机中通过代码读取这些数据就可以显示出来了,
解析过程与编码这些数据是刚好相反的。
#include &stdio.h&
#include &stdlib.h&
unsigned char am[] = {0x00,0x00,0x00,0xEE,0x6C,0x6C,0x6C,0x6C,0x54,0x54,0x54,0x54,0x54,0xD6,0x00,0x00}; //M
void showM(){
for (i = 0; i & 16; ++i) { //对于每一行
t = am[i];
//取出代表这一行点的数据
for (j = 0; j & 8; ++j) { //对于这行中的每个点
if (0x80 & t) {
//从左到右如果最左位1,则显示
printf("MM");
//将右边的数据往左移动
printf("\n");
int main(void) {
return EXIT_SUCCESS;
然而,对于中文字符,每个汉字每行有16个像素,需要2个字节,所以每行需要对两个字节数据进行打印,所以要增加一个for循环:
#include &stdio.h&
#include &stdlib.h&
unsigned char ch[] = {
此字体下对应的点阵为:宽x高=16x16
0x20,0x3C,0x27,0xC0,0x22,0x48,0xF9,0x50,0x27,0xFE,0x20,0xE0,0x29,0x50,0x32,0x4E,
0x6F,0xFC,0xA2,0x48,0x22,0x48,0x23,0xF8,0x22,0x48,0x22,0x48,0xA3,0xF8,0x42,0x08
void showM()
unsigned char t,
//分别表示一个汉字每行的左半边8像素和右半边8像素
for (i = 0; i & 16; ++i)
{ //对于每一行
t = ch[i * 2];
//取出代表这一行点的数据
u = ch[i * 2 + 1];
for (j = 0; j & 8; ++j)//打印左半边像素
{ //对于这行中的每个点
if (0x80 & t)
//从左到右如果最左位1,则显示
printf("MM");
//将右边的数据往左移动
for (j = 0; j & 8; ++j)//打印右半边像素
{ //对于这行中的每个点
if (0x80 & u)
//从左到右如果最左位1,则显示
printf("MM");
//将右边的数据往左移动
printf("\n");
int main(void) {
return EXIT_SUCCESS;
打印结果:
MMMMMMMMMM
MMMMMMMMMM
MMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMM
MMMMMMMMMMMMMM
这样就显示了一个汉字。
(256.6 KB)
下载次数: 19
浏览: 698683 次
来自: 珠海
“这个电脑蓝牙不可用!”原因多半是你没打开蓝牙
这个加密压缩后, linux环境下可以解压缩吗
兄弟简单明了。顶你
不像有的文章 介绍一大堆没整明白是什么地下 赞一个 ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'& 单片机LED汉字点阵显示的设计详解
单片机LED汉字点阵显示的设计详解
显示屏是利用点阵模块或像素单元组成的平面式显示屏幕。它具有发光率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的用于公交汽车、商店、体育场馆、车站、学校、银行、高速公路等公共场所的信息发布和广告宣传。发展较快,本文讲述了基于AT89C51单片机16×16LED汉字点阵滚动显示的基本原理、硬件组成与设计、程序编写与调试、Proteus软件仿真等基本环节和相关技术。
1 硬件电路组成及工作原理
本产品采用以AT89C51单片机为核心芯片的电路来实现,主要由AT89C51芯片、时钟电路、复位电路、列扫描驱动电路(74HCl54)、16×16LED点阵5部分组成,如图1所示。其中,AT89C51是一种带4kB闪烁可编程可擦除只读存储器(Falsh Programmable and Erasable Read OnlyMemory,FPEROM)的低电压、高性能CMOS型8位微处理器,俗称单片机。该器件采用ATM高密度非易失存储器制造技术制造,工业标准的MCS一5l指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,能够进行1 000次写/擦循环,数据保留时间为10年。他是一种高效微控制器,为很多嵌人式控制系统提供了一种灵活性高且价廉的方案。因此,在智能化电子设计与制作过程中经常用到AT89C51芯片。时钟电路由AT89C5l的18,19脚的时钟端(XTAI l及XTAL2)以及12 MHz晶振X、电容C2、C3组成,采用片内振荡方式。复位电路采用简易的上电复位电路,主要由电阻R,R2,电容C,开关K组成,分别接至AT89C51的RST复位输入端。LED点阵显示屏采用16×16共256个象素的点阵,可通过万用表检测发光二极管的方法测试判断出该点阵的引脚分布。
我们把行列总线接在单片机的I/0口,然后把上面分析到的扫描代码送入总线,就可以得到显示的汉字了。但是若将LED点阵的行列端口全部直接接入89S5 1单片机,则需要使用32条I/0口,这样会造成I/0口资源的耗尽,系统也再无扩充的余地。因此,我们在实际应用中只是将LED点阵的16条行线直接接在P0口和P2口,至于列选扫描信号则是由4—16线译码器74HCl54来选择控制,这样一来列选控制只使用了单片机的4个I/O口,节约了很多I/O口资源,为单片机系统扩充使用功能提供了条件。考虑到P0口必需设置上拉电阻,我们采用4.7 kΩ排电阻作为上拉电阻。汉字扫描显示的基本过程是这样的:通电后由于电阻R,电容c1的作用,使单片机的RST复位脚电平先高后低,从而达到复位;之后,在C、C3、X以及单片机内部时钟电路的作用下,单片机89C51按照设定的程序在P0和P2接口输出与内部汉字对应的代码电平送至LED点阵的行选线(高电平驱动),同时在P1.1,P1.2,P1.3,P1.4接口输出列选扫描信号(低电平驱动),从而选中相应的象素LED发光,并利用人眼的视觉暂留特性合成整个汉字的显示。再改变取表地址实现汉字的滚动显示。
来源:电源网
【】【】 【】
相关LED显示屏技术
推荐技术帖&&
精彩博文&&
推荐资讯&&

我要回帖

更多关于 彩亮led单元板 的文章

 

随机推荐