① 基于51单片机的LED点阵显示屏设计 能给我一份吗谢谢
ABSTRACT
II
第1章
前言
1
1.1
LED电子显示屏概述
1
1.3
LED显示屏的应用示例
2
第2章
显示原理及控制方式分析
3
2.1
LED点阵模块结构
3
2.2
LED动态显示原理
4
2.3
LED常见的控制方式
4
第3章
方案设计与分析
7
3.1
显示单元
7
3.2
滚屏的实现
7
3.3
关于可扩展性
7
3.4
微控制器的考虑
7
3.5
关于点阵数据的存储方式
8
3.6
关于显示内容的更新
9
3.7
总体电路结构及工作原理
9
3.7.1
硬件电路框图
9
3.7.2
工作原理
11
第4章
硬件电路设计
13
4.1
显示单元电路设计
13
4.1.1
LED点阵模块的选择
13
4.1.2
列驱动电路设计
13
4.1.3
行驱动电路设计
14
4.2
单片机控制系统电路设计
15
4.2.1
单片机的选型
15
4.2.2
单片机系统电路设计
16
4.3
字库与单片机的接口设计
17
4.3.1
字库芯片选型
17
4.3.2
字库芯片的使用方法
17
4.3.3
字库芯片的电气特性
18
4.3.4
字库芯片与单片机的接口设计
19
4.3.5
字库芯片3.3V电源设计
20
4.3.6
5V-3.3V的电平转换电路设计
20
② 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单片机的16x16 led点阵显示屏设计原理与电路图
ORG0000H
AJMPBEGIN
ORG0030H
BEGIN:
MOVR0,#8
MAIN:
MOVA,R0
MOVR2,#00H
MOVSP,#60H
MOVR3,A
MOVR4,#16
MOVDPTR,#WORDTAB
START:
JNBP1.0,SLOW
JNBP1.1,SOON
MOVR1,#00H
SCAN8:
MOVA,R1
SWAPA
MOVP3,A
SWAPA
INCA
MOVR1,A
MOVA,R2
MOVCA,@A+DPTR
CJNEA,#0DDH,NEXT
AJMPMAIN
NEXT:
MOVP2,A
INCR2
MOVA,R2
MOVCA,@A+DPTR
MOVP0,A
INCR2
LCALLDELAY1400
MOVP0,#00H
MOVP2,#00H
DJNZR4,SCAN8
MOVR4,#16
DJNZR3,SCAN16
AJMPEND16
SCAN16:
MOVA,R2
CLRC
SUBBA,#32
MOVR2,A
AJMPSTART
END16:
INCDPTR
INCDPTR
MOVA,R2
CLRC
SUBBA,#32
MOVR2,A
MOVA,R0
MOVR3,A
AJMPSTART
SLOW:
LCALLDELAY20000
DECR0
JBP1.0,$
AJMPBACK
SOON:
LCALLDELAY20000
INCR0
JBP1.1,$
AJMPBACK
BACK:
LCALLDELAY20000
AJMPSTART
DELAY1400:;误差0us
MOVR6,#7FH
DL0:
MOVR7,#04H
DJNZR7,$
DJNZR6,DL0
RET
DELAY20000:;误差0us
MOVR6,#0D7H
DL1:
MOVR7,#2DH
DJNZR7,$
DJNZR6,DL1
NOP
NOP
RET
WORDTAB:
DB00H,1FH,80H,20H,40H,40H,20H,40H,10H,40H,08H,40H,04H,20H,02H,10H;
DB02H,10H,04H,20H,08H,40H,10H,40H,20H,40H,40H,40H,80H,20H,00H,1FH;
TAB:;结束码
DB0DDH
④ 基于51单片机的LED点阵显示屏系统的设计与实现的论文
LED显示器是用发光二极管构成的显示器。构成方式有两大类:一是笔段字符式,一般又有三种:7段(/8段)数码管、15段(/17段)数码管和6段符号显示器;二是点阵字符式,一般有5×7、5×8、8×8和16×16等若干种点阵结构。为了适应不同电路的需要,根据构成LED显示器的发光二极管公共极的极性,有共阴极和共阳极两种形式。对共阴极数码管,公共阴极接地,当各段阳极上的电平为高电平时,该段接通亮,电平为0时,该段关断不亮。对共阳极数码管则刚好相反,高电平时不亮,低电平时亮。这种器件根据显示数位分类,可以分为一位、双位和多位LED显示器,一位LED显示器就称作LED数码管,两位以上的一般就称作LED显示器。
要实现LED的汉字显示在进行、列的扫描的同时还要对其进行供电,因为每行16个二极管点亮电流很大,普通芯片的输出电流远不能满足。下面为你提供实例参考
以16×16显示器为例,你可以用并行扩展芯片8255实现点阵的行扫描,8255可以将单片机一个8位并行I/O口扩展成16位(8255的PA口、PB口同时使用);列扫描的16位可以用两个TTL门74LS164(8位移位寄存器),74LS164再接ULN2803以对电流放大后再接16×16点阵。74LS164的移位触发端A、B可以接上一片的相邻输出端,Q1或Q7这样实现能实现多个芯片连续移位,以实现显示屏汉字从右到左或从左到右的移动显示功能。
由于网络知道不能插入图片,所以不提供图片了,将具体引脚接法告诉你:8255的D0--D7数据输入端接单片机P2.0--P2.7(任一并行I/O口),A0接P2.0,A1接P2.1,/WR接单片机的/WR,/RD接高电平,如果单片机资源足够,则片选端/CS接低电平;74LS164芯片的触发端A、B接到一起,与CK脚、CLK脚、随意接到单片机的I/O上。