chen55025470 发表于 2026-7-3 11:19:28

【Telink TL322X 测评】第一章:开箱、环境搭建与首次烧录

# 【Telink TL322X 测评】第一章:开箱、环境搭建与首次烧录

* **本章记录 ****Telink TL322X / TL3228XDK96D** 开发板的基础上手过程,包括开发板连接、VS Code 环境搭建、Telink 工具链安装、SDK 获取、USB 驱动安装、首次编译和首次烧录。
* **本章的重点不是复杂功能,而是先确认开发板是否可以稳定完成 ****识别、编译、烧录、读回校验和复位运行**。

## 1.0 当前自动化验证记录

**本章对应固件已经完成构建、烧录和读回校验:**

| **项目**                | **结果**                                                               |
| ------------------------- | ------------------------------------------------------------------------ |
| **SDK target**          | `feature_test`                                                   |
| **FEATURE\_TEST\_MODE** | `TEST_FEATURE_BACKUP`                                              |
| **固件**                | `firmware\eval00_feature_backup.bin`                               |
| **大小**                | **137332 bytes**                                                       |
| **SHA256**            | `08CCD4A811373A11B412CDB8794904F98F84829C43993F3AA970C0106C4DC6E3` |
| **烧录验证**            | `verified`,读回 SHA256 与本地固件一致                           |
| **日志**                | `logs\flash_eval00_feature_backup.log`                           |

**本章已达到的效果:Windows 能识别 Telink CDC WinUSB 下载口,**`TC.exe all` 可以枚举 EVK,TL32 GCC/CMake 可以完成 TL322X target 构建,Flash 解锁、写入、读回和 SHA256 校验流程可复用到后续章节。

## 1.1 本章任务目标

**本章主要完成以下任务:**

```
1. 确认 TL322X 开发板可以被 Windows 正常识别;
2. 在 Windows 下搭建 VS Code + Telink 官方扩展开发环境;
3. 配置 TL32 GCC 12.2、CMake、Cygwin make、BDT 等工具;
4. 获取官方 tl_ble_sdk,并配置 TL322X 工程;
5. 编译 feature_test 示例;
6. 安装 Telink CDC WinUSB 驱动;
7. 使用 TC.exe 完成首次烧录、读回校验和复位运行;
8. 记录环境搭建过程中遇到的问题和解决方法。
```

**本次工程统一放在:**

```
D:\Project\Evaluation\Telink
```

**后续所有测评工程均放在 **`eval_projects` 目录下,避免直接修改官方 SDK 示例。

## 1.2 开发板与测试方式

**TL322X 是 Telink 面向低功耗无线连接应用的点点taptap安卓系列。本次使用的开发板属于 TL322X/TL3228XDK96D 方向,测评会从基础环境、基础外设、BLE、802.15.4/Zigbee/Thread/Matter、射频功耗和综合 Demo 逐步展开。**

**第一章选择从 ****环境和烧录链路** 开始,是因为后续所有测试都依赖这条链路:

```
Windows 识别开发板
      ↓
VS Code / Telink 扩展识别 SDK
      ↓
TL32 GCC 编译生成 bin
      ↓
Telink CDC / BDT 工具烧录
      ↓
读回 Flash 做校验
      ↓
复位后从 Flash 运行
```

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/105800q7x0p0emb0depem3.jpg)

* **外包装正面**

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/110739wqwix9q5iwi25iwq.jpg)

* **所有物料一览**

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/110100m0diiigc8thgzgzd.jpg)
* **开发板正面**

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/110221x8a7430euofxq320.jpg)
* **开发板背面**

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/110252d0x7d773gxhxv7gz.jpg)
* **开发板烧录接口特写**

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/110937bcmo8399jzmo0s0z.jpg)
* **USB 接入电脑**

!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/110957dwe93eewgr2uo2ro.png)

* **设备管理器中Telink CDC / WinUSB 设备识别**

## 1.3 独立工程与 SDK 基线

**本章记录目录为:**

```
D:\Project\Evaluation\Telink\eval_projects\00_board_environment_bringup
```

**官方 SDK 基线位于:**

```
D:\Project\Evaluation\Telink\tl_ble_sdk
```

**实际 SDK 工程目录为:**

```
D:\Project\Evaluation\Telink\tl_ble_sdk\tl_ble_sdk
```

**本次没有把官方 SDK 直接当作测评工程目录。这样做的好处是:SDK 可以保持相对干净,测评文章、日志、图片、视频和后续改动都放在 **`eval_projects` 下对应章节目录。

**本章的 **`src` 目录不是空工程,当前采用“SDK 引用 + 源码入口清单 + patch 记录”的方式管理源码:

```
src\build_config.json
src\sdk\
src\README.md
src\source_manifest.md
src\patches\feature_config_compile_time_override.patch
```

