FPGA实验报告北航电气技术实验.docx
六、试验代码I四位二进制加法计数器(已修改)entitycount4isport(clk:instd_logic;-waishizhong.fpga_cx2_6!,st:inStdJogici-Hlpin-abl5q:outstd_logic_vector(3downto0);-led4-1end:architectureblofcount4issignalqI:sKl_logic_vcctor(3downtoO);beginProeCSS(Clk.rst)beginif(rst="O,)thcnif(clk'eventandelk-)thenq1<=q1-1;endif;elseql<="llll"endif;endprocess;q<=qI;end2一位半加器七、结果分析I若在加载运行文件后试验箱上无反应,可以通过更换不同缴率输入管脚查看是否为试验箱自带时钟的故障。2试验箱上1.ED显示灯与设计逻辑相反时可以通过修改程序逻辑或给电路图添加非门实现正逻辑显示。试验二16×161.ED点阵四字循环显示试验时间:2017.11.08(周三)晚试验编号20一、试验目的1、驾驭VllD1.编程技巧和各种输入输出显示方法。2、学习并分析指导书中实例,从中发觉感爱好的题目,并以此自设计个有内容.功能稍困难的主、子程序综合应用例程,实现调试与验证。3、实现1.ED点阵“高山仰止”四字清楚循环显示。二、试验原理.11.ED显示原理I6X16扫描1.ED点阵的工作原理同8位扫描数码管类似,其结构示意图(图I)与等效电路图(图2)如下。它有16个共阴极输出端口,每个共阴极对应有16个1.ED显示灯,所以其扫描译码地址需4位信号线(管脚对应CO1.I-Co1.4),从右起为第一列且CO1.I4对应“0000”。其汉字扫描码由16位段地址(从卜至上管脚对应ROWl-ROW16>输入.,本设计选用的1.ED列扫描,汉子信号行输入的方式,显示完整汉字。图116X161.ED点阵图216X16点阵1.ED等效电路-,-浮索手手-(->>,>>>>>>-II.I.,二FF-F-/F-,.?TrtTnT二二列循环扫描,通过对每一列的扫描来完成对字母的现实,本设计为使列扫描符合视觉暂招要求,扫描频率至少大于l6X8=128Hz,周期小于78ms,以此绐人以连续的感觉。2汉字的信息储存用动态分时扫描技术使1.ED点阵模块显示图像,须要进行两步工作。第一步是在程序中建立汉字数据库。其次步是在扫描模块的限制下,协作列扫描的次序正确地输出这些数据.获得图像数据的步骤是,先将要显示的每一幅图像画在一个如(图3)所示的被分成16×16共256个小方格的矩形框中,再在有箔划卜落处的小方格里填上“I”,无笔划处填上“0”,这样就形成了与这个汉字所对应的二进制数据在该矩形框上的分布,汉字取模可由专用软件进行。aaaaaaaaaaaa图316*16点阵显示模块由于本试脸箱为从右至左依次对应"XNX)''列到"1111''列,从下至上为最高位到最低位,于平常习惯的认字方向相反,所以留意在逐列扫描的设计中要对字取“反模”。例如要在右边起笫2列的从上到下数2、4、6、8行亮,则列编号为''0001''、行输入为''00000000IOIOlOl(T就可以实现了。3延时环节为使汉字不断地循环显示,并且使每个汉子显示后停留,就须要在中间加肯定的延时和循环环节。在这一环节中,可以通过修改每个显示和停留周期包含的总时钟脉冲数值来限制每个字的显示时间,运用状态机设计方法绐四个汉字对应的不同输入状态进行编码,即可使汉字依次清楚显示。三、试验设备1可编程逻辑试骁箱EP3C55F4S4C8台(包含16×161.ED点阵组等)2计郛机及开发软件QUarIUS【I一台套四、调试步骤1建立工程,命名为Iedgi616.建立VHD1.程序文件命名为IedI616grq.vhd,2依据第六部分原程序输入代码,并按所示表格绑定管脚。编写程序及绑定管脚时时留意其次部分中所叙述的扫描显示依次以及对应取反字模的方法。3编译无误后开启试验箱,生成sof传输文件并下教至试验箱,确保运行模式为1,且CPR1.-Sw拨码开关为“00XX”。4视察试验箱上现象,通过改接不同频率的脉冲输入管脚或变更每个字符停留周期包含的总脉冲数来保证在足够快的扫描频率与大约每个字大约秒多的足够停留时间,并查看是否有“离山仰止”四字依次有停顿的清楚的循环显示。五、试验现象当时钟输入线接FRQH_Q2(3()OOOOOHz)管脚时,设定每个周期为5()O(X)OO个脉冲时,实现“高山仰止”在16×I61.ED点阵上清楚循环显示。六、试验代码Iibrarj'ieee;useieee.NdOgiC_1164.all;useieee.sidjlogic_unsigned.alI;entityIedl6l6gr<isport(clk:insldogic;一时钟data:outstdOgiJVCCtOrd5downloO);彳了输入addrs:outSldJogiJveCtor(3downto0):“列地址endIcdl6l6grq;architecturechw_arcofIedl6l6grqissignalfenpin:std_logic_vector(1downto0);-分频信号signalad:std_logic_vcctor(3downto0):“地址中转信号beginProCeSS(Ck)-产生个大约IS的分频信号模块variablecnt:integer:=O;variabletinp:sid_logic_vector(IdowntoO);beginifclk'eventandelk-thenifcnl<5(X)0000thencnc=cn(+l;elsecnt:=O;iftnp="11"thentmpz="(X)w;elsetinp:=tmp+l;endif;endif;endif;fc11pin<=lmp;endprocess;ProCeSS(CIk)-送16位地址程序variablejs:integer:=。:variablecnt:sid_logic_veetor(3downtoO);beginifclk'cvcntandclk='thenifjs<100(X)thenjs:=js+l:elsejs:=0;ifcnt="1lll"thenCnc=-(XXX)"dscc11C=cn(+l;endif;endif;endif;ad<=cnt;endprocess:process(fenpin.ad)begincasefenpinisbcsurctogettheopposite11lclofthewordandexchangethehight8billothelow8biithenwritebeginIlllto0000when"00',=>easeadis-''高"的字模when"(XXX)"=>data<="(XXMXXXMXXXMXKX)()"r-(X)()()when"0100"=>data<="0000001000000100">>0402when"1100"=>data<="000(XX)l(XX)00()l,-0402when"1101"=>data<="000000l000000100',-0402when"1111"=>data<="0000000000000100-;-0400whenothers=>nu1l;endcaie;when"0l"=>山''的字模easeadiswhen,000()'=>data<="000000()()00()(KKX)0'i-(KXX)when',0,=>data<=-00()()000000()000()0''i-000()when"IIOI"=>data<="0000()000(X)000(X)0,-(XM)0when"UI0"=>datav="0000000000000000”;-OoOowhen',1111"=>data<="()OOO()OOO(X)OOO(X)O':-(XXX)whenothcrs=>nul:endcase:when"1()"=>caseadiswhen-O(Xxr=>data<="000000(XXXXXXXXXr;-(X)OO“仰”的字模when"(XX)I"=>data<=M000000()000()000()()"-0000when"0100"=>data<=,00001Oo(X)OoO10">-(¼04when"0110"=>data<="()(XXX)(XXX)(XXXXXX)'>-(X)(X)when"IOl(=>databOOO()OOOOOOOOOOOO”.OoOOwhen"1011"=>data<="0000(X)00()0(XX)l11":-()007when"1IOl"=>data<="(XXXXXXXX)ll(XXXX)'>-(X)60when-IIl()"=Xlata<="(MXXKXXX)l(XXXXXX)'-(X)8()when11ll"=>data<="(XXXXXX)l(XXMXXXX)"-()l(X)whenothers=>null;endcase;when"11',=>caseadiswhen"OOO(r=>data<="OOOOoooooOoOOooo”100o(F止”的字模whenothcrs=>nul:endcase:whenothers=>null;endcase:endprocess;addrs<=ad;endchw_arc;管脚绑定如E:NodN*wOonIiec4tonI*IfiFGu>IXJSUndMdKAl4WW产5Y(U>)mmsCMMp?Nltf(dr三三s三305=33t>3">t>3J3Gt.:,R.5R.5E.5R,mt:Q4t,ARcMCMjtOJUtQ9ut,83¾w.pwj*.R7pIMJKPW.C1511HJ11F.C13闭身m平网/5“8mWJO>ZJ<1q典.更MBeg87Jil.B7JU87JU87JU87J41SSN68”.88Neaj“,(*”2,y(deA)2,>v(deA)!Xv(deA)v(de<)2SYfcJJe)oeJt)XSY(de)XSY(de)Z5(<fefM)Z5Y(de)15(defM)ZSY(def*Jl)Z5V(dH*