




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FPGA CPLD 原理及应用课程设计报告原理及应用课程设计报告 题目 题目 万年历万年历 学院学院 信息与电子工程学院信息与电子工程学院 专业专业 电子科学与技术电子科学与技术 学号学号 姓名姓名 指导老师指导老师 时间 时间 2013 7 152013 7 15 2013 7 202013 7 20 1 一 摘要 本文介绍了一种基于片上可编程系统 SOPC 设计万年历的方法 本次设计 从系统硬件出发 由 CPU 总线 RAM 外接设备等构成 SOPC Builder 的硬件系 统 通过 Nios II DE2 开发的嵌入式软件编写并嵌入 SOPC Builder 的硬件中实 现万年历的整体开发 通过应用 SoPC Builder 开发工具 设计者可以摆脱传统 的 易于出错的软硬件设计细节 从而达到加快项目开发 缩短开发周期 节 约开发成本的目的并具有高集成度 设计灵活和可移植性较好 关键词 万年历 SOPC SOPC Builder Nios II DE2 二 设计要求 用 Nios II DE2 开发板的 LCD 显示电子钟的日期和时间 LCD 分两行 显示 第 1 行显示年 月 日 第 2 行显示时 分 秒 用输入 BUTTON 0 来 控制 LCD 行的修改 同时让 Nios II DE2 开发板上的绿色发光二极管亮灭来表 示这个选择 当 BUTTON 0 按一下后 LEDG3 亮 可以修改年 月和日的数字 再按一下 BUTTON 0 后 LEDG3 灭 可以修改时 分和秒的数字 另外用输入按钮 BUTTON 3 来控制日期和时间的修改 当处于日期修改方 式时 每次按动一次 BUTTON 3 依次更换 年 月 和 日 的修改 当 处于时间修改方式时 每次按动一次 BUTTON 3 依次更换 时 分 和 秒 的修改 修改对象被选中后 按动 BUTTON 2 输入按钮可以增加显示的 数字 按动 BUTTON 1 输入按钮可以减少显示的数字 三 设计内容 1 1 按键信息 按键信息 BUTTON 3 年 月 日 或 时 分 秒 切换键 BUTTON 2 键 BUTTON 1 键 BUTTON 0 年 月 日 与 时 分 秒 切换键 显示信息 LCD Line1 显示 年 月 日 LCD Line1 显示 时 分 秒 2 2 SOPCSOPC BuilderBuilder 硬件建立硬件建立 SOPC Builder 是在 Quartus II 里的 SOPC Builder 进行的 先建立工 程 在 SOPC Builder 里添加硬件 包括 CPU jtag uart RAM LCD PIO 按键 LED 以及 LCD ON 3 3 QuartusQuartus IIII 硬件处理硬件处理 硬件会自动建立一个顶层模块 通过建一个原理图来对对应的硬件进 行输入输出的添加 再锁定引脚 编译工程 硬件下载 4 4 NiosNios IIII DE2DE2 嵌入软件编写嵌入软件编写 在 Nios II 里建立工程 选择相应的模块 编写需要嵌入的软件 添加 缺少的头文件对应的宏定义 编译工程 进行软件下载 在观察结果 四 设计步骤 1 打开 Quartus II 新建工程 2 2 打开 SOPC Builder 生成相应的硬件如图所示 建立好后点击 Generate 运行 看是否出错 然后点击 exit 退出 3 调用刚才生成的硬件系统 在 Quartus II 中建立图形文件 然后进行引脚 锁定 引脚锁定引脚文件如下 Setup tcl Setup pin setting set global assignment name RESERVE ALL UNUSED PINS AS INPUT TRI STATED set global assignment name ENABLE INIT DONE OUTPUT OFF set location assignment PIN N2 to clk set location assignment PIN V18 to led 3 set location assignment PIN W19 to led 2 set location assignment PIN AF22 to led 1 set location assignment PIN AE22 to led 0 set location assignment PIN W26 to KEY 3 set location assignment PIN P23 to KEY 2 set location assignment PIN N23 to KEY 1 set location assignment PIN G26 to KEY 0 set location assignment PIN K4 to LCD RW set location assignment PIN K3 to LCD EN set location assignment PIN K1 to LCD RS set location assignment PIN L4 to LCD ON set location assignment PIN J1 to LCD DATA 0 set location assignment PIN J2 to LCD DATA 1 set location assignment PIN H1 to LCD DATA 2 set location assignment PIN H2 to LCD DATA 3 set location assignment PIN J4 to LCD DATA 4 set location assignment PIN J3 to LCD DATA 5 set location assignment PIN H4 to LCD DATA 6 set location assignment PIN H3 to LCD DATA 7 然后进行编译 在 Quartus I 下生成文件如下图 3 4 Nios II 运行 打开 Nios II IDE2 建立工程 选择 count binary 模块 添加一个 LCD h 的顶层文件 LCD h 的顶层文件为 ifndef ifndef LCD H define define LCD H LCD Module 16 2 define define lcd write cmd base data IOWR base 0 data define define lcd read cmd base IORD base 1 define define lcd write data base data IOWR base 2 data define define lcd read data base IORD base 3 voidvoid LCD Init voidvoid LCD Show Text charchar Text voidvoid LCD Line2 voidvoid LCD Test endif endif LCD H 然后建立 count binary 的 C 文件 C 文件见附件 5 连接开发板 将文件下载到开发板 运行文件检验是否正确 6 检查错误并修改 知道结果正确 五 运行情况与问题分析 1 建立工程时 注意不能出现中文或者空格 且工程名需与文件名一致 选定芯片 2 在生成 CPU 硬件系统时 定义端口时 需注意设定端口输入与输出的位 宽 需与程序定义的数值一致 否则运行溢出报错 须修改 3 建立图形文件后 需进行编译 出现错误得返回原理图核对 找到错误 修改后重新编译 4 进行引脚锁定时 注意引脚文件的编写 否则选择引脚文件点击 Run 后 会不成功 从而影响后面程序的调试 5 当日数为31时 调节月份日期不会随机改变 就会出现4月31日等错误 加入程序段但是还是没有完成跳变 4 6 程序中闪烁程序段 跳变程序段不执行 程序还需后续修改 六 结论 采用NIOS 集成开发环境提供的快捷开发手段 在EP4CE115F29C7N芯片上 创建了一个用户定制CPU和外设的片上系统 同时完成对液晶显示器和LED的编 程控制 整个系统充分体现了SOPC设计方法的灵活性 设计时只定制系统需要 的外设器件接口 避免过多的外围电路和器件造成体积 功耗的增多和可靠性 的下降 由于采用软核结构 方便系统的升级和扩展 而不必硬件改版 节约 了成本 加快开发进度 缩短了产品的开发周期 综上所述 万年历的设计思 想新颖独特 有很多创新之处 七 心得体会 经过本次 SOPC 课程设计实验 使我更加熟悉了 Quartus 与 Nios DE2 以及开发板的使用 熟练掌握了从理论设计到硬件开发的流程 了解了万 年历通过编程实现的整个过程 从整个实验实现的过程中 碰到一些以前未出 现过的问题 在自己的努力以及同学 老师的帮助下 使自己的理论及操作水 平有所提高 在此我要郑重感谢指导老师 5 附 件 C C 程序代码如下 程序代码如下 Hello World example This example prints Hello from Nios II to the STDOUT stream It runs on the Nios II standard full featured fast and low cost example designs It runs with or without the MicroC OS II RTOS and requires a STDOUT device in your system s hardware The memory footprint of this hosted application is 69 kbytes by default using the standard reference design For a reduced footprint version of this template and an explanation of how to reduce the memory footprint for a given application see the small hello world template include include altera avalon pio regs h include alt types h include system h ifndef LCD H define LCD H LCD Module 16 2 define lcd write cmd base data IOWR base 0 data define lcd read cmd base IORD base 1 define lcd write data base data IOWR base 2 data define lcd read data base IORD base 3 void LCD Init void LCD Show Text char Text void LCD Line2 void LCD Test 6 endif LCD H int year 2013 int month 7 int day 15 int hour 20 int minute 25 int second 30 int selectkey 1 int selectkeylr 1 int ms 0 int KEY 0 int shift 0 con 0 step 0 include basic io h volatile int edge capture void LCD Init lcd write cmd LCD BASE 0 x38 usleep 2000 lcd write cmd LCD BASE 0 x0C usleep 2000 lcd write cmd LCD BASE 0 x01 usleep 2000 lcd write cmd LCD BASE 0 x06 usleep 2000 lcd write cmd LCD BASE 0 x80 usleep 2000 void LC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 颅脑外伤急救处理流程标准化
- 螃蟹冷链运输管理流程
- 数控专业多维度学生评价体系设计
- 高三数学复习第一轮计划与安排表
- 《夏洛的网》教学讨论与拓展活动
- 2025年超声无损检测设备合作协议书
- 小学数学二年级阶段性测试题汇编
- 全国青少年编程等级考试试卷(初级)2023
- 机械制造企业工艺流程优化方案
- 2025-2030光伏制氢技术路线比较与经济性评估研究报告
- 梯田文化课件七年级
- CJ/T 164-2014节水型生活用水器具
- 固收理财合同协议
- 配送生鲜公司管理制度
- JJF(新) 129-2024 阻容法烟气含湿量测定仪校准规范
- CVC堵管的处理及预防
- 2025高考复习必背译林版高中英语全七册单词表
- 2025年人教新课标高一地理上册月考试卷
- 《临床心胸外科培训》课件
- 店长周工作总结数据报表模板
- “五育并举”视域下美育对工科大学生审美能力的提升研究
评论
0/150
提交评论