硬件:米爾i.MX6UL開發板MYD-Y6ULX 簡介:MYD-Y6ULX開發板(i.MX6UL開發板)由MYC-Y6ULX核心板和底板組成,基于NXP i.MX6UL處理器或i.MX6ULL處理器可選,MYD-Y6ULX開發板(i.MX6ULL開發板)提供豐富外設硬件,板載了Mini PCIE接口(用于4G模塊)及SIM卡槽、WIFI芯片及天線接口、雙百兆網口、LCD液晶接口、音頻接口、帶隔離的CAN,RS485,RS232等。 4G模塊 測試 MYD-Y6ULX開發板提供一個支持4G模塊的PCI-E插槽,此插槽使用USB數據線與4G模塊通訊。 當前僅支持移遠EC20型號。 注意:移遠EC20模塊為選購配件,請向米爾科技購買。 硬件連接 安裝移遠EC20模塊到PCI-E插槽(U12)。 將兩頭I-PEX接口的天線安裝在移遠EC20模塊和開發板的J25位置。 安裝SMA天線到開發板的J24位置。 系統中已經加入4G模塊的驅動,啟動后會自動加載相應驅動,驅動加載成功后會出現對應的/dev/ttyUSB*設備,查看: #ls /dev/ttyUSB* /dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3 /dev/ttyUSB4 系統中已加入ppp軟件包,可以直接使用。 啟用ppp0后會自動撥號,連接成功后即獲得IP地址,D25燈常亮。 還需要檢查/etc/resolve.conf文件中的 DNS是否設置正常。 # ifup ppp0 # ifconfig ppp0 ppp0 Link encap ![]() inet addr:10.163.130.65 P-t-P:10.64.64.64 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:5 errors:0 dropped:0 overruns:0 frame:0 TX packets:5 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:62 (62.0 B) TX bytes:86 (86.0 B) # cat /etc/resolv.conf nameserver 202.96.128.86 nameserver 202.96.134.133 然后使用ping命令測試連接4G網絡是否正常。 # ping myir-tech.com PING s-26427.gotocdn.com (118.123.18.103) 56(84) bytes of data. 64 bytes from 118.123.18.103: icmp_seq=1 ttl=117 time=80.5 ms 64 bytes from 118.123.18.103: icmp_seq=2 ttl=117 time=179 ms 64 bytes from 118.123.18.103: icmp_seq=3 ttl=117 time=378 ms 64 bytes from 118.123.18.103: icmp_seq=4 ttl=117 time=118 ms 64 bytes from 118.123.18.103: icmp_seq=5 ttl=117 time=122 ms 64 bytes from 118.123.18.103: icmp_seq=6 ttl=117 time=177 ms 如果上面驗證步驟有異常,可以查看日志來確定問題原因。 # cat /var/log/quectel-dial.log QT應用開發 Qt是一個跨平臺的圖形應用開發框架,被應用在不同尺寸設備和平臺上,同時提供不同版權版本供用戶選擇。 MYD-Y6ULX使用Qt 5.6.2版本進行應 用開發。 在Qt應用開發中,推薦使用QtCreator集成開發環境,可以在Linux PC下開發Qt應用,自動化地交叉編譯為開發板的ARM架構。 本章使用Yocto構建的SDK工具作為交叉編譯系統,配合QtCreator快速開發圖形類應用程序。 開始本章前,請先完成第三章的Yocto構建過程。 或者 使用光盤中提供的預編譯好的SDK工具包。 本章開始前,請安裝好應用SDK開發工具。 安裝QtCreator QtCreator安裝包是一個二進制程序,直接執行就可以完成安裝。 cd $DEV_ROOT chmod a+x 03-Tools/qt-creator-opensource-linux-x86_64-4.1.0.run sudo 03-Tools/Qt/qt-creator-opensource-linux-x86_64-4.1.0.run 執行安裝程序后,一直點擊下一步即可完成。 默認安裝目錄在"/opt/qtcreator-4.1.0"。 安裝完成后,為了讓QtCreator使用Yocto的SDK工具,需要對QtCreator加入環境變量。 修改"/opt/qtcreator-4.1.0/bin/qtcreator.sh"文件,在"#! /bin/sh"前加入Yocto的環境配置即可,參考如下: source /opt/myir-imx6ulx-fb/4.1.15-2.0.1/environment-setup-cortexa7hf-neon-poky-linux-gnueabi #! /bin/sh # Use this script if you add paths to LD_LIBRARY_PATH # that contain libraries that conflict with the # libraries that Qt Creator depends on. 使用QtCreator時,請從終端執行"qtcreator.sh"來啟動QtCreator,參考如下: /opt/qtcreator-4.1.0/bin/qtcreator.sh & 配置QtCreator 第一步,運行 QtCreator 后,依次點擊"Tool"->"Options",出現選項對話框,在左側點擊"Build & Run",右邊選擇"Compilers"標簽。 點擊右 側"Add"按鈕,彈出下拉列表后,選擇"GCC",在下面填寫"Name"為"MYDY6ULx-GCC","Compiler path"點擊旁邊的"Browse.."按鈕選 擇到armpoky-linux-gnueabi-g++的路徑,例子中的路徑是"/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linuxgnueabi/arm-poky-linux-gnueabi-g++"。 填寫完成后,點擊"Apply"。 ![]() 第二步,選擇"Qt Version"標簽,在右側點擊"Add...",會彈出qmake路徑選擇對話框,這里以"/opt/myir-imx6ulx-fb/4.1.15- 2.0.1/sysroots/x86_64-pokysdk-linux/usr/bin/qt5/qmake"為例子。 選擇”qmake”文件后,點擊"Open"按鈕。 "Version name"改為"Qt % {Qt:Version} (MYDY6ulx-qt5)"。 然后點擊"Apply"按鈕. ![]() 第三步,選擇左側"Device",點擊右邊的"Add..."按鈕,在彈出的對話框中選擇Generic Linux Device,再填寫內容"Name"為"MYDY6ULx Board","Host name"為開發板的IP地址(可以暫時填寫任意一個地址),"Username"為"root",然后點擊"Apply" . ![]() 第四步,點擊左側"Build & Run"回到"Kits"標簽下,"Name"為"MYDY6ULx-dev-kit","Device"選擇"MYDY6ULx Board"選項了。 "Sysroot"選擇目標 設備的系統目錄,這里以"/opt/myir-imx6ulx-fb/4.1.15-2.0.1/sysroots/cortexa7hf-neon-poky-linux-gnueabi"為例。 "Compiler"選擇之前配置的名 稱"MYDY6ULx-GCC","Qt version"選擇之前配置的名稱"Qt 5.6.2 (MYDY6ulx-qt5)","Qt mkspec"填寫為"linux-oe-g++"。 其它默認即可,最后點 擊"Apply"和"OK"按鈕。 ![]() 測試Qt應用 為了方便測試之前的配置是否正確,這里提供了一個Qt例程,打開項目后,配置為相應的編譯工具套件,就可以編譯此例程。 第一步,在菜單欄選擇"File"->"Open File or Project",在打開的對話框中,瀏覽到"helloword"例程的目錄下,選擇"helloworld.pro"文件,點 擊"Open"按鈕。 第二步,項目打開后,選擇"MYDY6ULx-dev-kit"選項,這樣"helloworld"項目就會使用"MYDY6ULx-dev-kit"的相關配置構建應用。 ![]() 第三步,點擊菜單欄"Build"->"Build Project hellowrld"按鈕,即可完成項目的編譯,同時下側會有編譯過程輸出。 ![]() QtCreator 構建 helloworld 項目后,編譯好的二進制文件存放在"~/build-helloworld-MYDY6ULx_dev_kit-Debug/"目錄下,可以使用 file 命令查看,是 否編譯為 ARM 架構。 file ~/build-helloworld-MYDY6ULx_dev_kit-Debug/helloworld /home/kevinchen/build-helloworld-MYDY6ULx_dev_kit-Debug/helloworld: ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=9c5f22deb1d8272c2a81528c171d215896112784, not stripped 然后將 helloworld 文件拷貝到開發板下運行即可。 # ./helloworld -platform linuxfb 將會在 LCD 屏幕上看到Qt 窗口中多個QLabel的文本內容。 ![]() |