1.開(kāi)發(fā)板硬件資源介紹
本次測(cè)評(píng)開(kāi)發(fā)板使用MCIMX6Y2為主CPU,256MB DDR3L內(nèi)存,256MB NANDFLASH存儲(chǔ)空間。MCIMX6Y2是IMX6ULL系列中的一款工業(yè)級(jí)版本,工作溫度在-40℃~85℃。該CPU基于Arm Cortex-A7內(nèi)核,最高工作頻率可以到900MHZ。CPU接口豐富,支持8路串口、2路網(wǎng)口、2路can口、2 路I2C口、2路USB、3路音頻口。可見(jiàn)其非常適合做工業(yè)控制領(lǐng)域應(yīng)用開(kāi)發(fā)。
2.開(kāi)發(fā)環(huán)境搭建
本次測(cè)評(píng)開(kāi)發(fā)環(huán)境基于《OKMX6ULL-S_Qt5.6+Linux4.1.15軟件手冊(cè)_V1.1_2020.07.06.pdf》搭建,包括:交叉編譯工具安裝、Linux4.1.15交叉編譯、zImage及.dtb燒錄三部分。
2.1.交叉編譯工具安裝
1)拷貝
fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.0.0.sh到服務(wù)器中。
文件路徑為:OKMX6ULL-S(eMMC&NAND 版)-Qt5.6+Linux4.1.15用戶資料-2020.06.08\工具\(yùn)
2)執(zhí)行該文件完成安裝
sudo sh fsl-imx-x11-glibc-x86_64-meta-toolchain-qt5-cortexa7hf-neon-toolchain-4.1.15-2.0.0.sh
3)初始化使用編譯器的環(huán)境變量
source /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
4)交叉編譯命令如下:
a.CC: 交叉編譯工具gcc
b.CXX:交叉編譯工具g++
c.CFLAGS:交叉編譯工具gcc編譯標(biāo)識(shí)
d.CXXFLAGS:交叉編譯工具g++編譯標(biāo)識(shí)
e.LDFLAGS:交叉編譯工鏈接標(biāo)識(shí)
2.2.Linux4.1.15交叉編譯及燒錄
1)按手冊(cè)完成zImage及dtb的交叉編譯
2)使用zImage單步更新進(jìn)行zImage更新
在板子Linux起來(lái)之后依次操作:
flash_erase /dev/mtd4 0 0
nandwrite -p /dev/mtd4 /run/media/sda1/target/zImage
sync
3)單步更新dtb
a.首先板子進(jìn)入uboot,使用printenv命令,查看板子當(dāng)前使用的dtb文件名稱
b.打開(kāi)燒錄工具ucl2.xml文件,路徑為mfgtools\Profiles\Linux\OS Firmware
搜索該dtb燒錄命令
c.在板子linux起來(lái)以后,依次運(yùn)行:
flash_erase /dev/mtd3 0 0
nandwrite -s 0x80000 -p /dev/mtd3 /mnt/imx6ull-S-gpmi-1024x600c7.dtb
sync
4)如果單步更新后,出現(xiàn)板子系統(tǒng)無(wú)法啟動(dòng)的情況,可以使用mfgtools進(jìn)行系統(tǒng)恢復(fù)
3.各功能測(cè)試
3.1.網(wǎng)口測(cè)試
板子起來(lái)后,網(wǎng)口1默認(rèn)Ip:192.168.0.232,網(wǎng)口2默認(rèn)Ip:192.168.1.188。交叉編譯ipref工具,并使用其來(lái)測(cè)試板子網(wǎng)口帶寬。
1)pc端設(shè)置ip:192.168.0.118、192.168.1.118,運(yùn)行jpref server端
2)板子運(yùn)行iperf client端命令
#設(shè)置板子性能優(yōu)先
echo performance 》 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
。/iperf -c 192.168.0.118 -p 5001 -f k -t 1000
。/iperf -c 192.168.1.118 -p 5001 -f k -t 1000
3.2.USB口測(cè)試
1)將U盤格式化為FAT32格式
2)插入U(xiǎn)盤,板子系統(tǒng)會(huì)將其默認(rèn)掛在:/run/media/sda4
3)拷貝二進(jìn)制test.bin文件到/run/media/sda4,文件約740MB
4)dd if=/run/media/sda4/test.bin of=/run/media/sda4/test.bin.cp bs=4k進(jìn)行讀寫雙向測(cè)試
5)命令實(shí)際花費(fèi)時(shí)間約97s,USB 雙向讀寫速率約:7.6MB/s
3.3.高CPU占用時(shí)音頻播放測(cè)試
1)開(kāi)發(fā)板使用WM8960使用了I2C1和SAI2,使用aplay 播放 WAV文件可以直接測(cè)試兩路接口
2)在啟動(dòng)iperf和dd測(cè)試后,cpu占用高于90%,使用aplay播放WAV文件
3)WAV文件正常播放,聲音沒(méi)有卡頓
3.4.串口測(cè)試
1)使用飛凌提供的tty_test.c,文件路徑:
OKMX6ULL-S(eMMC&NAND 版)-Qt5.6+Linux4.1.15用戶資料-2020.06.08\Linux\測(cè)試程序源碼\cmd\cmd
2)用杜邦線連接 uart2 rx 《-》 uart 3tx 和uart2 tx 《-》 uart 3 rx
3)在兩個(gè)窗口分別執(zhí)行
。/tty_test.out /dev/ttymxc1 115200
。/tty_test.out /dev/ttymxc2 115200
可見(jiàn)正常發(fā)送和接收打印log
4)參考《OKMX6ULL-S_應(yīng)用筆記_V1.0_2020.06.08.pdf》,添加uart7,uart8
5)修改imx6ull-14x14-evk.dts文件
6)修改imx6ull-S-gpmi-1024x600c7.dts
7)單步更新dtb,板子系統(tǒng)啟動(dòng)后,可以看到設(shè)備ttymxc6、ttymxc7
8)在兩個(gè)窗口分別執(zhí)行
。/tty_test.out /dev/ttymxc6 115200
。/tty_test.out /dev/ttymxc7 115200
可見(jiàn)正常發(fā)送和接收打印log
3.5.gdb-7.8.1移植
開(kāi)發(fā)板資料中暫時(shí)沒(méi)有g(shù)db,但飛凌之前imx6q的開(kāi)發(fā)板中有,使用該版本gdb進(jìn)行移植。其操作步驟如下:
1)cd gdb-7.8.1
2)mkdir arm-gdb
3)。/configure --host=arm-linux --target=arm-linux --prefix=/home/share/fangling/nxp/imx6ull/lib_app/baseboard_test/gdb-7.8.1/arm-gdb
4)vim 。/gdb/common/gdb_assert.h +26
將
#define gdb_static_assert(expr) \
extern int never_defined_just_used_for_checking[(expr) ? 1 : -1]
修改為:
#define gdb_static_assert(expr) \
extern int never_defined_just_used_for_checking[(1) ? 1 : -1]
5)make && make install
6)如果需要使用gdbserver模式,需要修改
vi 。/gdb-7.8.1/gdb/remote.c +6065
if (buf_len 》 2 * rsa-》sizeof_g_packet) {
rsa-》sizeof_g_packet = buf_len ;
for (i = 0; i 《 gdbarch_num_regs (gdbarch); i++) {
if (rsa-》regs-》pnum == -1)
continue;
if (rsa-》regs-》offset 》= rsa-》sizeof_g_packet)
rsa-》regs-》in_g_packet = 0;
else
rsa-》regs-》in_g_packet = 1;
}
}
3.6.qt_test測(cè)試
開(kāi)發(fā)板支持Qt庫(kù),于是對(duì)qt模塊進(jìn)行了簡(jiǎn)單測(cè)試。
1)編寫qt_test.pro
2)編寫main.cpp
3)qmake
4)make 可編譯可執(zhí)行文件qt_test
4.綜合評(píng)價(jià)
通過(guò)上述測(cè)試發(fā)現(xiàn)OKMX6ULL-S開(kāi)發(fā)板是一款性價(jià)比高,硬件接口完備,軟件資源豐富的開(kāi)發(fā)板,在工業(yè)控制、人機(jī)交互等領(lǐng)域有非常好的應(yīng)用前景。
fqj
評(píng)論
查看更多