加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

[原创]利用 bat 脚本进行 QuartusII 和 NiosII 程序的下载

发布时间:2020-12-15 07:21:33 所属栏目:百科 来源:网络整理
导读:" echo " " read -n 1 -p "Press any key to continue..." echo " " cd ${PGM_PATH} echo "Running Now..." # SOF ELF -- FLASH sof2flash --input=${SOF_FILE} --output="sw.flash" --epcs echo "sof2flash successfully!" elf2flash --input=${ELF_FILE} -

"
echo " "

read -n 1 -p "Press any key to continue..."
    echo " "

    cd ${PGM_PATH}
    echo "Running Now..."

    # SOF & ELF --> FLASH
    sof2flash --input=${SOF_FILE} --output="sw.flash" --epcs
    echo "sof2flash successfully!"
    elf2flash --input=${ELF_FILE} --output="hw.flash" --epcs --after="sw.flash"
    echo "elf2flash successfully!"
    echo " "

    # -b/--base <address>         Base address of FLASH/EPCS to operate on
    # -s/--sidp <address>         Base-address of System ID peripheral on target
    # -I/--id <system-id-value>   Unique ID code for target system
    ################################################
    # 设置下载使用的一些变量(仅限工程师进行修改)
    C_BASE=0x0
    C_SIDP=0x2A40
    C_ID=0x0
    ################################################

    nios2-configure-sof ${SOF_FILE}
    nios2-flash-programmer "sw.flash" --base=${C_BASE} --epcs --sidp=${C_SIDP} --id=${C_ID} --accept-bad-sysid --device=1 --instance=0 '--cable=USB-Blaster on localhost [USB-0]' --program 

    nios2-configure-sof ${SOF_FILE}
    nios2-flash-programmer "hw.flash" --base=${C_BASE} --epcs --sidp=${C_SIDP} --id=${C_ID} --accept-bad-sysid --device=1 --instance=0 '--cable=USB-Blaster on localhost [USB-0]' --program --go 

    echo " "
    echo "Program download successfully!"
    read -n 1 -p "Press any key to close this window..."
    exit
    ;;
*)
    echo "Nios2 Command Line Is Running Now..."
    ;;

```

bat文件的更改

注意:此文件应在路径 altera15.1nios2eds 下。

  • 将备份的 Nios II Command Shell.bat 更改为方便自己使用的文件名,这里更改为 example_bat.bat
  • 找到以下两行
:run_nios2_command_shell
@ "%_QUARTUS_BIN%cygwinbinbash.exe" -c '%_NIOS2EDS_ROOT%nios2_command_shell.sh %*'
  • 将其中的 nios2_command_shell.sh 更改为你自己的sh文件,此处更改为 example_sh.sh

简单说明

备注:有关命令的一些功能介绍,大部分可以在 command line 中在命令后跟上 --help 进行查阅.如下所示。

nios2-configure-sof --help
  • nios2-configure-sof表示sof下载,其后台调用quartus_pgm将sof进行文件下载,等价于如下图形界面下的红框中操作。

  • nios2-download表示elf在线下载,等价于等价于如下图形界面下的红框中操作。

  • nios2-terminal表示进入调试模式,此时下载进去的程序才会运行,同时命令行窗口还将会显示和NiosII软件中一致的信息。
  • sof2flash表示将sof文件转换成S-Record格式的flash文件,方便下载。
  • elf2flash表示将sof文件转换成S-Record格式的flash文件,这里需要注意生成时需要加上--after sw.flash,表示elf程序的地址信息从sof之后开始。
  • nios2-flash-programmer表示固化程序,其后可以接的参数代表含义可--help查看。这里只介绍下上面脚本中所用到的。
    • --base表示Qsys中EPCS模块的起始地址
    • --epcs表示下载的操作对象为EPCS系列芯片
    • --sidp表示Qsys中SystemID模块的起始地址
    • --accept-bad-sysid表示忽略System ID和System Timestamp
    • --program表示下载操作
    • --go表示从起始地址开始运行

下学而上达,循序渐进

[1] Quartus II Scripting Reference Manual
[2] Nios II Flash Programmer User Guide
[3] Nios II Command-Line Tools
[4] Command Line Scripting 2

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读