如何使用 VS Code 开发 RT-Thread Smart 应用程序

RT-Thread Smart for VS Code 插件简介

VS Code 是一套轻量级的编辑器,同时也可以通过插件来适配更多的功能。为了让开发者更方便地在 VS Code 上开发 rt-smart 用户应用程序,我们推出了这样一套 RT-Thread Smart VS Code 插件。

功能介绍

  • 支持创建 RT-Thread Smart 工程

  • 支持 CMake、Make、Scons 构建

  • 支持清理工程

  • 支持一键下载

  • 支持一键调试

  • 支持不同开发平台 Linux、Windows

  • 支持自定义调试命令

命令介绍

  • RT-Thread Smart:Create Project: 创建 RT-Thread Smart 工程

  • RT-Thread Smart:Settings: 打开 RT-Thread Smart 工程设置

rt-smart VS Code快速上手短视频

在详细讲解功能特性前,我们先来欣赏一段 rt-smart VS Code快速上手短视频。

视频内容(操作顺序):启动 rt-smart 内核、安装 C/C++ 插件、RT-Thread Smart 插件、Windows 下创建 rt-smart 用户应用程序(scons)、修改用户代码(增加 GPIO LED 控制)、编译、下载、GDB 在线调试等操作。

rt-smart VS Code快速上手视频

​​安装 RT-Thread Smart 扩展插件

VS Code官网下载并安装 VS Code 软件,然后在 VS Code 应用商店中,搜索 RT-Thread Smart, 选择下图所示扩展,点击 安装 即可:

如何使用 VS Code 开发 RT-Thread Smart 应用程序_第1张图片

环境搭建

硬件环境搭建

  • ART-Pi Smart 开发板是 RT-Thread 联合百问科技出品,用于学习和评估 RT-Thread Smart 微内核操作系统

  • 电源输入:5V,500 mA,通过开发板 USB-TypeC(下面)供电。如下图所示,通过测试电脑的 USB 直接对开发板供电

  • 串口连接:下方的 USB-TypeC 接口,既是用作电源供电,同时也是 USB 转 UART 接口,主要用于打印系统的控制台输入和输出

波特率 数据位 停止位 校验位 流控
115200 8 1
  • 网络接口:通过路由器和网线(或者通过板载的 rw007 wi-fi 模块),将开发板和测试电脑连接在同一个局域网

下载 AR-Pi Smart SDK

ART-Pi-Smart SDK 仓库是 RT-Thread 团队对 ART-Pi Smart 开发板所作的支持包,用于学习和评估 RT-Thread Smart 微内核操作系统,让用户可以更简单方便地开发自己的应用程序。

ART-Pi smart 开发板的 SDK 仓库,主要包括 RT-Thread Smart 的源码,BSP 驱动,应用程序 demo 等。

SDK 下载方法:通过 Git 下载 ART-Pi Smart SDK 包:

git clone https://gitee.com/createshare/ART-Pi-smart.git

下载和安装工具链

  • rt-smart 采用的工具链为:arm-linux-musleabi 工具链

  • 需要用户自行通过下面网址下载 Linux 版本或 Windows 版本的工具链

  • 链接: 百度网盘 请输入提取码 提取码: ndxq

  • 将下载的工具链,解压到指定的路径 tools/gnu_gcc 下面

下载和启动 rt-smart 内核固件

在 VS Code上开发 rt-smart 用户应用程序之前,需要先把 rt-smart 内核在开发板上跑起来。由于开发板上的 emmc 已经固化了一版 rt-smart 内核固件,并且开发板上电后,会自动优先启动 rt-smart 内核,故只需要给开发板上电即可。

另外,用户也可以在开发板上电时,通过 u-boot + tftp 或 USB 来加载并运行自己编译出来的 rt-smart 内核固件。

同时,ART-Pi Smart 支持 rt-smart 和 Linux 双系统。即用户也可以在开发板上电时,通过 u-boot 手动输入 run bootcmd_linux来启动板载的 Linux 系统,进行Linux 相关的学习。

开发 rt-smart 用户应用程序

