欢迎来到天天文库
浏览记录
ID:9174322
大小:1.94 MB
页数:7页
时间:2018-04-20
《sopc按键控制led灯亮灭实验报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、课程设计报告设计课题:SOPC按键控制LED灯亮灭按键控制LED灯泡亮灭一、设计任务与要求1.实现按键控制小灯泡的亮灭;2.学习并掌握QuartusII9.0软件3.学会SOPC和FPGA电路设计方法二、方案设计与论证在QuartusII9.0软件里利用NiosII完成对软核CPU的设计,设计完成后再搭建外围电路,后在NiosIIIDE里完成代码的编写,最后将设计的电路和编写的代码下片后观察实验现象并调试直至成功。方案一:1.新建一个NewQuartusIIProject,并命名为led_lab2.选择CycloneIII系列的EP3C25F324C8芯片3.CPU内核的设计:3
2、.1新建一个SOPCBuilderSystem,并命名为lab_led3.2将所要设计的CPU模块添加进来,并选择NiosII/e核心3.3再添加jtag和on-chipmemory,并将内存设置为20KB3.4添加两个PIO(并行输入输出),将其中一个设置为Outputportsonly,并命名为led_pio,用作输出模块,另一个设置为Inputportsonly,并命名为key_pio,用作输入模块3.5保存好设计编译后无误4.外围电路的设计4.1新建一个BlockDiagram/SchematicFile文件,并命名为led_lab4.2将上一步设计好的CPU模块添加进来
3、4.3自动生成好管脚后进行编译4.4对输入输出管脚进行分配,完成后再次进行编译5.NiosII代码控制CPU5.1点击NiosIIIDE,新建一个lab_led.c文件5.2编写能够实现按键控制LED灯的代码,后编译、调试6.打开SOPC实验箱,将设计好的电路和编写好的代码下片,观察实验现象并调试四、总原理图及子模块结构图1.CPU内核的设计2.外围电路的搭建3.电路管脚的分配4.实验代码的编写及调试五、综合与调试最终实验代码:#include"sys/alt_stdio.h"#include"system.h"#include"altera_avalon_pio_regs.h"
4、#include"alt_types.h"#includealt_u8K;intmain(void){alt_putstr("Lab2_2-LEDkeypolling!");while(1){K=IORD_ALTERA_AVALON_PIO_DATA(KEY_PIO_BASE);IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE,K);usleep(10000);}return0;}六、结果性能分析当按下KEY1后第一个LED点亮,松开后第一个LED熄灭当按下KEY2后第二个LED点亮,松开后第二个LED熄灭当按下KEY3
5、后第三个LED点亮,松开后第三个LED熄灭当按下KEY4后第四个LED点亮,松开后第四个LED熄灭七、设计作品图片[八、结论与心得]因为有了前两次实验的经验和教训,所以这次实验并没有遇到多少障碍。最主要的困难应该就是实验代码的编写。上一次的实验是要求完成LED的循环亮灭,所以在此基础之上,我们对实验代码进行了稍加修改,主要就是加入了一个Inputports输入端口,以便完成控制按键的输入,其余的部分则和第二个实验代码相差无几。一开始调试的时候,按下第一个按键结果第三个灯亮了,按下第二个按键结果第一个灯亮了,并没有达到实验所要求的目的,所以我们开始排查问题。后来发现是在分配管脚的时
6、候,管脚号分配有误,才导致了这个问题的出现。在查找实验箱上每个按键对应的管脚号并重新分配后,出现了正确的实验现象,因此实验成功了。SOPC课程设计成绩评定表专业:电子信息工程班级:1401班学号:00052姓名:朱博文专业:电子信息工程班级:1401班学号:00013姓名:陈宣至专业:电子信息工程班级:1401班学号:00072姓名:袁畅课题名称SOPC按键控制LED灯亮灭设计任务与要求当分别按下1-4号按键时,LED1-LED4能相应的点亮,当松开按键时,LED能相应的熄灭。指导教师评语成绩:指导教师:时间:年月日
此文档下载收益归作者所有