跳转至

Telink VS Code Extension User Guide


简介

Telink VS Code 插件可以将 Telink IoT Studio 的工程转换为可在 VS Code使用的 CMake 工程,并支持在 VS Code 中开发 Telink TL32 和 TC32 系列芯片的 SDK。

如果你的仓库第一次使用,需要运行转换功能。

Vs Code工作空间打开一个sdk目录,将Telink IoT Studio工程转换为CMake工程,选择需要转换的工程。

开始转换

转换完成后,可以在PROJECT OUTLINE查看project - target - source。

转换完成

可以转换多个工程,重复运行上述命令,选择其他工程即可。

CMake 配置、构建

插件在运行构建命令的时候,会默认自动运行配置。

构建

电脑环境需要安装CMakeToolchain必要软件安装参考下一个小章节。

点击target旁边的小火箭按钮 🚀 可以开始构建。

开始构建

构建完成后, 可以看到构建产物和构建Log。

构建完成

Clean

在target右键菜单,选择Clean Target,或者下方clean按钮。

Clean

必要软件安装

Toolchain文件比较大,有多种应用方式可选。

(1) Telink Tools Installer(适用于没有安装Telink IoT Studio环境,大概2GB,包含常用的Toolchain,BDT,CMake)

安装后插件会自动检测Tools路径。

(2) 本地配置

如果已经安装Telink IoT Studio,复用Toolchain即可。

(3) 在线安装

文件比较大,可能限制于网络速度,需要耗费一些时间。

Toolchain本地配置

在构建过程中发现缺失对应Toolchain,右下侧会弹出选择框。

点击configure, 选择对应toolchian路径下的gcc文件, riscv32-elf-gcc或者tc32-elf-gcc

点击Configure

选择‘gcc’文件

CMake软件安装和配置

如果电脑环境没有安装CMake:

(1) 从CMake 官网下载安装包 (2) 电脑环境变量如果配置CMake软件路径,需要手动配置。

配置CMake软件路径

CMake工程构成

(1) CMakeLists.txt: CMake工程函数,TL和TC系列有区别。

(2) cmake_configs: SDK配置文件(*_cmake.json)。CMakeLists.txt会去读取配置生成工程,目前不要手动去修改,可能会导致功能异常。

(3) cmake_builds: 工程编译中间文件。

CMake Output

如果没有安装CMake,需要用户手动安装cmake。

工程管理

增删工程和Target

PROJECT OUTLINE和工程名称节点旁边的+号分别对应“Add Project”, “Add target”。

在输入框输入新的名称,然后选择

  • 新建空白工程/target
  • 复制已有工程/target

复制已有工程相较新建工程的好处,相似的工程经过简单修改可完成。

添加工程

工程文件增删改查

增加/删除文件

在对应文件夹右键菜单,在输入框输入新的名称。

导入/删除引用

导入引用:不实际创建文件,表示给target导入已经存在的文件到source中。

删除引用:不实际删除文件,从target的source中移除引用。

导入/删除引用

Toolchian参数配置

target右键进入工具链配置页面,配置界面与Telink IoT Studio一致。

${ConfigName} ${ProjName}在工程转换过程中会被展开为实际值。

${workspace_loc:/${ProjName}}格式的路径会被转换成${CMAKE_CURRENT_SOURCE_DIR}

例如,shell语句

${workspace_loc:/${ProjName}}/../../../tools/tl_check_fw_tool/tl_check_fw.sh  ${ConfigName}  ${ProjName}

>>> after converted >>>

${CMAKE_CURRENT_SOURCE_DIR}/project/tlsr_riscv/B92/../../../tools/tl_check_fw_tool/tl_check_fw.sh  UART_Demo  TL_PLATFORM_SDK_B92

类似-I -L路径参数,在Telink IoT Studio里推荐使用${workspace_loc:/${ProjName}}格式。

自定义脚本(Pre/Post Build)

Telink 扩展支持在 pre/post-build 阶段执行自定义脚本。

但须注意:Telink IoT Studio 与 VS Code 的项目目录结构存在差异,不能在命令中直接使用相对路径。

如果当前的工程是 Telink IoT Studio 工程,希望转换之后能正常执行 pre/post-build, 那么不能直接使用类似../../的写法, 而是使用 ${workspace_loc:/${ProjName}} 来指代你的工程根目录。

例如, 一段脚本原始写法为

"../../../tools/tl_link_load.sh" "../../../platform/boot/tl321x/boot_tl321x.link" "${workspace_loc:/${ProjName}}/boot.link"

将其写成

"${workspace_loc:/${ProjName}}/../../tools/tl_link_load.sh" "${workspace_loc:/${ProjName}}/../../platform/boot/tl321x/boot_tl321x.link" "${workspace_loc:/${ProjName}}/boot.link"

已知bug

  • 选项可能没有100%全部转换,因为有些配置没有体现在工程文件.cproject中,是IDE默认行为。