




已阅读5页,还剩50页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于软核技术的嵌入式系统设计实验四、NiosII系统设计电子钟-DE2北京交通大学 计算机学院教师:丁晓明本实验指导书演示了NiosII系统的硬件设计,软件设计,能实现一个电子钟功能。本实验在前面实验的基础上,同学已经能熟练的使用QuartusII软件和模块化输入方法。本实验主要包括SOPC Builder,NiosII IDE,QuartusII的使用,主要目的在于指导同学学习如何定制一个NiosII硬件系统和如何在此基础上编写软件程序。实验条件: Cyclone II EP2C35F672C6教学套件QuartusII9.0SOPC Builder9.0NiosII9.0 NiosII IDE在本实验中,我们将以Cyclone II EP2C35F672C6学习板为平台,介绍开发一个电子钟的软、硬件方案设计,涉及到的代码,只需要按照实验指导书将代码拷贝到工程文件夹中即可。(注意:使用cyclone开发板的同学在设置时需要做相应的改动)系统软、硬件需求分析:1. 该系统要实现的功能:(1). 在液晶屏上显示时间,日期(2). 对时间、日期能够进行设置2. 硬件系统组成规划根据系统要实现的功能和开发板配置,本项目中需要用到的Cyclone II开发板上的外围器件有:LCD:电子钟显示屏幕按钮:电子钟设置功能键Flash存储器:存储软、硬件程序SRAM存储器:程序运行时将其导入SRAM根据所用到的外设和器件特性,在SOPC Builder中建立系统要添加的模块包括:NiosII CPU定时器,按键PIO,LCD, 外部RAM总线(Avalon三态桥),外部RAM接口,外部Flash接口。3软件系统规划要实现系统所需的功能,大量的工作应该集中在软件设计和优化上。电子钟的软件功能主要分为显示、设置和时间算法三大部分。1. 显示部分显示部分的功能包括:(1). 显示时间(小时:分钟:秒)(2). 显示日期(年-月-日)2. 设置部分设置部分的功能包括:设置小时,设置分钟,设置年份,设置月份,设置日期和退出设置。设置部分的程序主要用在对按键的响应。在编写程序前要对Stratix开发板上的四个按键功能进行如下分配:(1). 主菜单(a). SW0:设置选择键,可依次选择设置小时,分钟,年份,月份和日期 (b). SW1:显示日期键 (c). SW2:显示时间键(2). 子菜单(即进入对某个选项设置后的键盘功能):(a). SW1:选项数字增加 (b). SW2:选项数字减少 (c). SW3:退出对选项的设置,返回主菜单3. 时间算法部分时间算法部分的功能包括:(1). 时间累加(2). 确定每个月的最大天数,使年、月、日能正确累加通过对软件要完成的功能进行分析可以看出,这里只有按键响应和显示部分需要涉及硬件,其它子程序可在进行硬件设计的同时开始编写。4. 软件流程图开始计时初始化液晶初始化变量开始主循环开始检测按键及按键响应结束是否计时?是否实验内容:1. 系统硬件(1) 首先根据前面的实验步骤,创建一个新工程lab4prj。(2)点击 Tools-SOPC Builder,进入SOPC Builder,运行SOPC Builder,(3)给要设计的系统模块命名,此处我们命名为niosII;Target HDL项,选择VHDL,指定设计中各模块生成的HDL类型,命名完毕,点击OK。(4)设置Clock为50MHz,Target Device Family为Cyclone II。(5)双击Avalon Components NiosII Processor,添加一个 NiosII/s 处理器Instruction Cathe:4KBJTAG调试模块等级:Level 2然后点击Finish。用鼠标右键点击cpu_0,选择rename选项,将NiosII处理器cpu_0更名为cpu(6)添加 JTAG UART,在Simulation选项卡下选择Create ModelSim alias to open a window showing output as ASCII text,其他设置保持默认状态,如下图。并命名为jtag_uart (7) 添加一个计时器(Interval Timer),Initial Period设置为10msec,其他为默认设置。并命名为sys_clk_timer。(8)再添加一个计时器,使用如下,并命名为high_res_timer 。(9)添加Avalon Tri-state Bridge,将Incoming Signals设置为Registered模式,并命名为ext_ram_bus(10)添加Flash存储器,设置如下,并命名为ext_flash。(11)添加SDRAM Controller,使用如下设置,并命名为ext_ram。(12)添加Character LCD,并命名为lcd_16207_0。(13)添加一组PIO(Parallel I/O)宽度设置为4位,方向设置为输入,并命名为pio_button。设置如下:(14)添加PLL模块点击 Launch Alteras ALTPLL Mega wizard进入PLL设计器件选择Any,时钟为50Mhz,其他保持默认。点击左上角output clocks对c0的设置如下图所示:然后点击clk c1;点击Finish完成PLL设计。点击Finish然后按照下图做一些改动:(15)到此完成系统的搭建,根据下图的连接关系把各模块与总线连接好。然后选择SystemAuto-Assign Base Addresses,为各模块自动分配地址;再选择Auto-Assign IRQs,自动分配中断顺序。分别在ext_flash和ext_ram的base上点击右键,选择lock base address。最后系统整体配置如下图所示:(19)在NiosII more “cpu” settings选项卡中,设置reset address ext_ram为,exception address为ext_flash,配置如下图所示:点击Generate生成系统(20)SOPC Builder完成,提示成功生成系统,点击Exit。(21)将我们提供的test.bdf原理图文件拷贝到你所做的工程目录下,并将其添加到工程中,设置为顶层文件,打开该文件如图所示: 将SOPC Builder生成的模块插入原理图设计,在原理图空白处单击鼠标右键,选择插入或者双击左键插入选择Projects/niosII(22)设置QuartusII编译工具,点击进入如下界面 (23)管脚分配选择project下的generate Tcl file for project,在如下界面点击ok, 产生的test.tcl文件在QuartusII软件中打开example下的standard工程(D:alterakitsnios2_60examplesvhdlniosII_stratix_1s10),产生standard.tcl文件(同样需要按照上面的步骤产生),把文件中带有set_location_assignment指令,并且-to的后面参数与现有工程中使用管脚名字相关的语句拷贝到test.tcl文件的下面位置,然后保存。(这个过程需要万分的小心和仔细,请大家注意)选择tools下的tcl scripts,按照下图选择tcl文件。点击run,就可以把standard工程的管脚定义运用到现有的工程中,这就是管脚命名时提醒注意的地方,如果管脚名字与standard工程的对应管脚名字不同,那么tcl文件的添加就没有效果了。这种方法可以节省定义管脚的时间,尤其是在有参照工程管脚定义的情况下,更为方便。分配完管脚保存。(24) 点击编译工程。2. 系统软件(1). 首先打开NiosII IDE,选择开始菜单下所有程序中的AlteraNiosII EDS 6.0NiosII IDE。路径设到各自实验工程的software文件夹,若不存在,新建此文件夹。(2). 选择FileNewProject创建新的软件工程,选择C/C+ Application,点击next。并命名为clock,在目标硬件 (Target Hardware)选项中指定为刚才完成的设计文件(nios2.ptf),并选用Blank Project作为模板(3). 点击Next,为刚创建的软件工程建立新的系统库(system library)(4). 鼠标右键点击上一步创建的clock软件工程,选择Import选择Filesystem,在From Directory中选择E:alteraqdesigns60lab5software(路径不唯一,根据自己的修改),Into Directory中选中刚才所创建的软件工程nios2,添加包含源代码的文件clock.c和clock.h(5). 双击打开clock.c文件,浏览阅读代码(6). 设置编译器,鼠标右键单击软件工程clock_syslib,选择Properties,选择System Library,配置如下图所示。(7). 编译程序,鼠标右键单击软件工程clock,选择Build Project,由于第一次编译程序,NiosII IDE会根据硬件配置和编译器配置生成很多库文件,所以时间比较长。(8). 将FPGA配置文件下载到Cyclone芯片上,点击Tools-QuartusII Programmer选择QuartusII生成的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 粪便能源转化效率-洞察及研究
- 低渗透油田气驱技术采收率提升机制研究:数值模拟与实验验证
- 石墨提纯副产酸废水的绿色治理技术研究
- 全球海洋碳汇监测评估体系构建与优化研究
- 数字货币趋势-洞察及研究
- 生物调控碳酸平衡-洞察及研究
- 2025-2030中国再生砖行业发展状况与前景规划分析报告
- 2025-2030中国乳液行业营销渠道与发展前景趋势预测分析报告版
- 2025-2030汽车用品产业政府战略管理与区域发展战略研究报告
- 2025年航天器总体电路项目提案报告模板
- 2025年中考语文二轮复习:标点符号 专题练习题(含答案解析)
- 2025至2030中国船舶舾装行业发展潜力评估及市场趋势研究报告
- 跌倒坠床防范试题及答案
- 2024-2025学年人教版(2024)初中英语七年级下册(全册)知识点归纳
- 企业ESG实践与创新绩效关系研究
- 水果配送合同协议
- 2025春季学期国开电大本科《现代汉语专题》一平台在线形考(任务1至5)试题及答案
- 2025年山东鲁华龙心生物科技股份有限公司招聘笔试参考题库含答案解析
- XXX社区居委会、业主委员会和物业管理机构三方联席会议制度
- 2025-2030液压动力元件行业市场发展分析及前景趋势与投资研究报告
- 幼儿园获奖公开课:大班美术《我想象中的小学老师》课件
评论
0/150
提交评论