版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、NiosII软件设计与运行流程本实验是于实验1相连的,本实验主要完成在NiosII硬件系统完成及下载于 FPGA中的基础上,进行软件开发、下载和调试,具体流程如下:1、向FPGA下载配置文件。以下的实验将更多地与 SOPC实验系统联系。本次实验 是使用清华大学电工电子实验中心的 GW48-SOPC实验系统(康芯公司),下载前连接好下 载通信线,打开电源,打开光盘上关于此实验系统的PDF/PPT默认设置说明,确认实验系统所有开关和跳线处于默认设置位置。用10芯通信线将实验系统左侧的“ Byterblaster II”接口与适配板上的JTAG Port 口相连;将实验系统左侧的跳线短路帽接插“By
2、Bt II ”端,编程电压选择跳线短路帽插3.3V(此电压接错不会损坏系统)。按动实验系统左下角的电路模式控制键,选择模式5 (在上方的数码管会显示5字),这时实验系统将进入附录中附图1的电路连接模式(有 12中不同的可选硬件电路模式)。注意模式5的8个键控特点:每按键一次,输出电平反相一次,电平高低由此键上方的发光管显示;还注意到此时FPGA输出的32个I/O 口接了 8个数码管,每4个I/O 口接一个数码管, 且在每一数码管外接了一个16进制至7段译码的译码器,这样可以大大节省I/O 口的耗用。FPGA的主要端口是用标准信号名PIOx标注的,具体引脚号在引脚锁定时查阅附录的附表1;例如附图
3、1中连接FPGA的键8端口标准信号名是“ PIO7”,查附表1,横项 GW48-SOPC 对应 Pin240。现在可以开始下载配置文件,以便在 FPGA中建立NiosII硬件环境。打开 QuartusII , 再打开实验一的工程,选择菜单Tools Programmer,弹出图2-1所示窗口,首先选择接口模式,对于Mode栏确认选择JTAG模式;如果是首次安装并使用该软件,要作下载接口模 式选择:点击图 2-1左侧的Hardware Setup按纽,将弹出图 2-2所示窗口。如果实验系统的连接是正确的,在图2-2的窗中的 Hardware栏应该看到测试到的“ByteBlasterII ”接口名
4、,双击该名再退出该窗,就能在图2-1窗的Hardware Setup按纽右侧看到 ByteBlasterIILPT1字样。最后如图 2-3,加入配置文件 niosII_lab.sof,点击 Start按 钮,下载该文件。由图1-33可见,该NiosII系统是低电平复位,高电平正常工作,所以在下载了SOF文件后,要将实验系统的键 8置于高电平(NiosII系统的复位信号锁定于键 8 Pin240,模式 5)。2、 进入集成开发环境 IDE。再次进入图1-23所示的SOPC Builder窗, 进入System Generaiom 页,点击 Run NiosII IDE 按纽(图 2-4),或选择
5、菜单 Tools Nios II IDE ,进 入IDE环境。File Module Syslem View Tools HelpSysteni Contents | H More cpiT Swings System Generation OptiCrIS Run Nos I IDEHDL. Generate mocUe logic In VHDL|7 SlmulBilcin. Create -similsrtoif prefect Iles.WUler* SOK Bulftir - m作此选择后将弹出图 2-5所示的窗口,其中有一个软件过程路径选择窗workspace,在此选择如图所示的路
6、径,他是本示例中已预先建立的一个空文件夹;如果此前已经有了自己的软件实例工程库文件夹,现在还想使用,则必须浏览到对于路径,并进入该文件夹。点击OK后将出现图2-6所示的窗口(以后进入同一工程库将不会出现该窗)。再点击此窗右上角的 workbench按钮,即进入IDE环境。3、 建立C软件开发工程。 进入的IDE环境窗口的左栏是各工程的工程名和相关的应 用文件名,中间是选中的某一文件的内容,及其编辑环境;右栏是对应文件中关键项目名称。为了新建一个开发软件的工程项目,选择菜单File的New->Project.(图2-7),在弹出的如图2-8所示的窗口中选择 C/C+ Application
7、 ,并按Next按钮,在于继而弹出的窗口 (图 2-9)中选择现成的实例" Hello_Led”作为实验程序,并在工程名栏键入当前软件实例工程 名:“led_8bit"并确认在.Select Target Hardware 栏中的 ptf 文件来自当前 SOPC Builder System的硬件设计文件和处理器名:Nios2_systm.ptf ,和CPU名:"CPU"。Select a ww-kspaceKi. ox. U IDE Etatr as. youff- pr oj eels. in. a direct ary caII ad a th*
8、w-otkz.p-ACA ditrto a专油 fw Ibis. s.6E.£ioa.野山土F而面57而不而屈五曲j而而嬴三I:4_ Ust this as. tht dafA.ult mJ do nx>l uk 峪CwictlINTEGRATED DEVELOPMEENVIRONMENT*图2-5选择软件工程库 eg -ia»J图2-6 选择进入IDE软件设计/调试平台.T/Ct+ - Bi vt II IDIFelderPto j tel,.File Ed.Lt tfdLVLg«ta clt Rim Troj sei. Taals WstliIciv K
9、alpFilfW gFil。Q C/C'HCtrl4HJFr»j *ct图2-7建立一个软件实例工程Select a 1匣otdTh? HiII IBB Rfill create uid 初皿3仃言 the indkefile I。bualdl diiy project.Tha Haos II IDE vill also crA&.ta ojlJ n-uiag& ati 匕土必亡1七电日 EystnViz ords:国Ut*r> 叼“ II闺CVS田王理1图2-8 选择C/C+应用图2-9在示例库中选择一个 C程序实例点击Finish后即进入如图2-10
10、所示的IDE环境,在左栏已能看见新建的工程:led_8bit , 双击下方的程序名 hello_led.c,在中栏即能看见此源程序代码(图 2-10)。将代码中原语句 while (i<200000)改为 while (i<400000)。4、编译运行C程序。在左边的“ C/C+ Projects ”页一栏中,右键点击需要运行的工 程名:“led_8bit”,将出现图2-11所示下拉选择框;选才i Run As后出现另一下拉栏,此栏有3个选择项:第一个选项功能是编译并向FPGA中的NiosII CPU下载和全速运行该工程中程序;第二个选项功能是编译并在虚拟的NiosII中运行程序;
11、第三个选项功能是使用第2-12方工具运行;在此选择第一项功能:Run As-> Nios II Hardware .。选中后将可能出现图所示的窗口,选择 OK,表示对新改的程序存盘。图 2-10 进入 NiosII IDE 窗口iJIs tOEIEff1;m 的 heU _ wl- ,目 raadl+l led_Pbi由IIEJ£1L s 0;rhilr | E 口口口皿 i+;De bui At出ul" Proj tel图2-11 编译、下载并在 NiosII CPU中全速运行该示例2-12 存盘已修改的C源程序4、观察运行结果。 在如果一切无误,最后在下方的con
12、sole信息窗将出现如图2-13所示信息,表示已将程序下载到NiosII系统,并已运行。注意,如果有问题可以再下载一次。一般出现的问题有多种:如没有将当前硬件工程中的SOF文件配制进FPGA ;没有为复位信号设置正确电平;没有设定正确的系统时钟输入频率;没有设置好正确的下载接口模式;没有对实验系统选择正确的电路模式(模式5),等等。程序运行后可以在实验系统上的上排8个发光管上发现它们在从左至右,从右至左跳动发亮,跳动的速度由语句while (i<400000)中的数值决定。hello_led.c,也能进行单步/跟踪等方“led_8bit",右键点击后出现如图- OE 第ffl
13、oled = led « 1;一图I囹 l二 liO-djBbl I0 ”的旧II白忌 prejecl_ 由一。货mr S 曰 Inclclow*QUPGqOpen in Jew WLndowjtTheKirn A±tQALTERA_AVALaN_PIO_DATA(LED PIO BASE, led),delay element in this design hets been wr:$VQidl confuting the 皆。工工war曰 debuggei* + ABuild PrajtclHi XI Instruction Set Sintila-t0rok II M
14、W ccnfib.11on Ki 工 II Kardjvu*o- ETl ox 工工 Tiarmiti&IpttDiiial: coiinecc-edl to hardware target using JIr t ri *r ii ii tf图2-13 C程序下载成功,启动运行5、 单步/跟踪调试运行。对于当前工程中的程序 式的调试运行。在左边的“ C/C+ Projects ”页一栏中,选中工程名:2-14所示下拉选择栏,选择"Debug As”项中的Nios II Hardware项,对跳出的图 2-15所示 的信息窗选择Yes图2-14选择单步/跟踪调试模式运C程序图
15、2-15选择单步/跟踪调试模式运C程序Cl" Vtx3 hU.i1Eratkp巾nJiti Ixjr-isia tr.书工,皿 图A 海>就:|?一 口EJWi.-T II HV r-9Q.fi pirht l-id. Hi oe II FLirdvh*日第指m II Elf D6耳阳/% 10 09 AN> 的如就*dJ-工hmd 0在S W UtjHiH力0 4t 。小】9_】3丁 IX=L _it*rtO kt LiiJAir*%4Ap曲HhMttlliiruiQ血<l«T»iai.Lndi k i. L valui- 口)Hs di II
16、 Darnlchd autpul 图6/OS 10 C9 A.M1 Him II T«md lindw 由西向B L。;啊陋J.工好窜at pill世幡睽L加的AHIID»tvf«r Fem 曲/白/DE I 'Q3 UI),1 Jd* The vbile looji be la v 。忙白dui4色m cbe 舌的e lebavlotf 整 巴M也 fer IwtjJ* 期Qve, :but *ithou。c-auslng oceQti&l deb-ugaez prohl&ns. 71 * a?wlkiJLv (1<4QOOOO1+
17、5图2-16单步/跟踪调试窗最后在将程序下载于实验开发板后弹出如图2-16所示的界面。在该界面的下方是可单步调试和断点设置的程序窗,按动F5键就能单步运行,右上方的窗将显示每一单步运行后, 程序中个变量的变化情况;左上窗可以看到语句步骤数。2-17),选如果需要回到IDE主窗口,可以点击左上方的小按纽,对弹出的下拉框(图 择C/C+即可。-1bmi隼_ii.4+B. II EDEFILa E-di L 珍士事” & RijlTi >tr£ij«el TaoIe Jf.ind.ev Kt IpW=V«-i*blt= IC/C+C/C+耻”II KV c
18、CLE3£nrkli«n tfi qs II Htrdwwel I Mbg整*通出/值|0:Q9 JUM)尊口耳蛔“4, 0 tuspendad)QihAtr . _kt<r t 0 At d: aI tar AeoiipoDb6iit£ bitos2HKL5f e«rtD. S 3E b'J 'CtfeTFLiLklfd, EJCLl vd.n«: 0> 0<14!£ II Dwnlokd output te/S/05 ID.09 API) jbi' | Mi-95 口 Termmal Hi
19、ndi" 0/6/06 l0:0 曲 j> id &s2-gdb- EAtrvatf outp-ut10:09 AM)J Del'iLEE«r Prctss (B/6/05 10.09 AH)图2-17返回IDE主控窗如果希望将已调试好的 C程序COPY到别的文件夹中,可以如图 件名,右键选择 Copy。2-18所示,点击该文匚升 Pry eels X* _J Inclqd电£ 用Delufi:1 Kavigfttdrhello_led.: f q.dne回 H 1曜也用>江营i = D;while (K400aoa) i+;retur
20、n OJ图2-18将已调t好的C程序COPY到其他文件夹存盘6、运行另一个示例程序。与以上流程相同,首先建立一个工程,如图2-19所示,键入工程名为:hello_world_1 ,选择 Select Project Template 栏的示例程序:hello_world。点击 Next 和 Finish。图2-19为测试运行另一个示例程序建立一个新工程图2-20是该新工程稍作修改后的源程序hello_world.c的代码, 存盘。:选才R Run As->JTAGNios II Hardware ,全速运行。完成后我们可以看到,语句执行后打印出的结果通过 UART 口送上了计算机,显示在
21、信息窗内(图 2-21)。I 1 1-2 总一I «- r申 Q Bintrics电"UJ lobdndt 1由Eh归ugiti 白ap$il3C4UiTn. vtf_itxtE 4 Mllj*睢Ld_=yraE dl电由。Bi融由IPrrlldT田&Dctnc1fil E| htllo jtd. c4iE>Lic«.tLoaL £tf电.tMlht L.d.efhiOyilife Ki.6i2_S1f£TNJj© 卜*11号 14- 的 h*l<l*JTQld q白* Foe 曰 reduced fDOcpzln
22、t veraloa 口f this 匕曰力91 3re,&ti, to reduce the Tnewory ToonprlBT: lor 且 given sppllcac-lonr aec,"smeJ. l_lwsL lQ_wor 1templets rT7# includ.«!式色匕白工小ah>int gain。I Eprint! HellQ tree* II ;pr 4nE PtH B-SOPC 5OARB , 口灯; retiarn CljI JdlI上J一图2-20修改hello_world.c源程序Fru&lm,j 曰的5口1青 , Fra
23、ptrli esBhello_inxrldLl Flos H KV跖II Kar dv ar el Huw 口 Terfinal Viadw C8/B/O5 T 33 AH)siloa3-cermlnals connectedl do hardv&re Dargec using JT2G DART on gstole uloa2-cenulneil: ByceBleacerETY LPT1 device 1F mscaifLce 0nios3 - terminal i UaEnlnu: The JTAG catale you aze using is noc supported foe
24、 Hios nlosa-icentalnal! II B?aceins. You Jnap experience luceirittlcteific JTAG CDHtaUJilcatlon siloa2-terminal! failures glih tHls ceJble. Please use a U3B Blaster revision B viioaZ-terminal: cable or another supiiDri: ed. catole. Please refer to the file rLioaS-tieiniinal: erraca-tKC lucludeil in
25、the Nios II developinenE, Kit documencs XLioaa-t-ersBinal: directory for Mre LnfoiDiarlon.niosZ-ierhiinal: |Uae ihe IDE stop bu'ctoB or CtEl-C to rernjinace|iHello frsiu Nlos II! GWQ-SOPC BOAP£ !JTAG_UART 口输出执行结果图2-21 hello_world.c程序下载运行成功,并通过7、运行用户程序。在如果用户自己编辑了一个程序该如何加入工程中进行调试呢?步骤如下:与以上步骤基
26、本相同,首先是为自己的程序建立一个工程(图2-22),同样选择C/C+应用(图2-23);- hitlIrjqFl*.F - :Bi,U UIEtile Edit 邸甲i,豺七色 Sborch Run Kirdjact T«oJLs. Vindov HaLpinliidft -fst.dliri./h>图2-22为调试一个用户程序建立一个空白工程.Ee Tr«ji>ectSelect a MrizardTh 白 案今工 II IDE / ill cr Ait a ai.<i 孙*静 Uu n&ktEil a to bidlLd. this pirc
27、ijtct.The 3i«£ Il n>E «iH «1=4 cr«A.t& 皿d n©蟠由 &n. ass.ocLA.ttd 卬s:Q电小标 Me CM if,E . ikiAra ni4-E n申-eCVSE b -t Sinplfi图2-23 同样选择C/C+应用在弹出的图2-24窗中的Select Project Template栏选择Blank Project,建立一个空白工程, 即未含源程序代码的工程,键入工程名,如 Project_LED ,点击Next和Finish按纽后回到 IDE 窗口。在 I
28、DE 窗,点击左侧的 “ C/C+ Projects” 页旁的 “ Navigator” 页(图 2-26);然后打开 Windows的资源管理器,找到自己C程序放置的文件夹(如 hello_SEG7.c ,如图2-26所示),打开,再缩小资源管理器的界面,用鼠标点住文件名(如 hello_SEG7.c), 拖向左侧IDE窗口的Project_LED过程名中。再点击“ C/C+ Projects”页,返回软件工程窗(图2-27)。完成后即能在此工程名下看到被拖入的C程序。选择Run As-> Nios II Hardware ,全速运行之(图 2-27)。注意不要忘了,在这之前下 载当前
29、工程的SOF配置文件进入FPGA中,选择实验系统模式 5,设置复位信号允许工作。2dhdI« 1.WL IfXtM! libo- KTFJI rFxt* lLbru_F ari 工 nt dfidr i vari. tXiit prdniri dix iccait tn Lhiiu-fat biu-J> u- f* 5* 电 口h i7Tt4* lilwtfy :Md>rc-j»ct_LEl_a?xlilThu xw irxt* libr u-f prajAct vill 匕函 locjit-id ralikt:3V4 ts Lhi tpls cj.ti to.
30、 praj«rt.L SalHl W 曰*庵L* « 19Irt*wHL*bl* Em LiWw7 h-*jKiE f«-岁STM口宫h.HiErldJ.TFJ/ (ITtoi2_STETl口空L&JtnLwil滤lfafli2_STET«Ei nLihC Ui = 0图2-24 选择空白工程,并取名为: project_LED设置图2-25 选择默认EbE MILlMlL用 空 Mil 口上"14_1_5?直" MiQ=2FST«E 苣 l»d_Bbrt田。1 ed_i3fba t_Eyslili li. ot2TST«J用 昌;His II BevaCe DriversEJ Ie? proj fcct.UD二JgJX:域:(=一的-Hl.cdtbulld,edt>r«jeel.prcjset appli c«tiioii, r*富办电txE臼 lc_>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 关于寻找赞助的咨询服务行业经营分析报告
- 脚踏车踏板项目营销计划书
- 医用恒温箱产业链招商引资的调研报告
- 电话答录机市场分析及投资价值研究报告
- 废物气化技术行业市场调研分析报告
- 外科医生用镜产品供应链分析
- 蜡纸成品项目运营指导方案
- 卸妆用薄纸产品供应链分析
- 商业战略计划服务行业经营分析报告
- 个人私有云服务行业营销策略方案
- 常见信访问题及答复依据(57)课件
- 体系工程师年终总结
- 降低手术病人呼吸功能锻炼的不规范率 肝胆外科一等奖品管圈果汇报护理课件
- 关于人员调整的报告
- 存储巡检报告
- 口腔供应室知识讲座
- 酒店餐饮管理职业生涯规划与管理
- 机械制图直线的投影公开课课件1
- 商业秘密保护意识培训
- 专题03 中点弦问题(点差法)(教师版)2024高考数学复习满分突破
- 成人重症患者镇痛管理(专家共识)
评论
0/150
提交评论