“EMB-3560”的版本间的差异

来自ARM Wiki
跳转至: 导航搜索
机械尺寸
资源特性
 
(未显示3个用户的52个中间版本)
第1行: 第1行:
==介绍==
+
==资源特性==
[[File:EMB-3560概览.jpg|thumb|frameless|300px|概览]]
+
[[File:EMB-3560概览.jpg|thumb|frameless|300px|概览]]
 
[[File:EMB-3560正面.jpg|thumb|frameless|300px|正面]]
 
[[File:EMB-3560正面.jpg|thumb|frameless|300px|正面]]
[[File:EMB-3560背面.jpg|thumb|frameless|300px|背面]]
 
 
* EMB-3560(简称3560)主板采用基于NXP i.MX 8X四核处理器,产品具有丰富的IO接口及扩展性能,超强的图形处理能力、4K高清视频播放能力及应用计算能力。
 
 
* EMB-3560整板集成度高、All In One设计,主板尺寸:145mmx 105mm,搭载Android9.0系统。
 
 
* EMB-3560具有稳定可靠的工业级性能,可应用于工业自动化和控制、HMI、机器人、楼宇控制、汽车仪表盘、视频/音频、车载信息娱乐系统和车载信息服务等行业领域。
 
 
==资源特性==
 
 
* CPU:NXP i.MX 8X四核处理器
 
* CPU:NXP i.MX 8X四核处理器
 
* GPU:CPU集成
 
* GPU:CPU集成
 
* 内存:板载2GB LPDDR4内存
 
* 内存:板载2GB LPDDR4内存
* 存储:板载16GB EMMC Flash,1x Micro TF
+
* 存储:板载16GB EMMC Flash
* Ethernet:2x LAN,10/100/1000Mbps; 1x 板载WiFi(可选)、板载SIM卡槽(可支持3G/4G网络), BT
+
* Ethernet:2x LAN,10/100/1000Mbps; 1x 板载WiFi(可选)、BT
 +
* 4G:1 x MINI PCIe
 
* Display:1 x LVDS
 
* Display:1 x LVDS
 
* Audio:1x Line out/ Mic in四节耳机,支持5W功放
 
* Audio:1x Line out/ Mic in四节耳机,支持5W功放
* USB Host:1x USB3.0,4x USB2.0 TYPY A, 1x USB OTG
+
* USB Host:1x USB3.0,4x USB2.0, 1x USB OTG
* debug:x Debug, 2x Rs232, 1x RS232/485
+
* COM:1 x Debug,2 x RS232,1 x RS232/485
* COM:2 x RS232,1 x RS232/485
 
 
* TF Card:x1
 
* TF Card:x1
 
* System Control:Reset switch, Power switch
 
* System Control:Reset switch, Power switch
第30行: 第21行:
 
* Watchdog: 支持
 
* Watchdog: 支持
 
* Other I/O: 2x CSI接口,2x CAN,2x I2C,2x SPI,12x GPIO(复用SPI),1 个 Mini PCIE (支持 3 / 4G 带 PCIe 功能)
 
* Other I/O: 2x CSI接口,2x CAN,2x I2C,2x SPI,12x GPIO(复用SPI),1 个 Mini PCIE (支持 3 / 4G 带 PCIe 功能)
* OS: Android 9.0
+
* OS: Android 9.0/Yocto
  
 
==接口布局和尺寸==
 
==接口布局和尺寸==
  
 
===接口布局图===
 
===接口布局图===
::[[File:EMB-3560接口布局正面.jpg |frameless|700px|EMB-2511 接口布局-正面]]
+
::[[File:EMB-3560接口布局正面.jpg |frameless|750px|EMB-3560 接口布局-正面]][[File:EMB-3560接口布局侧面.jpg |frameless|700px|EMB-3560 接口布局-侧面]]
::[[File:EMB-3560接口布局反面.jpg |frameless|700px|EMB-2511 接口布局-反面]]
 
::[[File:EMB-3560接口布局侧面.jpg |frameless|700px|EMB-2511 接口布局-侧面]]
 
  
 
===接口引脚定义===
 
