创建Qsys_PIO IP核

这篇博客介绍了如何在Qsys系统中添加PIOIP核,以实现4个按键控制4个LED的实验,并配置了上电自启动功能。作者详细展示了从组件设置到连接配置,再到地址分配和例化代码的全过程,同时提到了修改工程文件夹下的qsf文件进行引脚分配,并强调了每次修改NIOS后需要重新generateBSP文件的重要性。
摘要由CSDN通过智能技术生成

实验任务:在Qsys系统加入PIO IP核,完成4个按键控制4个LED的亮灭实验,并实现上电自启动的功能。

在helloworld工程的基础上创建PIO 

组件设置界面如下:

添加两个PIO设置如下:

 

EPCS模块不需要修改,直接点击finish

上电复位后,程序在EPSC中重新启动

连接如下

 重新分配地址: system --> assign base address,消除错误

 

save    generate 

 generate中一定要注意output directory是该工程文件夹下的hardware

修改顶层模块,例化代码

****************************************************************************

module qsys_hello_world(
    input  sys_clk,
     input  sys_rst_n,
     
     //flash
     input  flash_data0,
     output flash_sdo,
     output flash_sce,
     output flash_dclk,
     
     input  [3:0] key,
     output [3:0] led
);

//wire define
wire  clk_100m ;

//例化pll(锁相环)IP核
pll    pll_inst (
    .inclk0         ( sys_clk ),
    .c0             ( clk_100m )
);


//例化Qsys系统
    system_qsys u0 (
        .clk_clk       (clk_100m ),     //   clk.clk
        .epcs_dclk      (flash_dclk),   //  epcs.dclk
        .epcs_sce       (flash_sce),    //      .sce
        .epcs_sdo       (flash_sdo),    //      .sdo
        .epcs_data0     (flash_data0),  //      .data0
        .key_export      (key),    //   //   key.export
        .led_export     (led),    //    //   led.export
        .reset_reset_n (sys_rst_n)  //  // reset.reset_n
    );
endmodule

*************************************************************

引脚分配,直接修改工程文件夹下的qsf文件

assignment中

设置为通用IO口

 打开tools --> nios  software build tools for eclipse ,选择对应工程下的software文件,重新generate BSP文件(每修改一次NIOS,就要重新generate BSP) 

(BSP, board support package, 板级支持包,隔离软件与底层硬件,通过qsys文件自动生成文件连接底层硬件)

 

此地址与NIOS生成的地址一一对应。 system.h 文件的本质就是描述qsys系统。

当头文件加载错误时,  led-->右键 -->properties

 在以下界面增加头文件所在的路径

 build all(ctrl + B)

下载软硬件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值