新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于51单片机和可编程逻辑器件实现LED显示屏的硬件设计

基于51单片机和可编程逻辑器件实现LED显示屏的硬件设计

作者:时间:2011-12-06来源:网络收藏

0 引言

本文引用地址:http://www.amcfsurvey.com/article/172377.htm

主要由电流驱动电路及点阵阵列、控制系统和PC端管理软件三部分构成(图1)。控制系统负责接收、转换和处理各种外部信号,并扫描控制,然后驱动点阵显示需要的文字或图案。控制系统作为LED的核心部分,直接决定了的显示效果和性能的优劣。本文详细分析采用Verilog HDL对ATF1508AS进行编程,双口RAM访问和产生LED点阵驱动电路所需的各种时序信号。

1 LED显示屏的基本结构及关键技术

本系统中,控制系统采用+CPLD的方案来,整个控制系统可分为:信号接收及处理模块和CPLD的扫描控制模块和LED点阵驱动模块,如图1 所示。本系统的关键技术是使用双口RAM和CPLD芯片,解决LED显示屏中高速数据传输和快速扫描控制的难题,大大提高了动态显示的刷新率。

信号接收与处理模块的功能是AT89S52通过串口接收PC送来的点阵信息,同时对点阵信息做各种不同的处理。利用双口RAM IDT7007在和ATF1508AS之间以共享的方式建立高速的数据交换通道。

35.jpg

CPLD的扫描控制模块采用ATF1508AS芯片实现。其功能是从双口RAM读取点阵信息,串行化后送显示扫描驱动电路,同时输出各种所需的控制信号。CPLD具有扫描速度快,延时短等特点,克服了单片机由于传输速率慢而造成在大屏幕显示时产生的闪烁效应。

2 基于CPLD的扫描控制模块的

2.1 思想

本模块的功能是从存储器中读取数据,将数据输送到显示屏体上,同时产生各种控制信号。时序产生模块由两部分构成,一是产生访问双口RAM的时序,二是产生LED显示屏接口所需的各种信号。

电路我们采用较常见的CPLD芯片ATF1508来实现控制系统中的时序产生部分。CPLD是一种具有丰富的可变成I/O引脚的,不仅可以实现常规的功能,还可以实现复杂而独特的时序功能。软件我们采用Verilog HDL语言来进行设计。Verilog HDL是用于逻辑设计的描述语言,已成为IEEE标准。利用Verilog HDL语言对ATF1508AS进行编程,实现扫描控制模块所需的功能。

扫描控制部分的原理电路如图2所示,ATF1508AS是核心部分,需要根据系统需要定义ATF1508AS的各个I/O端口,下面是I/O端口定义和内部寄存器定义的Verilog HDL语言代码。

36.jpg

module LedSequ(color, datain, addrout, CE, OE, SEMR, RWC, sdr, sdb, sck, le, oe1, cs, clk, counter);
input clk; //系统时钟
input[7:0] datain;//RAM数据输入
input[1:0] color;//颜色控制
output[13:0] addrout;//地址输出口
output SEMR,RWC;
output CE,OE,sdr,sdb,sck,le,oe1,cs;
output[3:0] counter;
reg[3:0] hcnt;//38译码器计数器
reg [7:0] data1;//数据寄存器
reg[3:0] counter;//38翻码器输出端
reg SEMR,RWC;
reg SDA,SDC;
reg[13:0] addrout,addr;//addr地址计数器
reg[3:0] state;// 状态寄存器
reg [2:0] shcnt; //移位脉冲读数器
reg CE,OE,sdr,sdb,sck,le,oe1,cs;
reg [8:0] byte;
parameter s0=1'd0,s1=1'd1,s2=1'd2,s3=1'd3, s4=1'd4, s5=1'd5; //状态常量


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