PLD实验报告.doc
《PLD实验报告.doc》由会员分享,可在线阅读,更多相关《PLD实验报告.doc(10页珍藏版)》请在三一文库上搜索。
1、PLD实验报告 实验内容:用4*3键盘作为输入,在8*8的LED显示屏上采用动画过度的效果显示相应的字符,并以两个按键作为复位和字符循环播放模式。电路结构:1.4*3数字键盘键盘的按键识别方式采用行扫描,实际电路中由于列输入端在悬空时被内部电路拉高而呈逻辑1,所以需要使用低电平作为行扫描标志,相应的,列接收端以低电平作为有效信号。由于按键存在一定的抖动,所以在扫描时可以采用较低的扫描频率,也可以通过计数器保证一次按键的有效识别。2.8*8的LED显示屏:8*8LED显示屏可采用行扫描来进行显示,行以高电平作为扫描标志连接某一行的二极管的阳极,而列以低电平作为二极管的阴极输出。但由于FPGA驱动
2、能力有限,不可能同时驱动一整排的LED灯管,所以实验板上采用反向器提高其驱动能力,相应的在FPGA端,应使用以低电平作为标志的行扫描信号。3. 普通按键电路板上有四个被电路拉高为逻辑1的按键,在按键时呈现低电平,作为复位信号以及字符循环显示的模式选择。程序结构:1. 字符矩阵采用常量的方式存储大量的字符显示所需的矩阵信息:TYPE romtable IS ARRAY (0 TO 7) OF STD_LOGIC_VECTOR(7 DOWNTO 0);CONSTANT zero:romtable:=romtable(11000011, 10111101, 10111101, 10111101, 1
3、0111101,10111101, 10111101, 11000011);CONSTANT one:romtable:=romtable(11100111, 11000111, 11100111, 11100111, 11100111,11100111, 11100111, 11000011);CONSTANT two:romtable:=romtable(11000011, 10011001, 10111001, 11111011, 11110111,11101111, 11011111, 10000001);CONSTANT three:romtable:=romtable(110000
4、11, 11111001, 11111101, 11100011, 11111101,11111101, 11111001, 11000011);CONSTANT four:romtable:=romtable(11110111, 11101111, 11011111, 10110111, 10110111,10000001, 11110111, 11110111);CONSTANT five:romtable:=romtable(11000001, 11011111, 11000011, 11111001, 11111101,11111101, 10111001, 11000011);CON
5、STANT six:romtable:=romtable(11110111, 11101111, 11011111, 10100011, 10111101,10111101, 10111101, 11000011);CONSTANT seven:romtable:=romtable(10000001, 11111101, 11111011, 11110111, 11101111,11011111, 11011111, 11011111);CONSTANT eight:romtable:=romtable(11000011, 10111101, 10111101, 11000011, 10111
6、101,10111101, 10111101, 11000011);CONSTANT nine:romtable:=romtable(11000011, 10111101, 10111101, 10111101, 11000001,11111101, 11111101, 11000011);CONSTANT star:romtable:=romtable(11111111, 11101111, 10101101, 11000011, 11101111,11010111, 10111011, 11111111);CONSTANT sharp:romtable:=romtable(11111111
7、, 11011011, 10000001, 11011011, 11011011,10000001, 11011011, 11111111);CONSTANT act1:romtable:=romtable(00000000, 00000000, 00000000, 00011000, 00011000,00000000, 00000000, 00000000);CONSTANT act2:romtable:=romtable(00000000, 00000000, 00111100, 00111100, 00111100,00111100, 00000000, 00000000);CONST
8、ANT act3:romtable:=romtable(00000000, 01111110, 01111110, 01111110, 01111110,01111110, 01111110, 00000000);CONSTANT act4:romtable:=romtable(11111111, 11111111, 11111111, 11111111, 11111111,11111111, 11111111, 11111111);CONSTANT window1:romtable:=romtable(00000000, 00000000, 00111100, 00100100, 00100
9、100,00111100, 00000000, 00000000);CONSTANT window2:romtable:=romtable(00000000, 01111110, 01000010, 01000010, 01000010,01000010, 01111110, 00000000);CONSTANT window3:romtable:=romtable(11111111, 10000001, 10000001, 10000001, 10000001,10000001, 10000001, 11111111);CONSTANT window4:romtable:=romtable(
10、00000000, 00000000, 00000000, 00000000, 00000000,00000000, 00000000, 00000000);对应的图像如下:其中前12个对应键盘上的字符,而最后8个用作动画的窗。2.分频器整个程序使用一个PROCESS作为分频模块,采用多次渐进分频的方法,提供多种频率信号的输出,程序如下:SIGNAL clk4:STD_LOGIC:=0;SIGNAL clk5:STD_LOGIC:=0;SIGNAL clk6:STD_LOGIC:=0;clocks:PROCESS(clk,reset)VARIABLE clk1:STD_LOGIC_VECTOR
11、(7 DOWNTO 0):=00000000;VARIABLE clk2:STD_LOGIC_VECTOR(7 DOWNTO 0):=00000000;VARIABLE clk3:STD_LOGIC_VECTOR(7 DOWNTO 0):=00000000;BEGINIF reset=0 THEN-在需要的时候重置分频器参数。clk1:=00000000;clk2:=00000000;clk3:=00000000;ELSIF RISING_EDGE(clk) THEN-计数器工作,采用系统时钟50MHz,端口“Y11”clk1:=clk1+1;IF clk1=11111010 THEN-250
12、clk1:=00000000;clk2:=clk2+1;END IF;IF clk2=11111010 THEN-clk2每计数到250时跳变为0clk2:=00000000;clk3:=clk3+1;clk5=NOT clk5;-clk5产生400Hz的信号,作为8*8LED显示屏的扫描频率的8倍END IF;IF clk3=00100000 THEN-clk3每计数到32时跳变为0clk3:=00000000;clk4=NOT clk4;-clk4产生12Hz的信号,作为数字键盘的扫描频率的4倍END IF;clk6=clk3(5);END IF;END PROCESS;3. 数字键盘扫描
13、:采用clk4信号作为扫描时钟,同时使用复位信号reset进行复位,程序如下:SIGNAL rowtemp:STD_LOGIC_VECTOR(3 DOWNTO 0):=0000;scan:PROCESS(clk4,reset)-update rowVARIABLE rowtemp00:STD_LOGIC_VECTOR(3 DOWNTO 0):=0000;-采用内部信号进行计数。BEGINIF reset=0 THEN rowtemp00:=0000;rowtemp=0000;row rowtemp00:=0011;WHEN0011= rowtemp00:=0110;WHEN0110= rowt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PLD 实验 报告
链接地址:https://www.31doc.com/p-3608214.html