EDA实验箱实验指导书_第1页
EDA实验箱实验指导书_第2页
EDA实验箱实验指导书_第3页
EDA实验箱实验指导书_第4页
EDA实验箱实验指导书_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验二 流水灯1. 实验目的通过本实验让学生进一步了解、熟悉和掌握CPLD/FPGA开发软件的使用方法及VHDL语言的编程方法;学习简单的时序电路的设计和硬件测试。2. 实验内容LED LED8,使之实现流水灯显示。本实验的内容是控制实验箱上的发光二极管3. 实验原理即输出的数据依次为、 、00000000 ,LED小灯。为了方便观察,流水的速率控制在LED1LED8引脚上周期性地输出流水数据, 如此循环显示,输出数据“ 0”,表示点亮相应的int_div 。在2Hz左右。在核心板上有一个 48MHz的标准时钟源,该时钟源与芯片 EP2C5的23脚相连。 为了产生2Hz的时钟源,在此调用了分频

2、模块4. 实验步骤(1) 启动Quartus II,建立一个空白工程,然后命名为。(2) 新建源程序文件,源代码如下。 然后进行综合编译。若在编译过程中发现错误,则找出并更正错误,直到编译成功为止。 生产符号文件 (File 7 Create/ Up dateCreate SymbolFiles for Current File) 。流水灯程序参考LIBRARY IEEE;USEUSE ledwater ISPORT(clk: IN STD_LOGIC;led: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END;ARCHITECTURE one OF ledwate

3、r ISSIGNAL led_r:STD_LOGIC_VECTOR(8 DOWNTO 0);BEGINled<=led_r(7 DOWNTO 0);PROCESS(clk)BEGINIF clk'event and clk='1'THENled_r<=led_r(7 DOWNTO 0) & '0'IF led_r="000000000" THEN-循环完毕吗led_r<="1"END IF;-是,则重新赋初值END IF;END PROCESS;END;(3) 将实验模块库里的和拷贝到工程

4、目录下。(4) 新建图形文件, 命名为并保存。 在空白处双击鼠标, 打开 symbol 对话框, 在 symbol 对话框的左上角的 libraies 中, 分别将 project 下的 ledwater 和 int_div 模块放在图形文件中, 加入输入 input 、输出 output 引脚,双击各引脚符号,进行引脚命名。完整的顶层模块原理图如下图1所示。双击int_div中的参数框,并修改参数,如下图2所示。将F_DIV的值改为,F_DIV_WIDTH的值改为25,单击“确定”按钮保存修改的参数。图流水灯顶层模块PropertiesFnftr Ptranetrs FnrnatParame

5、terNameHatting:2430000(Delete IDescriptior:E 属 tn par 列我er 琴 eHrim;KljpwI VAbtw H PmscTi芮innF-DIV.WIDTH 25图参数修改对话框如果在上不能看到参数设置框,在空白出右击鼠标,选择 命令来显示参数设置框。(5) 将实验模块选择目标器件并对相应的引脚进行锁定,的 Cyclone II 系列的 EP2C5Q208C8 或者 Cyclone I 系列的 下表所列。(6) 将设置成顶层实体 ProjectSet as Top-level Entity。对该工程文件进行全程编译处理,若在编译过程中发现错误,

6、则找出并更正错误,直至编译成功为止。(7) 把JP20的led0led7的跳帽插上,使发光二极管有效。下载程序到芯片上,观察流 水灯的变化。更改分频模块的分频系数,并重新编译下载,观察流水灯的变化。Show P arameter Assig nments这里选择的器件为 Altera公司EP1C12Q240C8引脚锁定方法如信号表引脚锁定方法I 信号引脚EP 2C5EP1C12EP 2C5EP1C12LedO116128Led 5105123Led1110127Led 663122Led2114126Led7106121Led3107125clock23153Led4112124实验三 读取按

7、键信号1. 实验目的通过本实验让学生进一步了解、熟悉和掌握 CPLD/FPGA 开发软件的使用方法及 VHDL 语言的编程方法;并熟悉VHDL文件为顶层模块的设计;学习和体会分支条件语句case的使用方法及 FPGA I/O 口的输出控制。2. 实验内容实验箱上有8个发光二极管LED1LED8和8个按键KEY1KEY8本实验的内容是用这 8 个按键分别控制 8 个发光二极管,一旦有键按下,则点亮相应的发光二极管。3. 实验原理FPGA的所有I/O控制块允许每个I/O引脚单独配置为输入口,不过这种配置是系统自 动完成的。当该 I/O 口被设置为输入口使用时(如定义 key1 为输入引脚: inp

8、ut ),该 I/O 控 制块将直接使三态缓冲的控制端接地,使得该 I/O 引脚对外呈高阻态,这样该 I/O 引脚即可 用作专用输入引脚。 正确分配并锁定引脚后,一旦在KEY1KEY中有键输入,即可在检测到键盘输入的情况下,继续判断其键盘并作出相应的处理。实验步骤4.(1) 启动Quartus II,建立一个空白工程,然后命名为。(2) 新建源程序文件,源代码如下。 找出并更正错误, 程序参考直到编译成功为止。然后进行综合编译。若在编译过程中发现错误,则LIBRARY IEEE;USEUSEkeyledPORT(key: IN led: OUTISSTD_LOGIC_VECTOR(7 DOWN

9、TO 0);STD_LOGIC_VECTOR(7 DOWNTO 0);END;ARCHITECTURE one OkFeyled ISSIGNAL led_r: STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL buffer_r:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINled<=led_r;PROCESS(key,buffer_r)BEGINbuffer_r<=key;CASE buffer_r ISWHEN ""=> led_r<=""WHEN ""=>

10、 led_r<=""WHEN ""=> led_r<=""WHEN ""=> led_r<=""WHEN ""=> led_r<=""WHEN ""=> led_r<=""WHEN ""=> led_r<=""WHEN "01111111"=> led_r<="01111

11、111"WHEN OTHERS=>ed_rv=""END CASE;END P ROCESS;END;(3) 选择目标器件并对相应的引脚进行锁定,这里选择的器件为 Altera公司的Cyclone II系列的EP2C5Q208C8或者Cyclone I系列的EP 1C12Q240C8引脚锁定方法如下表所列。表引脚锁定方法信号引脚信号引脚EP 2C5EP1C12EP 2C5EP1C12Led0116Key056Led1110Key159Led2114Key257Led3107Key361Led4112Key458Led 5105Key564Led 663Key

12、660Led7106Key768(4) 对该工程文件进行全程编译处理,若在编译过程中发现错误,则找出并更正错误, 直至编译成功为止。(5) JP6是一个3针的插座,如果把短接帽接到下面,使下面两个插针短接,则按键有效;如果把短接帽接到上面,使上面两个插针短接,则矩阵键盘有效。本实验令按键有效, 把短接帽接到下面。把 JP20的led0led7的跳帽插上,使发光二极管有效。下载程序到芯片 上,按下KEY1KEY8勺任何一键,观察发光二极管LED1LEDa的亮灭状态。实验四静态数码管显示1. 实验目的通过本实验让学生学习7段数码管显示译码器的设计,进一步了解、熟悉和掌握FPGA开发软件Quartu

13、s II的使用方法及VHDL语言的编程方法,学习LPM兆功能模块的调用。2. 实验内容实验箱上有2个4位动态共阳极数码管 LEDD4和LEDD3,其中8个位码DIG0DIG7和8 位段码SEG0SEG7分别与FPGA相应的引脚相连。这样只要DIG0DIG7上一直输出低电平“0”,则8个数码管将显示相同的数码,这样8位动态数码管就变成了静态数码管。本实验的内容是建立 7段译码显示模块,用于控制LED数码管的静态显示。要求在试验 箱上循环显示09和AF 16个字符。3. 实验原理数码管LED显示是工程项目中使用较广的一种输出显示器件。常见的数码管有共阴和共阳两种。共阴数码管是将8个发光二极管的阴极

14、连接在一起作为公共端,而共阳数码管是将8个发光二极管的阳极连接在一起作为公共端。公共端常称为位码,而将其它8位称为段码,分别为:a、b、c、d、e、f、g、h,其中h为小数点。对于共阳极数码管,只要公共端为高 电平“ 1”,某个段输出为低电平“ 0”,则相应的段就亮。本实验通过分频模块得到1Hz的频率信号,加载于 4位计数器的时钟输入端,计数循环输出09和AF 16个字符,通过7段译码模块后在数码管上显示出来。实验步骤4.(1) 启动Quartus II,建立一个空白工程,然后命名为。然后进行综合编译。若在编译过程中发现错误,则T Create/ Up date 宀 Create Symbol

15、(2) 新建源程序文件,源代码如下。找出并更正错误,直到编译成功为止。生产符号文件(FileFiles for Current File)。程序参考LIBRARYUSEIEEE;decl7s ISP ORT(d:seg:);END;ARCHITECTURE ONE OF decl7s ISIN STD_LOGIC_VECTOR(3 DOWNTO 0);-输入 4 位二进制码OUT STD_LOGIC_VECTOR(7 DOWNTO 0) -七 段译码输出SIGNAL seg_r:STD_L0GIC_VECT0R(7 DOWNTO 0-;-定义数码管输出寄存器BEGINseg<=seg_r

16、;-输出数码管译码结果P ROCESS(d)-七段译码BEGINCASE d ISWHENX"0"=>seg_r<=X"c0"-显示 0WHENX"1"=>seg_r<=X"f9"-显示 1WHENX"2"=>seg_r<=X"a4"-显示 2WHENX"3"=>seg_r<=X"b0"-显示 3WHENX"4"=>seg_r<=X"99"

17、;-显示 4WHENX"5"=>seg_r<=X"92"-显示 5WHENX"6"=>WHENX"7"=>WHENX"8"=>WHENX"9"=>WHENX"a"=>WHENX"b"=>WHENX"c"=>WHENX"d"=>WHENX"e"=>WHENX"f"=>seg_r<=X

18、"82"-显示 6 seg_r<=X"f8"-显示 7 seg_rv=X"80"-显示 seg_rv=X"90"-显示 seg_rv=X"88"-显示 seg_rv=X"83"-显示 seg_rv=X"c6"-显示 seg_rv=X"a1"-显示 seg_rv=X"86"-显示 seg_rv=X"8e"-显示WHENOTHERS=> seg_rv=X"FF"END

19、CASE;END P ROCESS;END;在Quartus II主界面中选择 ToolsMega Wizard Plug-ln Manager,打开如图所示的兆将实验模块库里的和拷贝到工程目录下。 添加4位兆计数器功能模块。步骤如下:功能模块向导。选择 Create a new custom megafu nction variatio n 新建一个新的兆功能模块。Plug-InIp耳乐u 1Tkw MegaWi?ard PlugJn Manager helps51CXJ cfaate or modify design files that ctmJain custom variations

20、 of meflafumcbons.WbicTi actio n do you wan* to p erf aim?Create 已 ne custom megafuncHor vriationC £dit an existing custom megsfixicbon variationConv an existing custofin megalunction variatianCopyright ?19S1 -2000 Altera CoiparatiortCancel图 添加兆功能模块向导对话框P age1LPM_COUNTER设置号输4位计数器。或者直接单击Finish结束

21、。 单击Next进入向导第2页,按照如下图所示填写。选择出文件的类型和路径,使用Cyclo ne族的器件。 单击Next进入向导第3页,按照如下图所示填写。选择 剩余步骤不需更改设置,在这里可以一步一步单击Next,注意在结束时一定要选择生成"*.bsf ”符号文件。 e£ AVlTnTfl V 111£ In fUILgRT pafF?图 添加兆功能模块向导对话框Page3Wltiich mrackinotict- would vom Ih? tocu?:oni;cwhch dcFcc foriih vcu bv Trio?|C5>CQr«1 翼

22、 Coniruiici/iMit * 剂 CIS:*Mpic: Tccompic a pojecl JUCCWfMI; ir tkeQuortuj I Mdrore. 賞lur des CT filet musl be ir ike pm ed drscHofj, in the global lk er iljdei i pelJftod h Ihc Ot'-Lni- daluu Llk uuk InciibL ui a uicr ILmr sgj砂ill the lhe Lb MK t耳上 ufUifrStHinCi dialog tn)i 白sscrweu$ nrerul.?OLf

23、 cmront uocf lifcisj dnclnii&t anCancel 9az.k-ia*J InsreJled Aug-lns7 AhcMGGPCQJIdci -fid Ant-*tn?ic I ALTACCUMUUTrALTECC ALiri>_ADDi_LD ALIFFLCOMFABE M1FC(HMFn AllFP_riW ALT巳 M JILT 4下已迪RT 盘hEHMULT il7M II T_rrLJL1 fMAC)J:' ! ; L" L3 ALlsgnrS LPM_ABSF lpm_adc_sudLPkl_DlVDE LPM.MULI

24、PARALLEL>DD k'hith 如? of cutpul Fle±)>aj Mni (o treilc?< AHDL 0 VHOL 广 VentogWht none da /piri/Tat Fqi Utt 口讥put fil|E:ji:todeotritn厂 Rohutn ba lhe puga Fm arcthw ciftohc opwralioii添加兆功能模块向导对话框Page2Fnaee 3 of 7leeaTizard FlueInVanager LFWCOOMTEKm parameter IE EDASettingsI General I

25、 IgStfTTy Genefal2 ) Optional InpiksCurrently selected device family:冏 Match project/defadtHow vjide slxjukl the p' output bus be?间 | bitsi-What should the counter direction be?V Up onlyO Down orlyO Create an 'updovjn' input port bo allow me to do Loth (1 counts up; 0 coinls doin)Resoirc

26、e Usage4 litI Cancel < Back | Nest > | Finish(5) 新建图形设计文件,命名为并保存。文件的设计如下图所示。(6) 选择目标器件并对相应的引脚进行锁定,这里选择的器件为 Altera公司的Cyclone II系列的EP2C5Q208C8或者Cyclone I系列的EP 1C12Q240C8引脚锁定方法如下表所列。表引脚锁定方法信号引脚信号引脚EP 2C5EP1C12EP 2C5EP1C12seg0145161dig0135seg1142144dig1127seg2143159dig2133'136seg3139141dig3117

27、135seg4141156dig4128冋seg5137139dig5115133seg 6138143dig6118132seg7134140dig7113131clock23153(7) 将设置成顶层实体(Project Set as Top-level Entity )。对该工程文件进行全程编译 处理,若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。(8) 下载程序到芯片上,观察数码管的显示状态。实验五动态数码管显示1. 实验目的 学习动态扫描显示的原理及电路的设计。LED 数码管的动态显示2. 实验内容 本实验内容是建立数码管动态扫描显示模块。在试验箱上完成18这 8 个数

28、。稳定显示后,放慢扫描速度演示动态显示的原理过程。常见的数码管共阴和共阳 而共阳数码管是将 88 位称为段码,1”,某个段输出3. 实验原理数码管LED显示是工程项目中使用较广的一种输出显示器件。 两种。共阴数码管是将 8 个发光二极管的阴极连接在一起作为公共端,8 个段都分别连接到 SEG0SEG,7 8 个数 被选通的数码管显示, 其余关闭。例如在某一 1 ”,这是仅DIG2对应的LED数码管显示来自 根据这种电路状态,如果希望 8 个数码管全 DIG0DIG7分别单独选通,同时在段输入端加 但只要扫描的速率够快, 由于人眼视觉的余晖个发光二极管的阳极连接在一起作为公共端。公共端常称为位码

29、,而将其它 分别为:a、b、c、d、e、f、g、h,其中h为小数点,只要公共端为高电平" 为低电平“ 0”,则相应的段就亮。把每个数码管的 码管分别由8个选通信号DIG0DIG7来选择。时刻,DIG2为“ 0”,其余数码管选通信号为“ 段码信号端的数据,而其他数码管成关闭状态。 都显示想要的数据,就必须使得 8个选通信号 上对应的数据。虽然每次只有一个 LED显示, 效益,我们仍会感觉所有数码管都在同时显示。4. 实验步骤(1) 启动Quartus II,建立一个空白工程,然后命名为。(2) 新建源程序文件,源代码如下。 然后进行综合编译。若在编译过程中发现错误,则找出并更正错误,直

30、到编译成功为止。 生产符号文件 (File 7 Create/_U pdate Create Symbol Files for Current File)。程序参考:LIBRARY IEEE;USEUSE scan_led ISPORT(clk_1k:d:dig:seg:);END ENTITY;IN STD_LOGIC;IN STD_LOGIC_VECTOR(31 DOWNTO 0);-输入要显示的数据OUT STD_LOGIC_VECTOR(7 DOWNTO 0);-数码管选择输出引脚OUT STD_LOGIC_VECTOR(D7OWNTO 0)-数码管段输出引脚SIGNALseg_r:S

31、IGNALdig_r:SIGNALdisp_dat:SIGNALcount:BEGINdig<=dig_r; seg<=seg_r;ARCHITECTURE one OF scan_led ISSTD_LOGIC_VECTOR(7 DOWNTO 0); -定义数码管输出寄存器STD_LOGIC_VECTOR(7 DOWNTO 0); -定义数码管选择输出寄存器STD_LOGIC_VECTOR(3 DOWNTO 0); -定义显示数据寄存器STD_LOGIC_VECTOR(2 DOWNTO 0); -定义计数寄存器PROCESS(clk_1k)BEGINIFRISING_EDGE(c

32、lk_1k) THENcount<=count+1;END IF;END PROCESS;PROCESS(clk_1k)BEGINIFRISING_EDGE(clk_1k) THENCASE count ISWHEN "000"=>disp_dat<=d(31 DOWNTO 28);-第一个数码管WHEN "001"=>disp_dat<=d(27 DOWNTO 24);-第二个数码管WHEN "010"=>disp_dat<=d(23 DOWNTO 20);-第三个数码管WHEN "

33、;011"=>disp_dat<=d(19 DOWNTO 16);-第四个数码管WHEN "100"=>disp_dat<=d(15 DOWNTO 12);-第五个数码管WHEN "101"=>WHEN "110"=>WHEN "111"=>disp_dat<=d(11 DOWNTO 8); disp_dat<=d(7 DOWNTO 4); -第七个数码管 disp_dat<=d(3 DOWNTO 0); -第八个数码管-第六个数码管END CA

34、SE;CASE count IS-选择数码管显示位WHEN "000"=>WHEN "001"=>dig_r<="01111111"dig_r<=""-选择第一个数码管显示-选择第二个数码管显示WHEN "010"=>dig_r<=""-选择第三个数码管显示WHEN "011"=>dig_r<=""-选择第四个数码管显示WHEN "100"=>dig_r<=

35、""-选择第五个数码管显示WHEN "101"=>dig_r<=""-选择第六个数码管显示WHEN "110"=>dig_r<=""-选择第七个数码管显示WHEN "111"=>dig_r<=""-选择第八个数码管显示END CASE;END IF;END PROCESS;PROCESS(disp_dat)BEGINCASE disp_dat ISWHENX"0"=>WHENX"1&q

36、uot;=>WHENX"2"=>WHENX"3"=>WHENX"4"=>WHENX"5"=>WHENX"6"=>WHENX"7"=>WHENX"8"=>seg_r<=X"c0"-显示 0 seg_r<=X"f9"- 显示 1 seg_r<=X"a4"-显示 seg_r<=X"b0"-显示 seg_r<

37、=X"99"-显示seg_r<=X"92"-显示 seg_r<=X"82"-显示 seg_r<=X"f8"- 显示 7seg_r<=X"80"- 显示 8WHENX"9"=>seg_r<=X"90"-显示WHENX"a"=>seg_r<=X"88"-显示WHENX"b"=>seg_r<=X"83"-显示WHENX&qu

38、ot;c"=>seg_rv=X"c6"-显示WHENX"d"=>seg_r<=X"a1"-显示WHENX"e"=>seg_rv=X"86"-显示WHENX"f"=>seg_rv=X"8e"-显示9abcdefEND CASE;END P ROCESS;END;在Quartus II主界面中选择 ToolsMega Wizard Plug-ln Manager,打开如图所示的兆将实验模块库里的和拷贝到工程目录下。 添加

39、4位兆计数器功能模块。步骤如下:区)功能模块向导。选择 Create a new custom megafu nction variatio n 新建一个新的兆功能模块。e岂耳让耳rd Plug-InIp隅u 1 TI% MegaWi?ard PlugJn Manager 帕Ipwycxj ciaate or modify design files that contain custom variatBiKS at meafuriclions.WbicTi actio n do you wan* to p erf arm?Illi IIIB Illi II -II- U-im Illi &qu

40、ot; JCreate -a new cufitom megafuncHon variatianC £dit an existing custom megsfixicbon variation广 Conv an exisling custofin megalunction variatianCopyright ?19S1 -2000 Altera CoiparatiortCancel图 添加兆功能模块向导对话框一一 Page1 单击Next进入向导第2页,按照如下图所示填写。选择LPM.CONSTANT设置好输出文件的类型和路径,使用Cyclo ne族的器件。宅压社xHard PXv

41、g-rn Manager p&gp2勾区1图 添加兆功能模块向导对话框Page3Which megafurtction ijould yew like to customise?SeleCt a megafunctiori from the li班 beloWhich device family 呦11 you be using?I CyclaneF回 Irstailed Plug-InsAltera SO PC Builder Arithmalic Communications DSP Gd腹LPM.ATJD LPM_BUSTFtl LPM.CLSHIFT LPMLONSTANT L

42、PH.DECODE LPMJNV LPM.MUX LPM_OR LPM XDRWhich pe of output File do you 换nl to create?团 S齟 国艇 s & 3 &II/OInerFcesJ TAG-accessible Extensions Memory CompilerS鏈 a fii a &+ 翩 Storage+;圉 IP WegaStoier AHDLVerioahDLWhat 畑RK do you 艸ant for the output fie?|E: eKR bciK pra JecRconalantlI Return t

43、o this page for arother create operationBrowse. IYour current user library directofie di«:Mote: T o Compile a project successf Jly n the Quartus II software, your design files muEt be in the pgecl ckectorp in the global user libraries specifiecl in the Options dialog box (Tools menut Or a user

44、libraiy specified m the User Libraries page crf the Settings dialog bon 血signmen怙 menu.Cancel< Back I Ne«t >L HL 11单击Next进入向导第3页,按照如下图所示填写。数据宽度32位,数值为H。_冈回 EDA 回 SuonrraryT ParameterSettingsCurrently selected device Family:CycbnsI 妙口Documentationcanslantl9D5+igss323 Hatch projed/deFaufcle

45、aTiiardL Pliie-In Ian机匡er - LPVCOHSTABT Epage 3.图 添加兆功能模块向导对话框Page4Hm wide should the obtput be?V/hal is lhe constant akje?2345678Hsii耳 Allow Iri'Systeim Memory Content Editor tc capture andupdate content indecendently of the system clock.The Instance ID k:IIII CanDsl< Back I hext >剩余步骤不需更

46、改设置,在这里可以一步一步单击Next,或者直接单击Finish结束。如下图所示。注意在结束时一定要选择生成“*.bsf ”符号文件。VegaTizard PlucIn aim首er - LPB_COHSTAHT pace 5 of 5LL!3 _冈I AboutIH| PrsmetfefEDAyi SummarySettirupsdocumentationccjnstEntI 旳舛1936Turn on the files you wish tc gen erate* A gray checkmark indicates a File that is aLttomaically genera

47、ted and 4 red checkrnark indicates an o口tional hk. Click Finish to generate the selected Files, The state of each checkbox is maintained in subsequent MegaWizard Plug-In Manager sessionw.The MegaWISdrd Plug-In Manager creates the selected files in the following directory;E L8xp_box_prodledFileS* con

48、stantl.4id constant line constant l.cfnp 回 constantl.bsf coHist5rii;1_iristvhdI De缸中tionVaiiation fileAHDL Include FileVH DL component declaratiom file QumHs I) symbol file Iniaritiation 低 mplag hieCancel I < BackFinish图添加兆功能模块向导对话框一一结束页(5)新建图形设计文件,命名为并保存。文件的设计如下图所示。F D(V4ecaoF D1V*flDTH16dm枫灼

49、9;*=L 1 IBB > = = r i SC3h已4jlock clhouti: idkjkdifl 7.Ddpi .0 s即卩.!亠f i-ij i |1 I MQITiirr PUTI' Jf'l H -t l'"hIII i- iii-t-iiiii-iiiiii-liiih* H -”;一. - - - - t :- ; . - I:Cl(Kk_4yMI、_:LI- > -'I- IP"- -Z-'|-1' l|.-lA I- - I I - II - - - n- : c::> digR -D一

50、AMWl rWWi- T.pAvi- AWh jWVjWWl-> seg7. .0tONSTAhT 列 i 1 那41期枱 i inft4i,图动态LED顶层显示模块(6) 选择目标器件并对相应的引脚进行锁定,这里选择的器件为 Altera公司的Cyclone II系列的EP2C5Q208C8或者Cyclone I系列的EP 1C12Q240C8引脚锁定方法如下表所列。表引脚锁定方法表引脚锁定方法信号引脚信号引脚EP 2C5EP1C12EP 2C5EP1C12seg0145161dig0135138seg1142144dig1127137seg2143159dig2133136seg31

51、39141dig3117135seg4141156dig4128网seg5137139dig5115133seg 6138143dig6118132seg7134140dig7113131clock2315311(7) 将设置成顶层实体(Project Set as Top-level Entity )。对该工程文件进行全程编译 处理,若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。(8) 下载程序到芯片上,观察数码管的显示状态。(9) 稳定显示后,放慢扫描速度演示动态显示的原理过程。实验 蜂鸣器输出报警声1.实验目的学习交流蜂鸣器的发声原理。2.3.USEelk 48MIN ST

52、D_LOGIC;out putEND ;OUT STD_LOGIC);实验内容在实验箱上的蜂鸣器输出报警笛声。实验原理实验箱上有一个交流蜂鸣器BUZZER只要在BEEP上输入一定频率的脉冲,蜂鸣器就会发出高低音调不同的声音。4. 实验步骤(1) 启动Quartus II,建立一个空白工程,然后命名为。(2) 新建源程序文件,源代码如下。然后进行综合编译。若在编译过程中发现错误,则找出并更正错误,直到编译成功为止。程序参考:LIBRARY IEEE;beep ISP ORT(ARCHITECTURE one of bee p ISSIGNAL count:STD_LOGIC_VECTOR(27

53、DOWNTO 0);SIGNAL beep_r:STD_LOGIC;BEGINP ROCESS(elk_48M)BEGINIF RISING_EDGE(clk_48M)THENIF count="11" thencount <= "0000000000000000000000000000"ELSEcountv=count+1;END IF;END IF;END P ROCESS;P ROCESS(count(9)BEGINbeep_r<= not (count(13) AND count(24) AND count(27);END P ROC

54、ESS;out pu t<=beep_r;END;(3) 选择目标器件并对相应的引脚进行锁定,这里选择的器件为 Altera公司的Cyclone II系列的EP2C5Q208C8或者Cyclone I系列的EP 1C12Q240C8引脚锁定方法如下表所列。表引脚锁定方法信号引脚信号引脚EP 2C5EP1C12EP 2C5EP1C12bee P103119elk23153(4) 对该工程文件进行全程编译处理,若在编译过程中发现错误,则找出并更正错误, 直至编译成功为止。(5) 将JP2和JP20的beep接上,使得蜂鸣器有效。下载程序到芯片上,将跳线短接帽接好,此时可以听到蜂鸣器发出“滴滴”的报警声。实验1位全加器的文本输入(波形仿真用)1.实验目的通过此实验让学生逐步了解、熟悉和掌握FPGA开发软件Quartus II的使用方法及VHDL的编程方法。学习电路的仿真方法。2. 实验内容本实验的内容是建立一个1位全加器。在实验箱上的按键 KEY1KEY分别为A、B和Cin,并通过LED1LED3指示相应的状态。输出 Sum和Cout通过LED7和LED8指示。3. 实验原理1位全加器的真值表如下所示。表1位全加器逻辑功能真值表ABCi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论