===接口引脚定义===
:*[[EMB-2511-COM|串口(COM、DEBUG、J2、J3、J6 )]]
+
:*[[EMB-3560-COM|串口(COM1-COM3、DEBUG、J2、J3)]]
:*[[EMB-2511-LVDS|显示接口(LVDS、JLVDS)]]
+
:*[[EMB-3560-USB|USB接口(USB12、USB34、USB3_0、OTG)]]
:*[[EMB-2511-LAN|LAN接口]]
+
:*[[EMB-3560-LAN|LAN接口(LAN1、LAN2)]]
:*[[EMB-2511-USB|USB接口(USB1、USB2、OTG)]]  
+
:*[[EMB-3560-LVDS|显示接口(LVDS、JLVDS、J1)]]
:*[[EMB-2511-AUDIO|音频接口]]  
+
:*[[EMB-3560-AUDIO|音频接口(AMP、HeadPhone)]]
:*[[EMB-2511-JFP&POWER|电源、指示灯、开关机、复位按钮(PWR、RESET、PWRSW、JFP)]]  
+
:*[[EMB-3560-SPI&I2C&GPIO|SPI、I2C、GPIO(J4)]]
:*[[EMB-2511-SPI&I2C&GPIO|SPI、I2C、GPIO(J4、J5)]]
+
:*[[EMB-3560-JFP&POWER|电源、指示灯、烧录跳线、开关机、复位按钮(PWR、LED、JD、JFP、RESET、PWRSW)]]  
:*[[EMB-2511-MINIPCIE|MINI PCIE接口]]
+
:*[[EMB-3560-CAN|CAN总线接口(CAN1、CAN2)]]
:*[[EMB-2511-CAM|CAM接口]]
+
:*[[EMB-3560-CAM|CAMERA接口(CAM1、CAM2)]]
:*[[EMB-2511-Other|WIFI、TFcard接口、SIM]]
+
:*[[EMB-3560-Other|WIFI、TFcard接口、SIM卡槽]]
 +
:*[[EMB-3560-MINIPCIE|MINI PCIE接口]]
 +
 
 +
===主板内置插针式引脚排序方式===
 +
:*[[主板插针引脚排序方式]]
  
 
===机械尺寸===
 
===机械尺寸===
第57行: 第50行:
 
===系统下载===
 
===系统下载===
  
::*Android 9.0  [ 下载地址(密码:norcoarm)]
+
;:Android系统
  
