新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA控制的LED汉字滚动显示器设计

基于FPGA控制的LED汉字滚动显示器设计

作者: 时间:2010-09-23 来源:网络 收藏
上移时的部分程序按以下思路编制:L10~L70在CNT_YW为初态“0000”时,各信号均赋值X“00”,非初态时,均进行上移一位。即:L10=L20;L20=L30;…;L60=L70;L70=L80;对于L80,在移进过程中即前8个状态各移进一个新行,在移出即后8个状态时,都补进X“00”。程序如下:

下移程序可按相反思路去编。
3.4 显示模块DISP设计
显示模块DISP是以CNT_SM为扫描计数器,是对1kHz进行三位循环计数,由前述的时钟计数产生模块产生,WLl~WL8为待送出显示的8个8位字型码,由前述的移位模块YW提供;SW[7..O]为行扫描输出信号,连接至点阵的8个行;DATA[7..0]为行扫描时对应的列输出字型码,对外连至点阵的8列。该模块参考文献中数码管动态显示程序进行设计如下:



4 硬件实现
上述各模块分别在QualtusⅡ中通过了仿真验证,最后对整体设计进行了硬件验证。将设计载入KH31001开发板的Cyclone工系列EPlC6Q-240C8器件中,实验证明扫描情况均正常,能够按照预想进行移位显示,这说明。的内核硬件工作良好,可以正确地实现所要求的设计功能。

5 系统扩展
本文是针对8×8点阵设计,故每次取8个字形码,如果是16×16点阵,将RONZI中存储的字形码改为16位,数据线改为16位,一个需要16个16位的字形码,数据分配模块MUX、移位模块YW、显示模块DISP,均要将输入输出数据中的原来的8位改成相应的16位。扫描及取字型码计数器CNT_SM应改为CNT计数器的低4位。一个16×16点阵汉字的移进移出共需32个状态。由5位的计数器提供。如用CNT[16..0]中的14~10位作为该计数器,这可在时钟计数器产生单元CLK_GE中应做相应修改,字计数器CNT WORD按照每取16个字进行加1统计。显示DISP部分的译码器要由3-8译码改为4-16译码。显示的汉字信息越多,ROM的地址线位数越多,字计数器CNT_WORD应在时钟计数器产生单元GE_CLK中,将相应的计数器位数扩展,由CNT计数器的最高位到位15来承担。若还是8个汉字,计数器应为CNT[17..O],CNT[17..15]为字计数器;若为16个汉字,计数器应为CNT[18..O],CNT[18..15]为字计数器,…,依次类推。

6 结语
本文在KH31001开发板上实现了基于Altera公司的Cyclone I系列器件EPlC6Q240C8硬件及VHDL硬件描述语言设计的点阵汉字,能在8×8点阵上“元旦生日开心快乐”8个汉字。文中从LED点阵显示汉字的原理阐述出发,给出了点阵汉字滚动显示控制器的原理图,部分模块的VHDL源程序及时序仿真图,并能由按键选择其滚动方式:左移、右移、上移、下移等,给出了系统扩展成16×16点阵汉字滚动的改动思路。从文中描述的系统扩展方案中看出,当系统显示字符个数变化时,只需对控制逻辑和连接关系做适当的修改,再将修改完成的程序下载到器件即可,显然,系统的维护和修改是极其方便和容易的,本文对同类设计也具有一定的参考价值。

本文引用地址://m.amcfsurvey.com/article/191568.htm

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