**实际参与构建的官方 SDK 源码入口见:**

```
src\source_manifest.md
```

## 1.4 VS Code 与 Telink 工具链安装

**本次使用 VS Code 配合 Telink 官方扩展进行开发。已安装的核心扩展包括:**

```
telink.tlk@1.3.1
telink.tlk-flash-tool@0.1.0
```

**Telink 工具统一安装在:**

```
C:\Users\陈治宇\.Telink_Tools
```

**主要工具路径如下:**

| **工具**      | **路径或说明**                                                      |
| ----------------- | ----------------------------------------------------------------------- |
| **TL32 GCC**    | `C:\Users\陈治宇\.Telink_Tools\toolchains\nds32le-elf-mculib-v5f` |
| **Cygwin make** | `C:\Users\陈治宇\.Telink_Tools\cygwin\bin\make.exe`               |
| **CMake**       | `D:\AppLication\STM32CubeCLT_1.19.0\CMake\bin\cmake.exe`          |
| **BDT**         | `C:\Users\陈治宇\.Telink_Tools\BDT\release_v5.9.2`                |
| **ICEman**      | `C:\Users\陈治宇\.Telink_Tools\ICEman\ICEman.exe`               |
| **Jtag\_burn**| `C:\Users\陈治宇\.Telink_Tools\Jtag_burn\Jtag_burn.exe`         |

**工具链版本验证结果:**

```
riscv32-elf-gcc 12.2.0
GNU gdb 12.0.50
GNU Make 4.3
GNU bash 4.4.12
```

## 1.5 环境搭建中遇到的问题

### 1.5.1 GitHub 克隆失败

**一开始尝试从 GitHub 克隆 SDK,但本机访问 GitHub 超时。后续改用 Telink 扩展 SDK Downloader 列表中的 Gitee 源:**

```
https://gitee.com/telink-semi/tl_ble_sdk.git
```

**最终克隆到的版本信息:**

```
release/V4.0.4.7
tag: V4.0.4.7_Patch_0001
```

### 1.5.2 工具链解压时出现 symlink 提示

**Windows **`tar` 解压 TL32 工具链时,对部分 symlink 或重复工具名提示 `Invalid argument`。实际检查后,关键编译器和 GDB 都可运行,因此没有影响后续构建。

### 1.5.3 GCC 找不到 Cygwin 运行时 DLL

`riscv32-elf-gcc.exe` 是依赖 Cygwin 运行时的程序。最初直接构建时出现:

```
error while loading shared libraries: ?: cannot open shared object file
```

**解决方法是把以下路径加入用户 PATH:**

```
C:\Users\陈治宇\.Telink_Tools\cygwin\bin
C:\Users\陈治宇\.Telink_Tools\toolchains\nds32le-elf-mculib-v5f\bin
```

### 1.5.4 驱动安装证书不受信任

**AICE/FTDI 驱动初次安装时,Windows 拒绝驱动包,提示证书链不受信任。后续将驱动包内的自签证书加入本机 **`Root` 和 `TrustedPublisher` 后,驱动包成功安装。

### 1.5.5 Telink CDC 初次识别为 Code 28

**开发板插入后出现:**

```
Telink CDC
USB\VID_248A&PID_3228\CDC_DEMO
Problem Code: 28
```

**这个设备虽然名字叫 CDC,但它不是普通 COM 口,而是 BDT 使用的 WinUSB 设备。解决方法是安装 BDT 自带的驱动:**

```
C:\Users\陈治宇\.Telink_Tools\BDT\release_v5.9.2\TGui\Apps\app1\cmd_tool\libusb_driver_install\InstallDriver.exe
```

**安装后设备状态变为:**

```
Class: USBDevice
FriendlyName: Telink CDC
Service: WinUSB
Driver: oem288.inf
Status: OK
```

## 1.6 TL322X 工程编译

**TL BLE SDK 中 TL322X 的 CMake 配置文件为:**

```
tl_ble_sdk\tl_ble_sdk\cmake_configs\TL_BLE_SDK_322X_cmake.json
```

**该配置包含以下 target:**

```
acl_central_demo
acl_connection_demo
acl_peripheral_demo
ble_controller
feature_test
```

**本章先选择 **`feature_test` 作为首次构建目标。构建完成后生成:

```
D:\Project\Evaluation\Telink\tl_ble_sdk\tl_ble_sdk\cmake_builds\TL_BLE_SDK_322X\feature_test.bin
```

**固件信息:**

```
file size: 137332 bytes
SHA256: 08CCD4A811373A11B412CDB8794904F98F84829C43993F3AA970C0106C4DC6E3
```

**构建过程中 SDK 内部有少量 **`-Waddress-of-packed-member` warning,位置在 TL322X 的 `can.c` 和 `lin.c`,不影响本次构建。