<!--
+
::*Android 9.0  [http://norcord.com:8070/d/73c38fcd6b2d489e8244/ 下载地址]
::*Yocto 2.2  [http://norcord.com:8070/d/5498c6f50c484afea6cf/ 下载地址(密码:norcoarm)]
 
 
 
;:Android9.0和Yocto2.5系统(内核版本为4.14.78)
 
 
 
::*Android 9.0  [http://norcord.com:8070/d/8f1dc44579a7430d83e3/ 下载地址]
 
::*Yocto 2.5  [http://norcord.com:8070/d/fcaa3879f87e474b9c12/ 下载地址]
 
-->
 
  
 +
;:Linux系统
  
 +
::*Yocto 2.7  [http://norcord.com:8070/d/4a40442bff3040ed99f5/ 下载地址]
  
 
===系统烧录===
 
===系统烧录===
<!--
 
===Android8.1和Yocto2.2系统烧录(仅支持windows系统烧录)===
 
* 主板处于断电状态下,将主板的otg和Windows主机连接起来,同时将上图中的”位置2”处的J1上的跳冒跳到J2上,然后将主板通电。
 
::[[File:2511_OTG.jpg|frameless|500px|]]
 
::位置1:OTG口
 
::位置2:刷机跳冒座:正常启动时,将跳冒跳至J1上,如上图所示;刷机模式时,将跳冒跳到J2上.J1位置不跳跳冒。
 
::位置3:12v电源输入。
 
  
* 启动烧录工具开始烧录
+
===Android9.0和Yocto系统烧录(支持windows和ubuntu环境烧录)===
::解压烧录包,进入mfgtools目录如下图,双击与主板匹配的绿色vbs文件(注意:并非双击MfgTools2.exe),启动烧录工具。
+
* 主板处于断电状态下,将主板的otg和Windows主机连接起来,将JD1、2脚接上跳帽,然后将主板通电。
::[[File:2510_vbs.png|frameless|500px|]]
+
::[[File:3560_OTG.jpg|frameless|500px|]]
::如下图出现HID-compliant device说明成功连接上主板并进入烧录模式,点击 [Start] 按钮开始烧录
+
::OTG:系统烧录口
::[[File:2510_识别成功.png|frameless|500px|]]
+
::JD:刷机跳冒座:刷机模式时,将跳帽跳到1、2脚;正常启动时,将跳帽移除
::注意 : 如果出现No device connected,表示没有识别到主板,请检查电源及烧录线是否插好,拔插线材确认连接ok后再重新打开相应vbs脚本。
+
::电源:12v电源输入。
 
 
* 完成烧录
 
::烧录过程不需要任何操作,直到出现绿色进度条表示烧录成功。(如果遇到磁盘需要格式化,也不要做任何操作,Mfgtool会自动处理)
 
::[[File:2510_烧录中.png|frameless|500px|]]
 
::
 
 
 
::[[File:2510_烧录成功.png|frameless|500px|]]
 
::注意:烧录完成后,需将J1跳线冒恢复插入才能正常启动
 
-->
 
 
 
<!--
 
===Android9.0和Yocto2.5系统烧录(支持windows和ubuntu环境烧录)===
 
* 主板处于断电状态下,将主板的otg和Windows主机连接起来,同时将上图中的”位置2”处的J1上的跳冒跳到J2上,然后将主板通电。
 
::[[File:2511_OTG.jpg|frameless|500px|]]
 
::位置1:OTG口
 
::位置2:刷机跳冒座:正常启动时,将跳冒跳至J1上,如上图所示;刷机模式时,将跳冒跳到J2上.J1位置不跳跳冒。
 
::位置3:12v电源输入。
 
  
 
* 若主机PC系统是windows系统
 
* 若主机PC系统是windows系统
第116行: 第80行:
 
::[[File:2510_ubuntu系统刷机完成.jpg|frameless|500px|]]
 
::[[File:2510_ubuntu系统刷机完成.jpg|frameless|500px|]]
  
::注意:烧录完成后,需将J1跳线冒恢复插入才能正常启动
+
::注意:烧录完成后,需将JD处的跳帽去除才能正常启动
-->
+
 
 +
===串口调试===
 +
{{COM_DB}}
  
 
===API参考与使用===
 
===API参考与使用===
第126行: 第92行:
 
===ADB调试方法===
 
===ADB调试方法===
 
===== USB ADB使用方法 =====
 
===== USB ADB使用方法 =====
====== 开启主板ADB调试功能 ======
+
{{imx8_usb_adb_debug}}
 
 
#在标准模式下,进入主菜单栏。
 
#点击【Settings】。
 
#进入最底部【System】菜单栏,选择【About tablet】。
 
#连续点击【Build number】7次后,将提示“You are now a developer”。
 
#击【←】图标返回至【Settings】页面,即可看到【Developer options】。
 
#选择【Developer options】,勾选【USB debugging】。
 
::[[File:adb1_imx8M.png|frameless|500px|ADB_slelct]]
 
<br />     
 
:* 连接时屏幕会提示【Allow USB debugging?】,点击【OK】即可。
 
::[[File:adb_ok_imx8M.png|frameless|500px|ADB_true]]   
 
::'''注意 : 使用USB ADB进行调试时,主板端不可以插着USB线上电开机'''
 
  
======数据线ADB连接使用方法======
+
===以太网使用方法===
*下载ADB驱动以及工具
+
{{imx8_eth}}
::*驱动  [http://dl.adbdriver.com/upload/adbdriver.zip 下载地址]
 
::*工具  [https://dl.google.com/android/repository/platform-tools_r27.0.1-windows.zip 下载地址]
 
 
 
*安装ADB驱动以及工具
 
:* 将驱动解压得到可执行文件,将数据线与电脑连接,打开软件,点击[install]即可
 
::[[File:adb驱动.png|frameless|500px|ADB驱动]]
 
<br />
 
:* 将工具解压至任意盘符,打开命令提示符(win + r键输入cmd),依次进入到该目录下,输入adb devices查看是否发现设备
 
::[[File:adb识别.png|frameless|500px|ADB识别]]
 
<br />
 
:* 再输入adb shell进入
 
:: [[File:adb shell.png|frameless|500px|ADB shell]]
 
 
 
===== 网络ADB使用方法 =====
 
:*配置网络ADB,配置网络ADB需要先通过USB ADB连接到板卡,然后输出下图中的命令,配置网络ADB端口。
 
<div style="display:none;">
 
:: [[文件:Adb-010.png|500px|配置网络ADB]]
 
</div>
 
:: [[文件:Adb-01.png|500px|配置网络ADB]]
 
::基于USB ADB配置好ADB端口后,进入【设置】->【开发者选项】,取消勾选【USB调试】,再次勾选【USB调试】,至此网络ADB配置完成。
 
 
 
:*连接网络ADB,例:上图中得到的eth0 IP为 : 192.168.8.57,输入 : adb connect 192.168.8.57:5555回车
 
::至此板卡已通过网络与PC机进行了ADB连接,输入 : adb shell 回车,进入 shell
 
<div style="display:none;">
 
:: [[文件:Adb-020.png|500px|连接网络ADB]]
 
</div>
 
:: [[文件:Adb-02.png|500px|连接网络ADB]]
 
  
 
===WiFi使用方法===
 
===WiFi使用方法===
:* Android系统目前仅支持型号为 : RTL8188 RTL8723BU<br>
+
{{imx8_wifi}}
::[[文件:WIFI-01-imx8m.png|400px|开启WIFI]] [[文件:WIFI-02-imx8m.png|400px|选择一个WIFI热点进行连接]]
 
  
===网口使用方法===
+
===4G使用方法===
 +
* 依图所示,正确连接4G模块与SIM卡
 +
::[[文件:3560_4G_slot.png|400px|4Gslot]]
 +
{{imx8_4G}}
 +
<!--
 +
===网络优先级切换方法===
 +
{{imx8_network_priority}}
 +
-->
  
 
===APK安装===
 
===APK安装===
 
+
{{imx8_apk_install}}
 
===GPIO使用方法===
 
===GPIO使用方法===
  
 
===串口使用方法===
 
===串口使用方法===
 +
*将COM设备与板卡连接,确认连接无误后开机(连接方法参照上文[接口引脚定义]并注意232/485模式的选择)
 +
*确认所连接的节点
 +
:*EMB-3560 串口节点如下
 +
::COM_DB-----/dev/ttyLP0
 +
::COM1-------/dev/ttyLP1
 +
::COM2-------/dev/ttyLP2
 +
::COM3-------/dev/ttyLP3
 +
*开始通信
 +
 +
==Linux系统的使用==
  
<!--
 
 
===Yocto系统交叉编译工具链安装和使用方法===
 
===Yocto系统交叉编译工具链安装和使用方法===
 +
{{IMX8交叉编译}}
  
使用yocto系统做应用层开发时,需要安装对应的开发sdk,即安装编译要用到的交叉编译工具链。
+
===Yocto系统Qt使用方法===
 +
{{Yocto_qt}}
  
a,首先从 http://norcord.com:8070/f/2aab0558db9044158622/
+
===网络使用方法===
下载文件 “fsl-imx-wayland-glibc-x86_64-fsl-image-qt5-validation-imx-aarch64-toolchain-4.14-sumo.tar.bz2”;
+
:*[[Linux系统下网络配置方法]]
  
b,下载完成后,解压,运行 :
 
  
----
+
==通用方法==
 +
=== 查看CPU温度 ===
 +
{{imx6_cpu_temp}}
 +
<!--
 +
=== 查看CPU序列号 ===
 +
{{imx6_cpu_serial}}
 +
-->
 +
=== 查看CPU频率 ===
 +
{{imx6_cpu_freq}}
  
<nowiki>sudo sh ./fsl-imx-wayland-glibc-x86_64-fsl-image-qt5-validation-imx-aarch64-toolchain-4.14-sumo.sh</nowiki>
+
=== 查看内存容量 ===
 +
{{mem_free}}
  
----
+
=== 查看存储容量 ===
 +
{{storage_free}}
 +
:*<font color="red">注意:通常情况下,由于存储器生产厂家和用户使用的容量单位不对等(厂家1M=1000kb,用户1M=1024kb),故而Size的总和(实际的容量)比额定的容量小,这属于正常情况。</font>
  
[[文件:sdk安装01.png|600px]]
+
=== 网络Ping测试 ===
c,完成步骤b后,交叉编译工具链会安装至“/opt/fsl-imx-wayland/4.14-sumo/”目录(自定义安装目录的可以到对应的目录查看),
+
{{ping_test}}
  
交叉编译工具链的使用方法如下:
+
=== 设置系统时间保存到RTC芯片 ===
 
+
{{rtc}}
----
 
 
 
<nowiki>source /opt/fsl-imx-wayland/4.14-sumo/environment-setup-aarch64-poky-linux</nowiki>
 
 
 
----
 
 
 
 
 
查看环境变量,已经可以直接使用"$CC"来交叉编译自己的应用程序APP。
 
 
 
[[文件:sdk安装022.jpg|600px]]
 
 
 
'''注 :每打开一个shell终端都需要重新执行一次上面的c步骤'''
 
-->
 

2020年12月15日 (二) 16:16的最新版本

资源特性

概览
正面
  • CPU:NXP i.MX 8X四核处理器
  • GPU:CPU集成
  • 内存:板载2GB LPDDR4内存
  • 存储:板载16GB EMMC Flash
  • Ethernet:2x LAN,10/100/1000Mbps; 1x 板载WiFi(可选)、BT
  • 4G:1 x MINI PCIe
  • Display:1 x LVDS
  • Audio:1x Line out/ Mic in四节耳机,支持5W功放
  • USB Host:1x USB3.0,4x USB2.0, 1x USB OTG
  • COM:1 x Debug,2 x RS232,1 x RS232/485
  • TF Card:x1
  • System Control:Reset switch, Power switch
  • Temperature:Work -20 ~ 65, Storage -40 ~ 85
  • Humidity:5% ~ 95%相对湿度,无冷凝
  • PCB Size:145mm x 105mm
  • Power: DC 12V
  • RTC: 支持
  • Watchdog: 支持
  • Other I/O: 2x CSI接口,2x CAN,2x I2C,2x SPI,12x GPIO(复用SPI),1 个 Mini PCIE (支持 3 / 4G 带 PCIe 功能)
  • OS: Android 9.0/Yocto

接口布局和尺寸

接口布局图

EMB-3560 接口布局-正面EMB-3560 接口布局-侧面

接口引脚定义

主板内置插针式引脚排序方式

机械尺寸

EMB-3560尺寸.jpg

快速入门

系统下载

Android系统
Linux系统

系统烧录

Android9.0和Yocto系统烧录(支持windows和ubuntu环境烧录)

  • 主板处于断电状态下,将主板的otg和Windows主机连接起来,将JD1、2脚接上跳帽,然后将主板通电。
3560 OTG.jpg
OTG:系统烧录口
JD:刷机跳冒座:刷机模式时,将跳帽跳到1、2脚;正常启动时,将跳帽移除
电源:12v电源输入。
  • 若主机PC系统是windows系统
1,解压烧录包,参照“windows7系统刷机说明.docx”文档安装usb支持库。
2,以管理员身份运行“windows_burning.bat”脚本
2510 windows系统刷机脚本.jpg
3,等待刷机完成
2510 windows系统刷机完成.jpg
  • 若主机PC系统是ubuntu系统
1,解压烧录包,参照“ubuntu系统刷机说明.txt”文档安装usb支持库。
2,执行:sudo ./linux_burning.sh
3,等待刷机完成
2510 ubuntu系统刷机完成.jpg
注意:烧录完成后,需将JD处的跳帽去除才能正常启动

串口调试

Windows 上一般用 putty 或 SecureCRT。以 putty 为例介绍如何使用串口调试功能

putty下载链接选择putty.exe
串口通讯参数配置:
   波特率:115200
   数据位:8
   停止位:1
   奇偶校验:无
   流控:无

putty设置界面如下:

putty-setting
   1.Connection type设置为Serial
   2.Serial line设置为pc端连接的串口(此项填写pc端实际的串口号)
   3.Speed设置为115200
   4.点击Open按钮打开终端

查看PC端的串口号:

putty-查询串口
   *右键点击我的电脑->管理->设备管理器->端口(COM和LPT)找到本机对应的串口
   *如无设备请先确定pc端是否自带串口及驱动是否安装

进入串口调试终端:

putty-串口终端
   *如图进入交互界面,敲击回车或者输入命令会有反馈

API参考与使用

Android系统API
Linux系统API
  • Linux API [ 参考页面]
  • API文件下载地址(.so) 下载地址

Android系统的使用

ADB调试方法

USB ADB使用方法
开启主板ADB调试功能
  1. 在标准模式下,进入主菜单栏。
  2. 点击【Settings】。
  3. 进入最底部【System】菜单栏,选择【About tablet】。
  4. 连续点击【Build number】7次后,将提示“You are now a developer”。
  5. 击【←】图标返回至【Settings】页面,即可看到【Developer options】。
  6. 选择【Developer options】,勾选【USB debugging】。
ADB_slelct


  • 连接时屏幕会提示【Allow USB debugging?】,点击【OK】即可。
ADB_true
注意 : 使用USB ADB进行调试时,主板端不可以插着USB线上电开机
数据线ADB连接使用方法
  • 下载ADB驱动以及工具
  • 安装ADB驱动以及工具
  • 将驱动解压得到可执行文件,将数据线与电脑连接,打开软件,点击[install]即可
ADB驱动


  • 将工具解压至任意盘符,打开命令提示符(win + r键输入cmd),依次进入到该目录下,输入adb devices查看是否发现设备
ADB识别


  • 再输入adb shell进入
ADB shell
网络ADB使用方法
  • 配置网络ADB,配置网络ADB需要先通过USB ADB连接到板卡,然后输出下图中的命令,配置网络ADB端口。
配置网络ADB
配置网络ADB
基于USB ADB配置好ADB端口后,进入【设置】->【开发者选项】,取消勾选【USB调试】,再次勾选【USB调试】,至此网络ADB配置完成。
  • 连接网络ADB,例:上图中得到的eth0 IP为 : 192.168.8.57,输入 : adb connect 192.168.8.57:5555回车
至此板卡已通过网络与PC机进行了ADB连接,输入 : adb shell 回车,进入 shell
连接网络ADB
连接网络ADB

以太网使用方法

  1. 在标准模式下,从顶部向下滑动屏幕。
  2. 点击【设置】。
  3. 点击【网络与互联网】菜单进入网络与互联网设置界面。
  4. 点击【以太网】菜单进入以太网设置界面。
  5. 勾选第一栏【以太网】。
  6. 如果需要静态IP, 点击【以太网IP模式】。
  7. 在弹出的【以太网IP模式】界面中,静态勾选第二栏【静态IP】。
  8. 设置完静态IP之后,点击保存退出按钮。
开启以太网 以太网ip模式设置以太网静态ip设置

WiFi使用方法

  • Android系统目前仅支持型号为 : RTL8188 RTL8723BU
  • 设置->网络和互联网->WLAN
开启WIFI 选择一个WIFI热点进行连接

4G使用方法

  • 依图所示,正确连接4G模块与SIM卡
4Gslot
  • 设置->网络和互联网->移动网络
开启4G

APK安装

  • 常规安装
  • 将含有安装文件的U盘或者可移动设备与主板连接
  • 打开主板系统包含的APK安装器,点击安装,进入到该目录下,右侧点击APK即可
imx8_apk_install.PNG
  • 后台静默安装
1 pm install /mnt/media_rw/udisk/apk/MXPlayer\ 1.7.31.apk
  • 安装成功后显示Success如下图
apk_install

GPIO使用方法

串口使用方法

  • 将COM设备与板卡连接,确认连接无误后开机(连接方法参照上文[接口引脚定义]并注意232/485模式的选择)
  • 确认所连接的节点
  • EMB-3560 串口节点如下
COM_DB-----/dev/ttyLP0
COM1-------/dev/ttyLP1
COM2-------/dev/ttyLP2
COM3-------/dev/ttyLP3
  • 开始通信

Linux系统的使用

Yocto系统交叉编译工具链安装和使用方法

使用yocto系统做应用层开发时,需要安装对应的开发sdk,即安装编译要用到的交叉编译工具链。
a,下载文件 “fsl-imx-xwayland-glibc-x86_64-imx-image-full-aarch64-toolchain-4.19-warrior.sh”下载地址
b,下载完成后,运行安装脚本 :

sudo chmod +x fsl-imx-xwayland-glibc-x86_64-imx-image-full-aarch64-toolchain-4.19-warrior.sh
sudo sh fsl-imx-xwayland-glibc-x86_64-imx-image-full-aarch64-toolchain-4.19-warrior.sh
Sdk安装01.png

c,完成步骤b后,交叉编译工具链会安装至“/opt/fsl-imx-xwayland/4.19-warrior”目录(自定义安装目录的可以到对应的目录查看), 交叉编译工具链的使用方法如下:

source /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux

查看环境变量,已经可以直接使用"$CC"来交叉编译自己的应用程序APP,此方法只在当前shell生效。

Sdk安装022.jpg


Yocto系统Qt使用方法

QT 开发环境的搭建

工具链下载

  • Yocto 2.7(linux内核4.19.35)适用于i.Mx8平台 下载地址
  • Yocto 1.8(linux内核4.1.15) 适用于i.Mx6平台 下载地址

SDK安装

安装qtcreator

  • qtcreator是qt开发常用的IDE
使用apt下载
sudo apt install qtcreator
官网下载安装包
  • 官网下载源码或者.run安装包qt官网下载链接
  • 终端使用命令下载.run安装包(除了qtcreator还包含其他可选组件)
wget http://download.qt.io/archive/qt/5.12/5.12.3/qt-opensource-linux-x64-5.12.3.run
  • 运行安装程序
chmod +x qt-opensource-linux-x64-5.12.3.run
./qt-opensource-linux-x64-5.12.3.run
  • 欢迎界面>> 登录界面 >>设置Qt >>设置安装路径 >>选择组件 >>同意许可协议 >>开始安装 >>安装完成
  • 登录界面,如无skip选项请先断开网络连接再打开安装程序

跳过登录选择安装路径选择组件同意许可协议安装完成

配置qtcreat

Yocto 2.7SDK使用默认安装路径时配置选项如下:

gcc:    /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc
g++:    /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++
gdb:    /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gdb
qmake:  /opt/fsl-imx-xwayland/4.19-warrior/sysroots/x86_64-pokysdk-linux/usr/bin/qmake
Sysroot:/opt/fsl-imx-xwayland/4.19-warrior/sysroots/aarch64-poky-linux

Yocto 1.8SDK使用默认安装路径时配置选项如下:

gcc:    /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
g++:    /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
gdb:    /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gdb
qmake:  /opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/x86_64-pokysdk-linux/usr/bin/qt5/qmake
Sysroot:/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi
  • 修改qtcreat.sh启动脚本,在开头加上如下命令
  • qtcreat.sh的文件路径根据安装方式来区分,一般在/usr/bin或者安装目录下的Tools/QtCreator/bin子目录
. /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux   #Yocto 2.7
. /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi   #Yocto 1.8

Qtcreat01.png

  • 运行 QT creator,在 Qt 运行界面下,菜单栏点击 “Tools –> Options –> Build&Run”(在某些版本在Kits选项中配置),进行相关配置。

a.设置 “Compiler” :

点击 Add -> GCC -> gcc ,添加一个 gcc,Compiler path 一栏填写gcc的绝对路径

Qtcreat02.png

点击 Add -> GCC -> g++ ,添加一个 g++,Compiler path 一栏填写g++的绝对路径

Qtcreat03.png
b.设置 “QT Versions” :

点击 Add ,点击 Browser,选择 qmake location 为qmake的绝对路径

Qtcreat04.png
c.设置 “Debuggers”:

添加一个“ Manual” ,点击 Add,点击 Browser,Path 为gdb的绝对路径

Qtcreat05.png
d.设置“Devices ”

点击 Devices ,点击 add -> Generic Linux Device -> Start Wizard后输入开发板的IP、用户名及密码(用户名root、默认无密码)
  • 远程调试需要配置,可以不进行配置

Qtcreat07.png
e.设置“ Kit”

添加一个“ Manual” ,点击 Add,点击 Browser
Sysroot 一栏,填写Sysroot的绝对路径
Compiler 一栏,选择配置好的 gcc 和 g++
Debugger 一栏,选择配置好的 gdb
Qt version一栏,选择配置好的 qmake
然后点击 apply

Qtcreat06.png

示例程序

使用 qmake编译生成demo

a.配置编译环境

. /opt/fsl-imx-xwayland/4.19-warrior/environment-setup-aarch64-poky-linux  #Yocto 2.7
. /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi  #Yocto 1.8

b.输入如下命令下载、编译demo程序

sudo apt install git
git clone https://github.com/qt/qtdoc.git  #拉取示例代码
cd qtdoc/ 
qmake qtdoc.pro
make -j4

c.将qtdoc文件夹拷贝到开发板,进入到qtdoc下的examples/demos/calqlatr子目录

./calqlatr

效果如下(图示为计算器demo):
Qmakedemo01.pngQmakedemo01 1.png

使用qtcreator创建工程文件

a.进入 qtcreator 的安装目录,在终端上手动打开 qtcreator。

sh qtcreator.sh

b.点击 “New Project”,选择 “Application”,“Qt Widgets Application”,然后此次填写好项目名称,项目位置后,在出现的“Kits”一栏,注意勾选上刚刚创建的 “imx_yocto”
Qtdemo02.png
c.创建完毕后,点击“Build”,“Build Project xxx”后,将会生成可执行程序
650px
d.将生成的程序拷贝到开发板中运行

./yoctotest

Qtdemo04.png

网络使用方法


通用方法

查看CPU温度

1 root@sabresd_6dq:/ # cat /sys/devices/virtual/thermal/thermal_zone0/temp            
2 30

查看CPU频率

1 root@sabresd_6dq:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq 
2 996000
3 root@sabresd_6dq:/ # cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq 
4 996000

查看内存容量

1 root@sabresd_6dq:/ # busybox free -m                                           
2              total         used         free       shared      buffers
3 Mem:           754          617          136            0           10
4 -/+ buffers:                607          147
5 Swap:            0            0            0

查看存储容量

 1 root@norco:/ # busybox df -h                                           
 2 Filesystem                Size      Used Available Use% Mounted on
 3 tmpfs                   377.3M    136.0K    377.2M   0% /dev
 4 none                    377.3M     12.0K    377.3M   0% /sys/fs/cgroup
 5 tmpfs                   377.3M         0    377.3M   0% /mnt/secure
 6 tmpfs                   377.3M         0    377.3M   0% /mnt/asec
 7 tmpfs                   377.3M         0    377.3M   0% /mnt/obb
 8 tmpfs                     1.0M         0      1.0M   0% /mnt/shm
 9 /dev/block/mmcblk0p5    472.4M    335.3M    137.1M  71% /system
10 /dev/block/mmcblk0p4      6.1G    240.3M      5.9G   4% /data
11 /dev/block/mmcblk0p6    247.9M      6.0M    229.1M   3% /cache
12 /dev/block/mmcblk0p9      7.7M      1.1M      6.3M  15% /device
13 /dev/fuse                 6.1G    240.3M      5.9G   4% /mnt/shell/emulated
  • 注意:通常情况下,由于存储器生产厂家和用户使用的容量单位不对等(厂家1M=1000kb,用户1M=1024kb),故而Size的总和(实际的容量)比额定的容量小,这属于正常情况。

网络Ping测试

 1 root@norco:/ # ping -s 1000 -c 5 192.168.8.100                           
 2 PING 192.168.8.100 (192.168.8.100) 1000(1028) bytes of data.
 3 1008 bytes from 192.168.8.100: icmp_seq=1 ttl=64 time=0.914 ms
 4 1008 bytes from 192.168.8.100: icmp_seq=2 ttl=64 time=0.790 ms
 5 1008 bytes from 192.168.8.100: icmp_seq=3 ttl=64 time=0.797 ms
 6 1008 bytes from 192.168.8.100: icmp_seq=4 ttl=64 time=0.810 ms
 7 1008 bytes from 192.168.8.100: icmp_seq=5 ttl=64 time=0.706 ms
 8 
 9 --- 192.168.8.100 ping statistics ---
10 5 packets transmitted, 5 received, 0% packet loss, time 4002ms
11 rtt min/avg/max/mdev = 0.706/0.803/0.914/0.070 ms

设置系统时间保存到RTC芯片

  • 注意此处显示的UTC表示0时区,我们处于CST时区,假设要设定时间为上午10点,则为"2020-06-06 02:09:55"。
1 root@norco:/ # busybox date -s "2020-06-06 10:09:55"                   
2 Thu Feb  1 10:09:55 UTC 2018
3 root@norco:/ # busybox hwclock -w