ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:281.74KB ,
资源ID:6390779      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6390779.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(cpld实验报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

cpld实验报告.docx

1、cpld实验报告南 京 理 工 大 学可编程逻辑器件实验报告姓名:陈昊飞学 号:912101170116学院(系):机械工程学院专 业:测控技术与仪器指导者: 张爱军 评阅者: 2015 年 6 月实验一 MAX+plus开发工具使用1 实验内容通过实验掌握对MAX+plus开发工具使用,使用AHDL语言设计逻辑运算电路:七段译码器。2 实验目的学习利用MAX+plus II 进行可编程逻辑器件电路设计的过程,包括输入、编译和仿真等,熟悉开发板各接口及LED显示。3 实验要求上机操作,通过简单的实例,学会使用MAX+plus II的文本编辑器及进行电路设计以仿真验证的方法,能够将程序下载到开发

2、板观察现象。4 实验仪器安装了MAX+plus II 的PC机一台及开发板一套。5 实验步骤1)在MAX+plus II中编辑好七段译码器的源程序七段式译码器有四条输入数据线,七条输出驱动线,假设式共阴显示器,范例如下:脚位:输入:D3,D2,D1,D0或i3,i2,i1,i0;输出:a,b,c,d,e,f,g或s0,s1,s2,s3,s4,s5,s6;图1.1 七段译码器的显示方式对应输入输出的列表如下:数据线7段码I3I2I1I0S0S1S2S3S4S5S60000111111000010110000001011011010011111100101000110011010110110110

3、1101011111011111100001000111111110011111011101011101111011001111111001001110110101111011110100111111111000111表1.1 七段译码器对应关系新建一个工程文件夹,打开MAX+plus II软件,在此文件夹下创建工程,工程名为led_decode。创建一个文本文件,保存并命名为7segment。利用AHDL语言进行七段译码器的设计。相应的代码如下所示:% -a- % f| |b % -g- % e| |c % -d- %SUBDESIGN 7segment( i3.0 : INPUT; s0,

4、s1,s2,s3,s4,s5,s6,led1 ,led2,led3,led4,led5: OUTPUT;)BEGINLed1=vcc;led2=gnd;led3=gnd;led4=gnd;led5=gnd; TABLE i3.0 = s0,s1,s2,s3,s4,s5,s6; H0 = 1, 1, 1, 1, 1, 1, 0; H1 = 0, 1, 1, 0, 0, 0, 0; H2 = 1, 1, 0, 1, 1, 0, 1; H3 = 1, 1, 1, 1, 0, 0, 1; H4 = 0, 1, 1, 0, 0, 1, 1; H5 = 1, 0, 1, 1, 0, 1, 1; H6 =

5、1, 0, 1, 1, 1, 1, 1; H7 = 1, 1, 1, 0, 0, 0, 0; H8 = 1, 1, 1, 1, 1, 1, 1; H9 = 1, 1, 1, 1, 0, 1, 1; HA = 1, 1, 1, 0, 1, 1, 1; HB = 0, 0, 1, 1, 1, 1, 1; HC = 1, 0, 0, 1, 1, 1, 0; HD = 0, 1, 1, 1, 1, 0, 1; HE = 1, 0, 0, 1, 1, 1, 1; HF = 1, 0, 0, 0, 1, 1, 1; END TABLE;END;其中,led1led5为五个数码管的片选信号,在这里只有1号数

6、码管被选中。然后进行编译Compiler,若有错误则对代码进行相应的修改;若无误则保存。2)编辑芯片引脚实验中双龙SL-MCU/CPLD型实验板芯片的型号为MAX7000S系列下的EPM7128SLC84-6型号,根据开发板的实际情况,引脚的使用情况如下图:i3PIN_36Led0PIN_75i2PIN_35S6PIN_11i1PIN_34S5PIN_10i0PIN_33S4PIN_6Led4PIN_80S3PIN_5Led3PIN_79S2PIN_4Led2PIN_77S1PIN_8Led1PIN_76S0PIN_9表1.2 引脚分配其中,s0-s6为七段译码器的管脚,s0对应9脚,s1对应

7、8脚,s2对应4脚,s3对应5脚,s4对应6脚,s5对应10脚,s6对应11脚。片选信号led1对应80脚,led2对应79脚,led3对应77脚,led4对应76脚,led5对应75脚。输入信号(预置信号K0-K3)设定为开发板上的开关信号,分别为33脚、34脚、35脚和36脚,对应关系任意。3)程序下载将MAX+PLUS II生成的pof文件,加载到pof2jed对话框中,其它不需设置,点击“RUN”按钮,即可在同文件夹目录下,生成jed文件。如下图所示。(说明:双龙SL-MCU/CPLD型实验板上的CPLD型号为ATF1508AS,如不同,请在对话框中选择正确的Device。)图1.2

