全志科技官方Ubuntu16.04根文件系统镜像的替换和测试方法

本文主要基于全志 A40i 开发板——TLA40i-EVM,一款基于全志科技 A40i 处理器设计的 4 核 ARM Cortex-A7 高性能低功耗国产评估板,演示 Ubuntu 根文件系统镜像的替换和测试方法。创龙科技 TLA40i-EVM 评估板接口资源丰富,引出双路网口、双路 CAN、双路 USB、双路 RS485 等通信接口,板载 Bluetooth、WIFI、4G(选配)模块,同时引出 MIPI LCD、LVDS LCD、TFT LCD、HDMI OUT、CVBS OUT、CAMERA、LINE IN、H/P OUT 等音视频多媒体接口,支持双屏异显、1080P@45fps H.264 视频硬件编码、1080P@60fps H.264 视频硬件解码,并支持 SATA 大容量存储接口。

核心板采用 100% 国产元器件方案,并经过专业的 PCB Layout 和高低温测试验证,稳定可靠,可满足各种工业应用环境。评估底板大部分元器件均采用国产方案,方便用户快速进行产品方案评估与技术预研。

请先按照调试工具安装、Linux 开发环境搭建相关文档,安装 SecureCRT 串口调试终端、VMware 虚拟机等相关软件,按照 Linux 系统使用手册解压安装 LinuxSDK 开发包到 Ubuntu。无特殊说明情况下,默认使用 USB TO UART0 作为调试串口,使用 Linux 系统启动卡(Micro SD 方式)启动系统,通过路由器与 PC 机进行网络连接。

适用开发环境:

Windows 开发环境:Windows 7 64bit、Windows 10 64bit

Linux 开发环境:Ubuntu18.04.4 64bit

虚拟机:VMware15.1.0

U-Boot:U-Boot-2014.07

Kernel:Linux-3.10.65

Ubuntu:Ubuntu16.04 根文件系统(约 1.5GByte)

LinuxSDK:LinuxSDK_AA_BB_CC_DD(基于 T3_LinuxSDK_V1.3_20190122)

Tronlong 创龙科技提供的 LinuxSDK_AA_BB_CC_DD.tar.gz 开发包已自带全志科技官方 Ubuntu16.04 根文件系统镜像,位于 LinuxSDK 开发包 "buildroot-201611/target/ubuntu_16.04/" 目录下(如下图),如需替换使用 Ubuntu 根文件系统,请参考如下章节进行操作。

图 1

1.Ubuntu 根文件系统替换

1.1 替换到 Linux 系统启动卡

将 Linux 系统启动卡通过 Micro SD 读卡器插至 PC 机 USB 接口,并挂载至 Ubuntu 系统。执行如下命令,确认 Linux 系统启动卡在 Ubuntu 系统的设备节点名,可以看到 Linux 系统启动卡设备节点是 "/dev/sdb",并且有七个分区,其中 "/dev/sdb7" 为文件系统所在分区。

备注:设备节点名字是可变的,一般插拔多次或者使用不同的卡插拔后,可能会显示 sdc 或者 sdd。

Host#sudo fdisk -l

图 2

 

图 3

 

在 LinuxSDK 的 lichee 源码安装目录下,执行如下命令进入 Ubuntu 根文件系统镜像所在目录,将其固化至 Linux 系统启动卡文件系统分区。

Host#cdbuildroot-201611/target/ubuntu_16.04/

Host#sudo dd if=ubuntu of=/dev/sdb7 bs=1024 && sync

图 4

 

固化过程预计耗时约 5min,请耐心等待,打印 "records in、records out" 信息表示固化完成。

1.2 替换到 eMMC

将 U 盘插至 PC 机 USB 接口,并挂载至 Ubuntu 系统。在 LinuxSDK 开发包 Ubuntu 根文件系统镜像所在目录,将其拷贝至 U 盘。

图 5

 

拷贝完成后,将 U 盘插入评估板 USB1 HOST 或 USB2 HOST 接口,从 Linux 系统启动卡启动系统,执行如下命令查看 U 盘在文件系统的设备节点名。

Target#df -h

图 6

 

执行如下命令将 U 盘的 Ubuntu 根文件系统镜像固化至 eMMC 的文件系统分区 (mmcblk0p7)。预计耗时 4min 左右,串口终端打印 "records in、records out" 信息表示固化完成。

Target#time dd if=/mnt/usb/sda/ubuntu of=/dev/mmcblk0p7 bs=1024 && sync

图 7

 

2 Ubuntu 系统测试

将 Linux 系统启动卡插入评估板 Micro SD 卡槽,根据评估底板丝印将拨码开关拨为 0,此档位将优先从 Linux 系统启动卡中启动系统。将评估板上电启动,系统启动后输入用户账户:root,密码:123,登录系统成功后,串口终端将打印如下信息。

图 8

 

由全志官方提供的 Ubuntu 系统除 CVBS OUT、TVIN、CAMERA0、CAMETA1 少数接口外,支持大部分外设接口。Ubuntu 系统暂不支持 GUI 操作界面,暂不支持通过 apt-get 命令在线安装工具,因此部分外设接口测试需要自行拷贝安装对应的工具。

以下章节以 LED、按键为例,演示 Ubuntu 系统的测试方法,其余外设接口测试请参考评估板测试手册。

2.1 LED 测试

评估底板 LED1、LED2 与 GPIO 引脚对应关系如下表所示,系统启动后默认点亮。

表 1

进入评估板文件系统,执行如下命令逐盏熄灭、点亮 LED。

Target#echo 0 > /sys/class/leds/user-led0/brightness// 控制 LED1 灭

Target# echo 1 > /sys/class/leds/user-led0/brightness // 控制 LED1 亮

Target# echo 0 > /sys/class/leds/user-led1/brightness// 控制 LED2 灭

Target# echo 1 > /sys/class/leds/user-led1/brightness// 控制 LED2 亮

图 9

 

2.2 按键测试

评估底板包含 3 个用户按键:KEY3、KEY4、KEY5。进入评估板文件系统,执行如下命令查看用户按键对应的事件号。

Target# cat /proc/bus/input/devices

图 10
 

从上图中可看到 KEY3 和 KEY4 对应的按键事件号为 event1,KEY5 对应的按键事件号为 event5。

执行如下命令,分别按下 KEY3 和 KEY4 进行按键测试,可看到如下打印信息,其中 "0094" 表示 KEY3,"0095" 表示 KEY4,按 "Ctrl + C" 可终止测试命令。

Target#od -x /dev/input/event1

图 11

 

执行如下命令,按下 KEY5 进行按键测试,可看到如下打印信息,"00ca" 表示 KEY5,按 "Ctrl + C" 可终止测试命令。

Target#od -x /dev/input/event5

图 12

 

如果你还想了解更多嵌入式应用的相关知识,欢迎关注 Tronlong 创龙科技