## 1.7 开发板识别与 Flash 信息读取

**Telink CDC 驱动安装完成后,使用 BDT TGui 目录中的 **`TC.exe` 枚举设备:

```
TC.exe all
```

**实际输出:**

```
Device 1: vid_248a&pid_3228&evk_id_0001&bus_003&addr_061
```

**虽然日志前缀显示 **`TL721X`,但后续命令可以通过 `--chip=TL322X` 指定当前目标点点taptap安卓。

**读取 Flash 信息:**

```
TC.exe fi -d 1 --chip=TL322X
```

**输出结果:**

```
Flash information:
flash mid = 0x00166085, flash status = 0x0038, lock area: 0x000000-0x1fffff
flash uid: 41 50 34 5a 39 39 38 03 00 20 76 4c 4c 01 45 78
```

**这里可以看到 Flash 初始处于写保护状态,烧录前需要先解锁。**

## 1.8 首次烧录与读回校验

**烧录前先备份 0 地址同等长度内容:**

```
TC.exe rf 0 137332 -o D:\Project\Evaluation\Telink\_device_backups\tl322x_flash0_backup_20260701_175929_137332.bin -d 1 --chip=TL322X
```

**解除 Flash 写保护:**

```
TC.exe ulf 0 0 -d 1 --chip=TL322X
```

**烧录 **`feature_test.bin`:

```
TC.exe wf 0 -i D:\Project\Evaluation\Telink\tl_ble_sdk\tl_ble_sdk\cmake_builds\TL_BLE_SDK_322X\feature_test.bin -d 1 --chip=TL322X
```

**烧录后读回同等长度数据:**

```
TC.exe rf 0 137332 -o D:\Project\Evaluation\Telink\_device_backups\tl322x_flash0_readback_20260701_175929_feature_test.bin -d 1 --chip=TL322X
```

**读回校验结果:**

```
Firmware SHA256:
08CCD4A811373A11B412CDB8794904F98F84829C43993F3AA970C0106C4DC6E3

Readback SHA256:
08CCD4A811373A11B412CDB8794904F98F84829C43993F3AA970C0106C4DC6E3

Readback verification: OK
```

**最后从 Flash 复位运行:**

```
TC.exe rst -f -d 1 --chip=TL322X
```

**输出:**

```
reset mcu ok.
```

## 1.9 实测现象

**本章实测现象如下:**

```
1. Windows 可以识别 Telink CDC,设备状态为 OK;
2. TC.exe 可以枚举到 evk_id_0001;
3. Flash 信息可以读取,说明 USB 下载链路正常;
4. feature_test 可以成功写入 Flash 0 地址;
5. 烧录后读回文件与本地 bin 的 SHA256 完全一致;
6. 执行 rst -f 后,开发板可以从 Flash 复位运行;
7. 复位后 Telink CDC 仍然在线,TC.exe all 仍能识别设备。
```

* `TC.exe all` 枚举到 `vid_248a&pid_3228&evk_id_0001` 的命令行截图
!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/111123ke407cgfsz9b409e.png)
* `TC.exe fi -d 1 --chip=TL322X` 读取 Flash MID、UID、锁区信息的截图
!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/111144thm0cmjjwkpj095h.png)
* **本地固件 SHA256 与 Flash 读回 SHA256 一致的校验截图**)
!(//m.qjumbo.com/forum/data/attachment/forum/202607/03/111203k9ckag7z3u15s0g7.png)


* `TC.exe` 完成写入、读回和 SHA256 校验的完整录屏

​

## 1.10 本章测试结论

**通过第一章测试,可以确认:**

```
1. TL322X 的 VS Code 开发环境已经搭建完成;
2. TL32 GCC、CMake、Cygwin make 和 Telink BDT 工具链可以正常工作;
3. Telink CDC WinUSB 驱动安装后,开发板可以被 TC.exe 正常访问;
4. TL BLE SDK 的 TL322X 工程可以成功构建 feature_test;
5. Flash 烧录、读回和 SHA256 校验链路已经打通;
6. 后续可以继续进行 GPIO、串口日志、BLE 和无线协议相关测评。
```

## 1.11 本章小结

**第一章完成了 TL322X 开发板最基础也最关键的 bring-up 工作。后续章节如果出现外设、协议栈或应用层问题,至少可以确认底层的编译、下载和 Flash 校验链路是可靠的。**

**本章遗留事项是 AICE/JTAG 调试器还没有作为独立设备枚举出来,后续会在烧录调试章节继续确认调试口、线缆和驱动绑定方式。**

页: [1]
查看完整版本: 【Telink TL322X 测评】第一章:开箱、环境搭建与首次烧录

Baidu
map