8、pof文件生成界面将转换好的jed文件,下载到双龙SL-MCU/CPLD型实验板上。1.新建chn文件,FileNew点击OK;2.设置JTAG:Program/Verify;3.加载jed文件,点击OK,并保存;图1.3 程序下载界面4)实验结果拨动相应的拨码开关,可以看到数码管上显示出相应的数字。实现了预想的电路功能。实验二 组合电路模块设计1 实验内容设计七段译码器(BCD码译为共阳极七段码)、算术运算电路(,乘数初始置5,乘数利用拨动开关K1、K2、K3进行置入,结果在LED上显示),并将设计好的电路下载到实验仪的芯片中,进行实物仿真。2 实验目的通过实验,学会组合电路模块的图形编辑和

9、文本编辑的设计方法,掌握电路下载、实物仿真方法。3 实验要求通过实例操作,学会使用MAX+plusII的文本编辑、图形编辑进行基本组合电路电路设计、仿真的方法。4 实验仪器安装了MAX+plus II 的PC机一台及开发板一套。5 实验步骤1)实验原理三位二进制乘法器模块原理M0=A0B0 M1=A1B0+A0B1M2=A2B0+A1B1+A0B2 M3=A2B1+A1B2M4=A2B2 M5=Co三位乘法运算的步骤如上所示。数码管显示译码模块的原理如实验一所述。两模块的连接关系:乘法运算模块的输出的低四位为数码管译码模块的数据输入。2)程序设计新建一个工程文件夹,打开MAX+plus II软

10、件,在此文件夹下创建工程,工程名为text2。此实验涉及多个模块的相互配合使用,其中主程序(三位二进制乘法器)使用AHDL语言,源程序如下:INCLUDE hadd.inc;INCLUDE fudd.inc;SUBDESIGN text2( a2.0 : INPUT ; led1,led2,led3,led4,led5,i,t, c, d, e, f, g : OUTPUT;)VARIABLEn0,n1,n2,n3,n4,n5,n6,n7,n8,b0,b1,b2, m5.0: NODE;h1,h2,h3 : hadd;f1,f2,f3 : fudd;BEGINled1=vcc;led2=gnd

11、;led3=gnd;led4=gnd;led5=gnd;b0=vcc;b1=gnd;b2=vcc;n0=a0&b0; n1=a0&b1; n2=a1&b0;n3=a1&b1; n4=a2&b0; n5=a0&b2;n6=a2&b1; n7=a1&b2; n8=a2&b2;h1.a=n1; h1.b=n2;f1.ci=n3; f1.a=n4; f1.b=n5;f2.ci=f1.co; f2.a=n6; f2.b=n7;h2.a=h1.c; h2.b=f1.s;h3.a=h2.c; h3.b=f2.s;f3.ci=h3.c; f3.a=f2.co; f3.b=n8;m0=n0;m1=h1.s;m2

12、=h2.s;m3=h3.s;m4=f3.s;m5=f3.co;TABLE m5.0 = i,t, c, d, e, f, g; H0 = 1, 1, 1, 1, 1, 1, 0; H1 = 0, 1, 1, 0, 0, 0, 0; H2 = 1, 1, 0, 1, 1, 0, 1; H3 = 1, 1, 1, 1, 0, 0, 1; H4 = 0, 1, 1, 0, 0, 1, 1; H5 = 1, 0, 1, 1, 0, 1, 1; H6 = 1, 0, 1, 1, 1, 1, 1; H7 = 1, 1, 1, 0, 0, 0, 0; H8 = 1, 1, 1, 1, 1, 1, 1; H9

13、 = 1, 1, 1, 1, 0, 1, 1; HA = 1, 1, 1, 0, 1, 1, 1; HB = 0, 0, 1, 1, 1, 1, 1; HC = 1, 0, 0, 1, 1, 1, 0; HD = 0, 1, 1, 1, 1, 0, 1; HE = 1, 0, 0, 1, 1, 1, 1; HF = 1, 0, 0, 0, 1, 1, 1; END TABLE;END;然后进行编译Compiler,若有错误则对代码进行相应的修改;若无误则保存。其中“fudd”为全加器,“hadd”为半加器,b0-b2为预置数,a0-a2为由拨动开关置入的乘数。半加器hadd使用AHDL语言,源

