QNX版本:QNX6.6
宿主系統(tǒng):Windows
交互系統(tǒng):Debin
開發(fā)板:MIZ702 完全兼容ZedBoard
開發(fā)流程:
1、打開QNX Momentics IDE開發(fā)環(huán)境,F(xiàn)ile->QNX Source Package and BSP->Next->選擇從官網(wǎng)下的BSP壓縮包一路Next Finish。
2、在IDE左側(cè)的工程目錄下找到新導(dǎo)入的BSP文件,編譯工程。Note:在編譯BSP之前將/BSP/image/mkflashimage文件的26行的Xilinx SDK路徑根據(jù)自己的安裝情況進(jìn)行修改。后面附修改后的代碼。
3、ZYNQ啟動(dòng)所需要的文件有BOOT.bin和OS鏡像文件。若宿主操作系統(tǒng)為Linux,BSP編譯完成后即可獲得系統(tǒng)需要的文件。NOTE:若使用的開發(fā)板為ZC702 EVM則不需要任何修改,若使用的開發(fā)板為ZedBoard或者自制板卡需要將image文件下的fsbl進(jìn)行替換。
若宿主操作系統(tǒng)為Windows,在編譯完工程后由于mkflashimage腳本文件無法執(zhí)行,不能生成現(xiàn)成得的腳本文件。我們可以查看mkflashimage的代碼 其主要完成了兩個(gè)任務(wù):1、將鏡像名字改成QNX-IFS 2、生成BOOT.bin 這些我們可以不用腳本來實(shí)現(xiàn)。我們可以自己手動(dòng)修改鏡像名字,并使用Xilinx SDK生成BOOT.bin文件。
當(dāng)然也可以使用mkflashimage腳本,但是有些繁瑣,首先WIN+R調(diào)出CMD命令框,然后定位到QNX Momentics IDE安裝路徑下(我的是E盤QNX),執(zhí)行qnx660-env,bat文件。
然后定位到BSP/image路徑下,執(zhí)行sh mkflashimage
這時(shí)候在image下就生成了我們需要的QNX-IFS鏡像和BOOT.bin。NOTE:生成BOOT.bin的原材料有fsbl和IPL,fsbl要和自己板子匹配,上文已說明。
4、將SD卡格式化為FAT32類型,并將QNX-IFS 和 BOOT.bin拷到SD卡中。將板子上電運(yùn)行。可以看到QNX操作系統(tǒng)已經(jīng)運(yùn)行了。
下面是mkflashimage代碼
#!/bin/sh
# script to build a BOOT.bin binary containing the IPL and boot image for ZC702EK.
echo Generating QNX-IFS...
cp ifs-xzynq-zc702.raw QNX-IFS
# Removing previous output binary
if [ -f BOOT.bin ]
then
rm BOOT.bin
fi
# Copy the ELF build output to current folder
# Use install/../mkflashimage if it exists; otherwise use prebuilt/../mkflashimage
if [ -f ../install/armle-v7/boot/sys/ipl-xzynq-zc702 ]
then
cp ../install/armle-v7/boot/sys/ipl-xzynq-zc702 ipl-xzynq-zc702.elf
else
echo Using prebuilt ipl-xzynq-zc702. Run a make command if you wish to change the ipl.
cp ../prebuilt/armle-v7/boot/sys/ipl-xzynq-zc702 ipl-xzynq-zc702.elf
fi
echo Generating BOOT.bin...
# Use bootgen to create the BOOT.bin that contains FSBL + IPL
# Please modify the SDK version (2014.x) to match with the currect version of the tool
#/opt/Xilinx/SDK/2014.1/bin/bootgen -image boot.bif -o i BOOT.bin
E:/vivado/SDK/2016.2/bin/bootgen -image boot.bif -o i BOOT.bin
# Check that it has been created
if [ -f BOOT.bin ]
then
echo Binary ready to be copied
else
echo Failed to create boot image
fi
參考文獻(xiàn):
[1]qnx官方文檔 bps userguide for zc702
[2]qnx官方文檔 build an embedded system
編輯:hfy
-
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6860瀏覽量
123502 -
qnx
+關(guān)注
關(guān)注
0文章
75瀏覽量
26205 -
Zynq
+關(guān)注
關(guān)注
10文章
610瀏覽量
47224
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
ZYNQ Linux操作系統(tǒng)移植四個(gè)部分說明文檔
什么是QNX操作系統(tǒng)
基于Beaglebone的QNX嵌入式實(shí)時(shí)系統(tǒng)
Xilinx Zynq 7000 EPP與ZedBoard之間有什么區(qū)別?
基于QNX實(shí)時(shí)操作系統(tǒng)的圖形控制界面設(shè)計(jì)
什么是QNX操作系統(tǒng)
基于QNX實(shí)時(shí)操作系統(tǒng)的圖形控制界面設(shè)計(jì)
![基于<b class='flag-5'>QNX</b>實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>的圖形控制界面設(shè)計(jì)](https://file1.elecfans.com//web2/M00/A5/56/wKgZomUMN_aAYxBXAAApjwmrp9g091.gif)
QNX推出QNX Neutrino實(shí)時(shí)操作系統(tǒng)
QNX操作系統(tǒng)下的Modbus串口通信設(shè)計(jì)
QNX實(shí)時(shí)操作系統(tǒng)及應(yīng)用分析
![<b class='flag-5'>QNX</b>實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>及應(yīng)用分析](https://file.elecfans.com/web2/M00/49/3B/pYYBAGKhtECAJ1tgAAATz1f1aiM758.jpg)
微型嵌入式實(shí)時(shí)操作系統(tǒng)SmallRTOS在ZYNQ平臺(tái)上的移植
![微型嵌入式實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>SmallRTOS<b class='flag-5'>在</b><b class='flag-5'>ZYNQ</b>平臺(tái)上的移植](https://file1.elecfans.com//web2/M00/A6/A8/wKgZomUMP2-AHqg5AAAj_10cJSo606.png)
運(yùn)行于Zynq SoC上μITRON(操作系統(tǒng))的繼任者:eT
基于QNX操作系統(tǒng)下的Modbus串口通信設(shè)計(jì)
![基于<b class='flag-5'>QNX</b><b class='flag-5'>操作系統(tǒng)</b>下的Modbus串口通信設(shè)計(jì)](https://file.elecfans.com/web2/M00/49/39/poYBAGKhwJCAevTyAAA7u0_HYnw044.png)
基于QNX實(shí)時(shí)操作系統(tǒng)及應(yīng)用分析
![基于<b class='flag-5'>QNX</b>實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>及應(yīng)用分析](https://file.elecfans.com/web2/M00/49/39/poYBAGKhwJCAGtP2AAAtwAC_iRY733.png)
評(píng)論