文章目录
- 一、新建项目
- 1、选择芯片
- 2、Qsys设计
- 2.1、点击Platform Designer
- 2.2配置软核
- 2.3其他设置
- 3、Quartus设计
- 3.1添加原理图
- 3.2添加qip文件
- 3.3其他设置
- 3.4驱动设置
- 4、Nios-II Eslipse设计
- 参考
一、新建项目
使用的Quartus 18.0及以上版本
1、选择芯片
2、Qsys设计
2.1、点击Platform Designer
进去后,点击file下的save,将文件命名为Kernel.qsys.
2.2配置软核
设置时钟
添加Nios-II Processor,并重命名为cpu.
添加配置JTAG,并重命名为uart,中断一定要链接。
添加RAM,并命名为onchip_ram,双击改变或者右键edit
改为40960
添加PIO
设置输出
添加System ID Peripheral
整体链接如图,参考黑点。
2.3其他设置
右键edit编辑cpu
如果没有选项,检查该处是否连接
点击System -> Assign Base Address
点击System -> Create Global Reset NetWork
生成HDL后点击Generate.
3、Quartus设计
3.1添加原理图
双击空白,导入生成的Kernel.bsf
修改led端口为out_led
3.2添加qip文件
在创建的项目路径下,添加Kenerl.qip
3.3其他设置
Assignments -> Device ->Device and Pin Options
编译后配置引脚
全编译后烧录到板子上(初次烧录可能会出现驱动问题)
3.4驱动设置
板子通电,连接电脑后,打开设备管理器,点击更新驱动程序
点击浏览以查找
在你安装quartus的目录下找
该图表示成果,点击关闭
4、Nios-II Eslipse设计
点击Tools -> Nios II SoftWare Build Tools for Eclipse
按图点击
写项目名称,选择helloworld模板。
替换
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
#include "stdio.h"
const alt_u8
led_data[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
int main (void)
{
int count=0;
alt_u8 led;
volatile int i;
while (1)
{ if (count==7)
{count=0;}
else
{count++;}
led=led_data[count];
IOWR_ALTERA_AVALON_PIO_DATA(PIO_LED_BASE, led);
i = 0;
printf("Hello Nios-II\n");
while (i<500000)
i++;
}
return 0;
}
编译运行
再运行,就可以看到现象
参考
https://blog.csdn.net/m0_70482748/article/details/136620531
https://blog.csdn.net/weixin_54435584/article/details/130025896