14、程序如下:SUBDESIGN hadd ( a,b : INPUT ; s,c : OUTPUT; )BEGIN TABLE a,b = s,c; 0,0 = 0,0; 0,1 = 1,0; 1,0 = 1,0; 1,1 = 0,1;END TABLE;END;然后进行编译Compiler,若有错误则对代码进行相应的修改;若无误则保存。全加器fudd使用AHDL语言,源程序如下:SUBDESIGN fudd( a, b,ci: INPUT ; s,co : OUTPUT;)BEGINIF (a=0 & b=0 & ci=0) THEN s=gnd;co=gnd;ELSIF (a=0 & b=1

15、 & ci=0) THEN s=vcc;co=gnd;ELSIF (a=1 & b=0 & ci=0) THEN s=vcc; co=gnd;ELSIF (a=1 & b=1 & ci=0) THEN s=vcc;co=vcc;ELSIF (a=0 & b=0 & ci=1) THEN s=vcc;co=gnd;ELSIF (a=0 & b=1 & ci=1) THEN s=gnd;co=vcc;ELSIF (a=1 & b=0 & ci=1) THEN s=gnd;co=VCC;ELSE s=vcc;co=vcc;END IF;END;然后进行编译Compiler,若有错误则对代码进行相应的

16、修改;若无误则保存。3)编辑引脚实验中双龙SL-MCU/CPLD型实验板芯片的型号为MAX7000S系列下的EPM7128SLC84-6型号,根据开发板的实际情况,引脚的使用情况如下图:A2PIN_36Led0PIN_75A1PIN_35S6PIN_11A0PIN_34S5PIN_10S4PIN_6Led4PIN_80S3PIN_5Led3PIN_79S2PIN_4Led2PIN_77S1PIN_8Led1PIN_76S0PIN_9表2.1 引脚编辑4)程序下载将MAX+PLUS II生成的pof文件,加载到pof2jed对话框中,其它不需设置,点击“RUN”按钮,即可在同文件夹目录下,生成j

17、ed文件将转换好的jed文件,下载到双龙SL-MCU/CPLD型实验板上。5)实验现象预置数为2,可以看到输出结果为由拨动开关输入进去的数码乘以2得到的结果在数码管上显示。实验三 计数器电路设计1 实验内容自行设计计数器电路,电路能够记录经过分频后的时钟信号(1Hz),并且将计数值送实验装置的LED数码管(1位)实时显示,通过编程线缆下载到开发板的芯片中,进行动态仿真。2 实验目的通过实验,学会时序电路模块的图形编辑和文本编辑的设计方法,掌握电路下载、实物仿真方法。3 实验要求熟悉实验装置电路原理,设计分频、计数、译码显示电路,并将设计好的电路下载到开发板的芯片中,进行实物仿真。4 实验仪器安

18、装了MAX+plus II 的PC机一台及开发板一套。5 实验步骤1)实验原理开发板上的系统时钟为1MHz,为了得到1Hz的秒脉冲信号,需要将系统时钟进行分频,即设计一个分频器模块电路。分频器的实现原理是利用模的计数器的进位输出信号,将该信号作为触发器的时钟输入端,从而每来个系统时钟脉冲,触发器的输出端即发生翻转,从而实现了1兆的分频。为了在1位数码管上实时显示1Hz脉冲,需要设计一个模10的计数器模块,1Hz信号作为计数器的计数脉冲,使4位计数器从00001001循环计数。相应的输出经过七段译码模块转换为某位数码管的7段码,显示相应的数值。2)程序设计模的计数器模块SUBDESIGN mod

19、_500000( clrn,clk: INPUT; q18.0,co : OUTPUT;)VARIABLEcou18.0 : dff;BEGINcou.clk = clk;IF clrn = 0 THEN cou=0;ELSE IF cou=500000 THEN cou=0; ELSE cou=cou+1; END IF;END IF;q= cou;co=q0&q1&q2&q3&q4&!q5&!q6&!q7&q8&!q9&!q10&!q11&!q12&q13&!q14&q15&q16&q17&q18;END; 利用mod_500000构成分频器的电路原理图如图3-2所示图3.2 分频器模块模

20、10计数器模块SUBDESIGN mod_10( clrn,clk : INPUT; q3.0 : OUTPUT;)VARIABLEcou3.0 : dff;BEGINcou.clk = clk;IF clrn = 0 THEN cou=0;ELSE IF cou=9 THEN cou=0; ELSE cou=cou+1; END IF;END IF;q= cou;END;七段译码模块七段译码模块的相应代码参考实验一的内容。系统的整体电路原理图如下图3-3所示图3-3 系统的电路原理图3)编辑引脚相应的引脚分配如下表3-1所示clkPIN_83Led0PIN_75S6PIN_11S5PIN_10S4PIN_6Led4PIN_80S3PIN_5Led3PIN_79S2PIN_4Led2PIN_77S1PIN_8Led1PIN_76S0PIN_9表3-1 引脚的分配4)程序下载将MAX+PLUS II生成的pof文件,加载到pof2jed对话框中,其它不需设置,点击“RUN”按钮,即可在同文件夹目录下,生成jed文件将转换好的jed文件,下载到双龙SL-MCU/CPLD型实验板上。5)实验现象可以看到开发板上的一位数码管从09循环显示,每隔1秒发生变化。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1