16X16点阵显示实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
实验名称: [16X16点阵显示实验]
姓名:
学号:
指导教师:
实验时间: [2013年6月15日]
信息与通信工程学院
16X16点阵显示实验
1、实验要求:
理解并掌握点阵显示符号的原理,理解原有程序,会使用动态扫描的方式使点阵显示汉字,明白点阵滚动显示的原理。根据原有程序,掌握LPM_ROM的应用,会应用LPM_ROM
存储需要显示的内容。参照液晶显示程序,编写16*16点阵显示程序。
任务一:实现点阵列扫描。点亮点阵的一列,并让其不断的向右移动。
任务二:在点阵上循环滚动显示“嵌入式系统设计”。
2、实验原理:
2.1点阵基本原理
本实验对点阵的扫描使用列扫描的方式。就是将要显示的数据分成16列,在某一时刻只选中一列,并向点阵传送该列需要显示的数据,那么如果从左往右依次循环选中所有列,并且循环的速度足够快,因为视觉停留效应,我们就能看到完整的显示了。
如果要显示大于16列的信息,比如要显示多个汉字,由于只能同时显示16列,那么就需要在一个比较慢的时钟的指挥下,不断更新要显示的连续的16列数据,使用这样的方法就能实现滚动显示。
2.2任务原理
8*8LED点阵共由64个发光二极管组成,每个发光二极管放置在行线和列线的交叉点上,当对应的某一行高电平(置1),且某一列低电平(置0),则相应的发光二极管就亮;因此要用8*8LED点阵来显示一个字符或汉字,只需要根据字符或汉字图形中的线条或笔画,通过点亮多个发光二极管来勾勒出字符或汉字的线条或笔画就行了。
当要比较完美的显示一般的汉字,单个8*8LED点阵模块很难做到,因为LED的点数(也称为像素点)不够多,因此要显示汉字的话,需要多个8*8LED点阵拼合成一个显示屏。假如用4个8*8LED点阵模块拼成16*16的点阵,即能满足一般汉字的显示。
16×16扫描LED点阵的工作原理同8位扫描数码管类似。它有16个共阴极输出端口,每个共阴极对应有16个LED显示灯,所以其扫描译码地址需4位信号线(SEL0-SEL3),其汉字扫描码由16位段地址(0-15)输入。通过时钟的每列扫描显示完整汉字。
2.3、实验设计流程:
任务一系统结构图如图1所示。
图1 任务一系统结构图
任务二系统结构图如图2所示。
图2 任务二系统结构图
3.管脚分配:
choose[3] PIN_139
choose[2] PIN_137
choose[1] PIN_134
choose[0] PIN_127
clk_50M PIN_23
data[15] PIN_46
data[14] PIN_44
data[13] PIN_41
data[12] PIN_39
data[11] PIN_35
data[10] PIN_33
data[9] PIN_30
data[8] PIN_15
data[7] PIN_13
data[6] PIN_11
data[5] PIN_10
data[4] PIN_8
data[3] PIN_6
data[2] PIN_5
data[1] PIN_4
data[0] PIN_3
l5 PIN_142
rst PIN_56
sel[2] PIN_146
sel[1] PIN_145
sel[0] PIN_144
4、实验结果:
使用QuartusII软件将实验工程分别下载到实验箱中,能够看到预期的现象:
将任务一的工程下载到实验箱后,可以看到一竖条向右移动,移动速度为1s每列。
将任务二的工程下载到实验箱后,点阵上滚动显示汉字“嵌入式系统设计”,字体移动速度为0.34秒每列。
实验现象表明实验程序符合要求,能够完成实验要求任务。
5实验心得
通过这次实验,我学到了一个有时序功能的器件如何用verilog语言实现其功能。学会了8*8LED点阵共由64个发光原理,要用8*8LED点阵来显示一个字符或汉字,只需要根据字符或汉字图形中的线条或笔画,通过点亮多个发光二极管来勾勒出字符或汉字的线条或笔画就行了。如何用点阵拼合成一个显示屏假如用4个8*8LED点阵模块拼成16*16的点阵,即能满足一般汉字的显示。而16×16扫描LED点阵的工作原理同8位扫描数码管类似。它有16个共阴极输出端口,每个共阴极对应有16个LED显示灯,所以其扫描译码地址需4位信号线(SEL0-SEL3),其汉字扫描码由16位段地址(0-15)输入。通过时钟的每列扫描显示完整汉字。并通过模块和模块的嵌套或者连接实现相应功能。
通过这次实验,学到了很多东西,同时也认识到了自己只是FPGA道路上的新手,还有很多未知的知识需要学习。真正学习的历程需要在课下多努力,希望通过这学期的学习自
己能熟练掌握一些编程的技术,培养良好的思维模式。
6 参考文献
[1] 王金明. 《数字系统设计与Verilog HDL》第3版、第2版, 电子工业出版社, 2009、2005. TP271/W24.
[2] 夏宇闻. 《Verilog数字系统设计教程》, 北京航空航天大学出版社, 第1、2版, 2008. TP312VH/X31.
[3] 蒋璇,臧春华. 《数字系统设计与PLD应用技术》, 电子工业出版社, TP271/J63.
[4] 侯伯亨,顾新. 《VHDL硬件描述语言与数字逻辑电路设计》(修订版), 西安电子科技大学出版社. TP312/H490.
[5] (美)John 威廉斯著; 李林,陈亦欧,郭志勇译. 《Verilog数字VLSI设计教程》, 电子工业出版社. 2010.7.
[6] 潘松,黄继业. 《EDA技术实用教程》, 科学出版社, 2006. TN702/P18.