rt-smart 内核跑起来之后,用户就可以在 VS Code上进行用户应用程序的开发,包括:

  • VS Code下创建用户应用工程

  • 编译用户应用工程

  • 下载用户应用固件到开发板

  • 在 VSCode下通过 gdb 在线调试用户应用代码

RT-Thread Smart for VS Code快速上手

这里将以 Windows 环境下使用 VS Code开发 rt-smart 用户应用程序为例。

创建工程

在 VS Code上通过 RT-Thread Smart 插件,可以很方便地在不同平台上创建 rt-smart 用户应用 APP。

在 VS Code上执行快捷键 Ctrl_Shift+P, 输入 RT-Thread 关键字,选择 创建 RT-Thread Smart 工程, 然后按提示执行以下操作:

  • 输入 SDK 根目录

  • 输入工程名称

  • 选择构建工具

    • Linux 平台支持 CMake、Make、Scons 等构建工具

    • Windows 平台只支持 Scons 构建工具

  • 以 Windows 环境下使用 VS Code开发 rt-smart 用户应用程序为例

如何使用 VS Code 开发 RT-Thread Smart 应用程序_第2张图片

 添加用户功能代码

例如,修改 main.c 增加 GPIO 口控制开发板的 LED 灯的应用程序。

#include 
#include 
#include 
​
#define GET_PIN(PORTx, PIN)  (32 * (PORTx - 1) + (PIN & 31))
#define LED_PIN  GET_PIN(5,3)
struct rt_device_pin_mode
{
    rt_uint16_t pin;
    rt_uint16_t mode;
};
struct rt_device_pin_status
{
    rt_uint16_t pin;
    rt_uint16_t status;
};
​
int main(int argc, char **argv)
{
    rt_device_t pin_dev;
    struct rt_device_pin_mode pin_mode;
    struct rt_device_pin_status pin_status;
​
    rt_kprintf("hello world!\n");
    pin_dev = rt_device_find("pin");
    rt_device_open(pin_dev, RT_DEVICE_OFLAG_RDWR);
    pin_mode.pin = LED_PIN;
    pin_mode.mode = 0;
​
    rt_device_control(pin_dev, 0 ,(void*)&pin_mode);
    pin_status.pin = LED_PIN;
​
    pin_status.status = 1; // close led
    rt_device_write(pin_dev, 0 ,(void*)&pin_status, sizeof(pin_status));
    rt_thread_mdelay(200);
​
    pin_status.status = 0; // open led
    rt_device_write(pin_dev, 0 ,(void*)&pin_status, sizeof(pin_status));
​
    rt_device_close(pin_dev);
    return 0;
}

编译/清理/下载

1.点击 VS Code左下角的 编译清理 或者 下载 工具,会为您自动 编译工程(用户 APP)清理工程或者 下载用户 APP 固件文件到开发板

如何使用 VS Code 开发 RT-Thread Smart 应用程序_第3张图片

 2.编译通过后,会自动生成用户 APP 固件: hello.elf

如何使用 VS Code 开发 RT-Thread Smart 应用程序_第4张图片

 3.下载用户 APP 固件 hello.elf 到开发板的 emmc 文件系统:/root/bin/

如何使用 VS Code 开发 RT-Thread Smart 应用程序_第5张图片

GDB 在线调试

rt-smart 内核跑起来之后,用户可以对用户 APP 进行源码级调试,并且可以在 VS Code上进行 GDB 源码级在线调试。

rt-smart GDB 调试的基本原理:通过 Kernel 来调试用户 APP。即通过 Kernel 上运行 GDB server 和测试电脑(GDB client)配合对用户 APP进行在线调试。

在 VS Code上直接按 F5 快捷键, 即可启动 GDB 在线调试 rt-smart 用户应用程序。

如下图所示,进入调试模式之后,VS Code左侧会自动跳转到 运行和调试视图,可以查看变量、监视变量、查看调用堆栈、设置断点等常用调试功能。

调试现象:开发板上的绿色 LED 会闪烁一下。

如何使用 VS Code 开发 RT-Thread Smart 应用程序_第6张图片

点击阅读原文即可下载 ART-Pi Smart SDK

阅读原文

你可能感兴趣的:(rt-smart,微内核操作系统,IOT,物联网,VS,Code,linux,vscode,c语言,ide,编辑器)