Nios实验使用串口输出“Hello Nios-II”字符到笔记本电脑

目录

实验过程

创建工程

修改程序

编译工程

运行项目

效果实现

总结

参考


实验过程

硬件设计见博主上篇博客

软件部分设计

下面使用 Nios II Software Build Tools for Eclipse 来完成当前项目的软件开发。

启动 Nios II SBT

按照下图所示点击 Nios II Software Build Tools for Eclipse 打开 Nios II SBT for Eclipse

(2)启动 Workspace 选择当前的项目目录,点 OK。

II SBT for Eclipse 主界面

创建工程

(1)建立新的软件应用,如下图所示:

(2)点击后出现下图,在"SOPC Information File name"窗口中选择 kernel.sopcinfo 文件,以便将生成硬件配置信息和软件应用关联,CPU 栏会自动选择"CPU"。在"Project name"输入"hello_world,"Project template"选择 Hello_World。点击 Finish。

修改程序

在 hell_word.c 里修改流水灯控制程序。

复制代码
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
const alt_u8
led_data[8]={0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF};
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;
 while (i<500000)
 i++;
 }
 return 0;
}

编译工程

右键单击项目名称,在弹出的菜单中选择 Build Project,如下图所示

编译无误即可

运行项目

1)配置 FPGA

(1) 连接 JTAG 到开发板,确定 A.已正确安装驱动。B. 防火墙不会影响到 JTAG

的正常工作。最后给开发板上电。

(2) 如下图所示,启动 Quartus Prime Programmer。

(3) 如下图所示,添加下载文件。然后点击 Start 开始下载,下载成过后关闭,回到 Eclipse 主机面。

2)运行/调式程序

(1) 用户将运行程序来观察编译代码的执行。用户可以在目标硬件上或 Nios II 指

令集仿真器(ISS)上运行程序。本节实验只讲述在目标硬件上调试和运行程序。在 C/C++ Projects 视图中右击 hello_led_0 工程文件夹,然后在弹出的快捷菜单中选择 Run As→Nios II Hardware 运行程序,也可以在菜单栏中选择 Run →Run Configurations,如下图所示。

注意,在目标板上运行程序前,要确保 USB Blaster 下载电缆已经连接好,要保证已经使用硬件系统对 FPGA 完成配置,即完成第(1)步。

配置 Run Configurations,转到"Target Connection"标签栏,点击右侧的 Refresh Connections 将 USB-Blaster 加入,如下图所示。

效果实现

Apply 后,Run。下载完成后,可以看见 Console 里打印信息"hello from Nios

II!",如下图所示:

总结

本次实验通过实践收获了以下几个要点:

了解掌握了nios基本原理及作用

了解掌握了nios的简单使用方法及流程

掌握了eclips进行nios的编程

解决了编译NIOS2出现错误:make:[.mk] Error 1 或者 make: *** [*.elf] Error 1 解决方法见参考

学习 Quartus Prime 、Platform Designer、Nios II SBT 的基本操作;

初步了解 SOPC 的开发流程,基本掌握 Nios II 软核的定制方法;

掌握 Nios II 软件的开发流程,软件的基本调式方法

参考

Nios实验入门实践------用Nios软件编程方式完成LED流水灯显示并使用串口输出"Hello Nios-II"字符到笔记本电脑_de2-115开发板nios实现-CSDN博客

相关推荐
unicrom_深圳市由你创科技2 小时前
如何根据项目需求选型FPGA器件?逻辑单元、BRAM、DSP切片怎么看?
fpga开发
Rondox4 小时前
wake on lan 电脑局域网内远程开机
服务器·网络·电脑
Saniffer_SH4 小时前
【高清视频】实验室搭建PCIe 6.0测试环境需要的retimer卡介绍
服务器·驱动开发·测试工具·fpga开发·计算机外设·硬件架构·压力测试
GateWorld5 小时前
FPGA内部模块PFU配置: 6输入LUT如何实现32位移位寄存器
fpga开发
ACP广源盛139246256735 小时前
ASW3810@ACP#4 路差分 2:1/1:2 双向多路复用 / 解复用器 产品规格与应用总结
大数据·单片机·嵌入式硬件·计算机外设·电脑
一个人旅程~7 小时前
虚数与量子迷踪
经验分享·笔记·微信·电脑·量子计算
FPGA小迷弟20 小时前
FPGA 时序约束基础:从时钟定义到输入输出延迟的完整设置
前端·学习·fpga开发·verilog·fpga
186******2053120 小时前
OPPO手机技巧:如何恢复OPPO手机数据
智能手机·电脑
daxi1501 天前
Verilog入门实战——第3讲:流程控制语句(if-else / case / 循环结构)
fpga开发·fpga
biubiuibiu1 天前
工业机器人编程语言详解:多样化选择与应用
fpga开发·机器人