1. 网关硬件平台搭建与系统启动

网关硬件平台搭建与系统启动 学习卡片

任务目标

在一块ARM Cortex-A系列工业网关核心板上(以全志T3为例),完成Linux系统烧录并验证系统启动流程。最终通过串口终端观察到内核启动日志与登录提示符,证明系统可正常运行。

硬件与工具准备

  • 核心板:全志T3(Cortex-A7四核)工业级核心板,底板含调试串口(UART0,TTL电平,默认115200-8-N-1)
  • 存储:板载eMMC(8GB)
  • 烧录工具:全志PhoenixSuit(Windows)或sunxi-fel(Linux)
  • 调试工具:USB转TTL模块、串口终端软件(MobaXterm/minicom)
  • 镜像文件:t3_industrial_v1.0.img(包含U-Boot、内核、设备树、根文件系统)

烧录Linux系统

使用PhoenixSuit进行eMMC烧录,操作步骤如下:

  1. 安装PhoenixSuit并打开,选择“一键烧录”模式
  2. 加载镜像文件 t3_industrial_v1.0.img
  3. 按住核心板上的FEL键,通过USB连接核心板与PC
  4. 软件提示“连接成功”后自动开始烧录,进度条走满即完成
  5. 断开USB,核心板上电,系统将从eMMC启动

串口登录与启动验证

将USB转TTL模块连接至底板调试串口(TXD→RXD,RXD→TXD,GND→GND),打开串口终端并配置为115200-8-N-1,给核心板上电,观察启动输出。

# 串口终端中预期观察到的启动关键阶段(与代码逻辑对应)
U-Boot 2018.05 (Mar 12 2024 - 10:30:00)
CPU:   Allwinner T3 (SUN8I)
DRAM:  1 GiB
MMC:   SUNXI SD/MMC: 0
Loading Device Tree: sun8i-t3-industrial.dtb
Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.118 (build@server) (gcc version 6.5.0)
[    1.234567] mmc0: new high speed SDXC card at address 0001
[    2.345678] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode
[    3.456789] Freeing unused kernel memory: 256K
[    4.567890] random: crng init done

Welcome to Buildroot
t3 login: root
# uname -a
Linux t3 4.9.118 #1 SMP PREEMPT Mon Mar 12 10:30:00 CST 2024 armv7l GNU/Linux

以上为预期输出示例,实际日志以烧录镜像版本为准。判定系统启动成功的条件为:

  • 串口输出包含“Starting kernel”及后续内核初始化日志
  • 文件系统挂载成功(EXT4-fs消息)
  • 出现登录提示符 t3 login:,输入用户名root(默认无密码)可进入shell
  • 执行 uname -a 能返回当前内核版本信息

常见问题排查

现象可能原因处理方式
串口无输出串口接线错误或波特率不匹配检查TXD/RXD是否交叉连接,确认终端设置为115200-8-N-1
烧录失败/无法识别设备FEL键未正确触发或驱动未安装重新按住FEL键再插入USB,安装全志USB驱动(PhoenixSuit安装目录下driver文件夹)
启动卡在U-BooteMMC中镜像损坏或分区错误重新执行烧录流程,确保烧录过程中不断电

本案例完成从硬件准备到系统启动验证的完整闭环,核心交付物为可启动的Linux系统及串口验证路径。后续案例将在此系统基础上进行网关功能开发。