EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
8 ?3 b7 C/ J. X
前 言
, G4 q! y4 ]* V- D- l% g2 A8 s" Y # e* i6 q2 ^: @- b8 u3 B
本文档适用开发环境:- A) k$ _* T4 u2 w
Windows开发环境:Windows 7 64bit、Windows 10 64bit
7 f1 k- M. |( g! J& `9 i4 q 虚拟机:VMware15.1.01 t, ?# i4 _# S6 S, w. ]3 U1 z
Linux开发环境:Ubuntu18.04.4 64bit9 N* l$ N2 W* ? t/ K2 r! e
U-Boot:U-Boot-2020.04' u. @8 E' ~. r
Kernel:Linux-5.4.70' x) A# k, o9 c" H2 k' A9 C
Linux SDK:5.4.70_2.3.0. n9 k) T* z) B9 C
进行本文档操作前,请先按照调试工具安装、Linux开发环境搭建相关文档,安装SecureCRT串口调试终端、VMware虚拟机等相关软件。
4 t5 ?: Y) L# X0 k 本文档主要提供评估板的硬件资源测试方法。无特殊说明情况下,默认使用USB TO UART1作为调试串口,使用Linux系统启动卡(SD启动模式)启动系统,通过路由器与PC机进行网络连接。9 N0 i, p9 r9 t' O) y
基于测试板卡:创龙科技TLIMX6U-EVM是一款基于NXP i.MX 6ULL的ARM Cortex-A7高性能低功耗处理器设计的评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。
6 p! Y: I$ z! F& R* t% A. w 评估板接口资源丰富,引出双路网口、双路RS485、双路CAN、三路USB、多路DI/DO、LCD等接口,板载WIFI、Bluetooth模块,支持LoRa、NB-IoT、Zigbee、4G模块,可选配外壳直接应用于工业现场,方便用户快速进行产品方案评估与技术预研。5 n+ R1 k7 m e4 O) C
5 G6 B7 x, ^5 n8 d1 j( \ ?' K( k, g' `3 E }) o
# [5 g6 O3 a+ s0 V0 }4 Y
0 D+ s# Y/ h, v* s) o 评估板快速测试
7 J# Q$ I Z1 N" K 系统启动测试 接入电源,并使用Micro USB线连接PC机和评估板的USB TO UART1调试串口。打开设备管理器,确认评估板USB TO UART1调试串口对应的COM端口号。
4 D$ ~ T U: [& E 图 1 ) F) p) J+ o8 U; J" q* x
图 2
/ z( }0 W" ^' I7 g' [+ P* Q 打开串口调试终端SecureCRT,选择对应的COM端口号,设置波特率为115200,8N1,无校验位。建立串口连接,如下图所示。% y7 A' \) d7 ?
* ?8 E" r, g. Q2 E% q
; K: A' n: ~1 G$ _2 C u1 g& s0 ]; y
图 3
, J, x+ B3 B. x9 `& A8 W2 a! X 将Linux系统启动卡插入评估板Micro SD卡槽,将启动方式选择拨码开关拨为010100(1~6),此档位为SD启动模式。将评估板上电启动,串口调试终端会打印如下类似启动信息。' B/ D( |" a0 D' O3 u+ E
8 L! e& H L6 N+ \
5 W; a% _$ T e; ~. `( ` 图 4
+ M" c5 I$ g! W3 Y4 d/ m
X0 o# Q& E8 n' h" K. A/ m 图 5 9 ~5 j) y( l' f# G0 u# S
备注:由于我司提供的Linux系统保留了部分官方驱动配置,且实际未使用到相关驱动的部分功能,因此在内核启动过程中驱动会打印部分警告信息。此类警告信息不会影响系统的正常运行,请忽略即可。
- q6 ]0 U/ b1 g! z# I6 ]3 L3 W% r/ p4 ~
3 |5 q7 W4 T q
图 6
+ ^7 {4 n9 ]. {5 ] 图 7
1 F% l N+ s# t7 v( S9 |4 J" l, t: m5 Q% [' s& z
核心板LED在系统启动过程中的变化说明如下:
; u0 i; _* |/ ^2 P. p 评估板上电后,电源指示灯LED0点亮;随后U-Boot第一阶段启动,LED1点亮;紧接着U-Boot第二阶段启动,LED2点亮;直至内核启动运行时,LED2熄灭,LED1进行心跳闪烁。 h8 d7 q# _) s- x" q0 Z) Y7 |' p
图 8 $ }- z$ \1 t0 J5 l2 h! K* O
) {' G, ~* u1 @- Z: X; G: ~
系统启动后会自动登录root用户,说明使用Linux系统启动卡启动评估板成功。- h, Y1 r5 W1 e- n6 O
1 k" }5 x4 P+ x8 l2 \
5 b3 p# d T! E- c% i8 p z 图 9 如需从NAND FLASH启动评估板,请执行如下命令,一键固化Linux系统至NAND FLASH。& U. s. f( s6 Q
Target# /opt/tools/mknandboot.sh' s0 k+ W2 ?" @
. T( C4 P: ]/ }: Z8 L
5 r; ?0 p9 j6 b/ f 图 10 F( x( m2 A+ d
图 11 6 m( U* k1 z% m6 N% h
$ y# c5 J6 B7 m% D
耗时约5~10min,NAND FLASH成功固化Linux系统,同时串口调试终端打印提示信息。评估板断电,将Linux系统启动卡从评估板Micro SD卡槽中取出,将拨码开关拨为011000(1~6),此档位为NAND FLASH启动模式。
$ A3 F7 s% [9 j) E* k& q$ O) b 评估板重新上电后,将从NAND FLASH启动系统。
; j2 U8 ^ F' `7 I/ H0 b. R% m
5 }: l- h+ s9 @& V: `" v; p, u; b4 f! z/ | H; M, i
文件传输测试 PC机和评估板之间传送文件的常见方式如下:
. k' B( z- Z7 j4 o( i2 p! R5 y - 通过Linux系统启动卡、U盘等存储介质方式拷贝。
- 通过NFS、TFTP、OpenSSH等网络方式拷贝。4 g; \% F3 Y: f4 S! ^2 u
; @% Y- T8 @: q: |) B
通过Linux系统启动卡 将配套的系统启动卡通过读卡器插至PC机,然后将文件拷贝至系统启动卡的BOOT分区,如下图所示。$ z" \! n' n h: Q
$ o: }1 T6 s% w: `1 t
s) Z# D. J. ]5 L 图 12
# o N1 T4 ~) L( |# s/ P9 E# D; K! E: |
将系统启动卡插至评估板Micro SD卡槽,评估板上电启动系统,进入文件系统执行如下命令查看分区信息。系统启动卡的BOOT分区挂载在评估板文件系统"/run/media/mmcblk0p1/"目录下。
+ c9 }& i- l, r Target# df' \0 Y( l3 [' X' r0 P2 S' u
Target# ls /run/media/mmcblk0p1
' P' @( d/ x0 o3 M8 t# ]# w B1 H2 o% v4 F% g& B
# e1 C8 A' J/ W# o
图 13
8 |0 o! s7 T/ x$ U7 [$ x1 r8 O5 `+ ^/ }5 r& J6 W
通过OpenSSH OpenSSH是SSH(Secure Shell)协议的免费开源实现。SSH协议族可用来进行远程控制,或在计算机之间传送文件,评估板文件系统默认已支持SSH库。; G8 H1 s/ @$ P5 B
在Ubuntu系统执行如下命令,查询是否已安装OpenSSH。* X6 V# Z# @9 N+ a
Host# ssh' Y4 ], }+ ~" v
7 O. A N& x; n
: a7 b0 \- w5 L3 g: s
图 14 / C6 z; p+ s M) W- K- D
- _: ~ J4 I" {$ k* W8 a
可看到系统已自带OpenSSH。如未安装,请先自行正确安装OpenSSH。
5 d* M& q; L% q' |; v) {5 X# Q 将评估板ETH1 RMII网口通过网线连接至路由器。在评估板上执行如下命令可自动获取到IP,如下图所示。"-i"用于指定网卡,eth0为网卡名字,请根据实际情况修改。9 ?+ p- x- t, O5 _
Target# udhcpc -i eth0
2 k m4 u8 R0 v7 a
3 q8 p3 ]% {$ d& s) }8 U# E1 z+ s( N
图 15 2 j. T! C* z3 V; o! }
$ X: K, V, n9 V* N5 ~ 执行如下命令可查询IP地址。本次查询到的IP地址是192.168.0.237。 M/ W' L4 N0 ]) Z% c, Y
Target# ifconfig4 w1 G( v! `! s: w' u# I8 ?
x% x# Z* K7 w# `5 X r0 k* }: K+ T8 ~# o8 C" P: x; f6 O
图 16 # b _7 m' {7 h# S# E
% @# H( q0 M! ]4 {; V9 g) u - 使用OpenSSH从PC机传输文件至评估板 |3 ^% ]+ n# _, v$ F
执行如下命令在Ubuntu系统中新建文件test1,并使用OpenSSH命令将test1文件拷贝至评估板文件系统根目录。
3 Z1 R" Z1 H z! v- ~ Host# touch test1 //新建文件
" G8 ?) c ~6 K: r! I7 q Host# scp test1 root@192.168.0.237:/0 I4 L; }. E8 j
4 X3 W" ]9 M( r
* u0 g$ c6 k% x `: H% w: S 图 17
) B8 n5 j) {) ~/ c4 r
* D6 O+ I" K4 A2 h7 F 如出现提示"Are you sure you want to continue connecting (yes/no)?",请输入:yes。
, l9 r* b( L7 W" i p; _4 m2 A 在评估板文件系统执行如下命令可看到从PC机拷贝的文件,如下图所示。; L$ d ^7 v/ N
Target# ls /
# h( b2 Y1 u( ~! Y- v4 Y3 M
2 U& H4 J M* r0 g4 r
! G: T$ z, K5 o9 c* H 图 18 2 V" h) O- o+ d3 E! |
* i& H+ d" F$ a! p' x& C! p
- 使用OpenSSH从评估板传输文件至PC机1 G' E0 q/ T# H6 ^% G( d
执行如下命令在评估板文件系统根目录新建一个测试文件test2。% c" R9 [& p+ N" ]1 c
Target# cd /; A3 q( S4 M! y$ c1 D9 P/ `
Target# touch test26 T3 {. s# k$ i" Q' a2 {; L* i
/ r2 A* k' E4 K! @
0 B$ C" n# O# j; t4 ]: _ 图 19
$ G \+ m$ F* x9 L& O$ ]8 j& O) N/ L3 t2 I; ], d. Y
在Ubuntu系统中执行如下OpenSSH命令将评估板测试文件test2拷贝至PC机"/home/tronlong/IMX6/"目录下。如传输内容为文件夹,请在scp后面添加参数"-r"。
+ f3 L, T$ K& `4 p9 Z: C2 S: ` Host# sudo scp root@192.168.0.237:/test2 /home/tronlong/IMX6/
& Q* m2 ? S! q/ H Host# ls /home/tronlong/IMX6/
- Z6 G' O3 ]; I$ `) l$ b" s+ K' N& k% y q( H1 v+ \
3 e6 a! L) m. K* |; H 图 20
% P0 m4 r/ }3 P1 @: \* r* ` _
! R+ t0 N& k5 q1 r$ s( q2 J) o5 R - 使用OpenSSH登录至评估板文件系统' ]- E3 H- w4 ^$ m1 ~2 S
在Ubuntu系统中执行如下命令可通过OpenSSH登录评估板文件系统。+ S9 ~" O; c1 q9 @7 ~! v
Host# sudo ssh root@192.168.0.237$ E9 X. \% u) S3 l! K& G
x! B6 R2 F* v2 W ]
$ s X0 p" x8 f3 k1 ~
图 21
2 [9 F4 y# t1 Y6 L: }$ B1 Z- L
6 W9 C' @' b. g4 u8 }+ ]3 l1 g* e- O 如需退出登录,请执行exit或者logout命令。
7 ?* B' I7 u# W3 m5 b! t) V LED测试 进入评估板文件系统,执行如下命令逐盏熄灭、点亮评估底板LED。
% c [8 l! @! E2 }5 p Target# echo 0 > /sys/class/leds/user-led0/brightness //控制LED1灭
7 W2 T2 Z$ p" N: b4 T Target# echo 1 > /sys/class/leds/user-led0/brightness //控制LED1亮
9 f+ }6 ^! N( ~( b# K g8 H5 p8 p7 } Target# echo 0 > /sys/class/leds/user-led1/brightness //控制LED2灭
# F! B; s0 x d% n( c: Y Target# echo 1 > /sys/class/leds/user-led1/brightness //控制LED2亮" G. k! |4 t+ F# H8 X1 A! ~
$ r0 T; g0 ~' [0 u
! i9 k+ [# h& D) R- J8 x4 Y 图 22
( c4 ^5 k; _: P8 D; j6 ~
8 q* [$ T/ q" F* j& F7 L! f 按键测试 用户输入按键测试 评估板包含两个用户输入按键KEY2和KEY3。进入评估板系统,执行如下命令查看按键事件号。/ m( D- l r' o" T/ h/ Q) c
Target# cat /proc/bus/input/devices+ B7 ^3 U3 |& L0 O4 F' Y& p, s
1 j) m+ {/ H% t% _6 T" Q
2 ^7 ]/ h' N/ F1 I1 i0 t
图 23
( V( Z0 Q3 X5 p3 m6 |. B5 D$ D' b# T5 k8 e
从上图中可看到按键事件号为event1,执行如下命令,分别按下KEY2、KEY3进行按键测试,串口调试终端将会打印如下类似信息,其中"0094"表示KEY2,"0095"表示KEY3。按"Ctrl + C"可终止测试命令。
, y+ o7 B s5 @* H0 Y& Q Target# od -x /dev/input/event10 `& g7 [/ N' |
' H' a3 T& @! b; Q0 b
T4 D% \; }, O2 J0 F3 o 图 24
: P3 T0 G @, I: \. i3 B
# K; I; [1 a: S( F+ m ON/OFF按键测试 评估板上电启动后,长按ON/OFF(KEY1)按键5s,系统将休眠,同时核心板用户指示灯与电源指示灯全部熄灭。接着长按ON/OFF(KEY1)按键1s,系统将重新启动,同时串口调试终端将会打印如下类似启动信息。5 v9 V X) a% f0 F) A1 l; |
4 [* q/ Q# O" H1 o3 L v9 |" z
2 R4 F# d7 t P x 图 25 4 I: N% O: L0 X9 Q
+ ?& ^/ I: F" q1 R 时钟设置测试 Linux系统中分系统时钟(软件时钟)和RTC时钟(硬件时钟),系统时钟掉电即会消失,RTC时钟在安装电池的情况下会长期运行。! A0 W1 a% F5 I
如需使用外部RTC时钟,请将ML2032(3V可充)或CR2032(3V不可充)电池安装至RTC纽扣电池座。
4 y. `" p( ^" A 如下为时钟相关的常用命令。
: R" P6 _* A4 b7 h - 查看系统时钟
% N: `6 c1 E: H0 Z( S" J- g& _ Target# date
) N# B' L j- k; y; L
% T' j1 j- v0 p& ~8 L
7 f' E0 d0 q8 G1 j' M" G$ l% ] 图 26 " i+ g9 ~( w6 I1 p C6 T6 S7 p% D7 M
( X( V7 X. F3 U* [/ E: X2 U7 h - 查看RTC时钟
* t4 G& Z4 H' c6 ?4 n7 t7 Y8 B Target# hwclock -u1 n; c3 M: D" r! n
) m/ D z- M& e
( [/ Q5 f1 Z: D$ O7 T' l 图 27 % S' I; |: T; @
+ R9 m6 }5 B0 v' E' G9 C! k Target# date -s "2022-04-15 08:30:00" //设置时间:2022年4月15日8点30分00秒0 u+ C: V, \8 U; P
Target# date" x0 a3 g. n# \+ @" M
) u" G6 }% k. B
: d" ?) R& n4 w" m$ i 图 28
7 V6 q* g$ i1 [# s4 P' s5 R, b/ L% a: h
- 同步系统时钟至RTC时钟' \& J$ p# l0 O( w" j o: \. \0 X! Z
Target# hwclock --systohc -u2 A2 h- g0 N! y d; X k, i+ c
Target# hwclock -u
) a5 V% `5 b2 y: b6 J- Y) w3 _0 [7 @0 w7 }* ^- D
/ Q7 z. V' {. S& X/ T* X4 O$ r& G2 l# ^
图 29 1 K3 J% m+ ]# v9 w
4 E; X$ X4 x& y( T' R0 d/ [! c - 同步RTC时钟至系统时钟5 q& `+ D) H- ]6 E; F0 |
Target# hwclock --hctosys -u
7 o$ K- ~( J8 m7 ?( `% v+ K; Y0 B7 Y$ B) G
$ Z/ q! l6 U/ P. Q! S4 F 图 30 6 i0 P8 u3 T$ [/ \8 O% O8 u& Z: J
5 |8 V4 x, r. G& C$ e2 r# p$ f, L1 [
DDR读写测试 DDR读写速度受实际情况影响,测试速率以具体情况为准,如下测试数据仅供参考。
% ?0 X0 Z; F9 m& P" |* ]' a - DDR读速度测试& W# Z3 z2 {& S5 ^
进入评估板系统,执行如下命令对DDR进行读速度测试。3 s. {' t- f- p- p) u
Target# bw_mem 50M rd
- H: h9 b5 d& E. \8 ?8 x, E
! J8 V' c8 c8 A- f0 F* P- |. p; F, G0 u
图 31
z6 C$ a& A2 i" G/ Y$ [; W" F; c5 q" u
测试从DDR中读取50MByte数据,可看到本次测试的读速度为1014.05MB/s。0 k- W4 N4 Q7 |, e8 i
- DDR写速度测试. s2 |9 f) u3 c6 o/ H
进入评估板系统,执行如下命令对DDR进行写速度测试。
8 x' d8 }! G9 d5 R7 K, Q# S Target# bw_mem 50M wr3 }8 _/ \5 }' X+ j- ^" b
: O, {$ f* Y% r5 c/ K ^) W! C* g: }1 m5 Z+ y* P& G
图 32 * V+ b1 e" o- Z! X8 a% q# d; t
5 N9 X9 }/ P1 o$ e& ^ 测试写入50MByte数据至DDR中,可看到本次测试的写速度为492.39MB/s。! i& h6 [2 U% B/ l/ ]1 P$ R
- DDR拷贝速度测试! V$ i& |. C" ?( P
进入评估板系统,执行如下命令对DDR进行拷贝速度测试。
+ T, h% [* J5 l3 e" D8 g; o Target# bw_mem 30M cp2 x% V7 Z9 }1 H7 f# c7 M
6 X2 C0 V* G w" U! m
8 {) ^) n0 B- E* j( c- g( H% X 图 33
' e7 k1 i/ }4 o- A' F9 ~% T: i( i. E! R4 T9 ]3 Q1 S: d9 R# i
测试拷贝30MByte数据至DDR中,可看到本次测试的拷贝速度为255.96MB/s。
% E2 M" t* H: ~4 B1 }- Q2 I; T, M6 f6 e1 y6 ]
|