【先楫HPM6750系列】RT-Thread开发环境搭建和Hello World

本篇介绍HPM6750开发板的RT-Thread Studio开发环境搭建,以及在RT-Thread Studio环境下如何创建项目、编译项目、调试项目、烧录二进制文件、使用串口终端等功能。

RT-Thread和RT-Thread Studio简介

RT-Thread是一款流行的国产实时操作系统(RTOS)。RT-Thread系统包含了RTOS内核、TCP/IP协议栈、FATFS文件系统等功能的实现,同时提供了包管理器——可以非常方便的下载已经适配好RT-Thread系统的三方软件包。因此,基于RT-Thread系统我们可以非常方便的实现支持多任务、文件系统、网络协议的复杂业务项目开发。

RT-Thread Studio是RT-Thread官方团队开发的集成开发环境(IDE)。使用RT-Thread Studio我们可以很方便的创建基于RT-Thread系统的项目、编译基于RT-Thread系统的项目,以及进行项目的调试、将项目生成的二进制文件烧录到开发板上、使用串口终端和RT-Thread的finsh进行交互式控制台调试。

下载和安装RT-Thread Studio

RT-Thread Studio安装程序下载页面:https://www.rt-thread.org/page/studio.html

RT-Thread Studio安装程序下载完成后,运行安装程序,一路下一步即可完成RT-Thread Studio的安装。

添加HPM6750开发板支持包和工具链

使用RT-Thread Studio进行支持HPM6750开发板的RT-Thread项目开发前,需要先下载HPM6750所需的几个软件包,具体方法如下。

通过下图中的SDK Manager图标打开RT-Thread SDK管理器:

在RT-Thread SDK管理器中,找到并勾选HPM6750-HPMicro-EVKMINI、RISC-V-GCC、OpenOCD-HPMicro三个选项框:

点击“安装3资源包”,进行安装。这三个资源包分别是:

  • HPM6750-HPMicro-EVKMINI,是HPM6750EVKMINI开发板支持包,包含了HPM SDK和HPM6750EVKMINI开发板的驱动文件;
  • RISC-V-GCC,是RISC-V指令集架构的交叉编译工具链,用于将C/C++源代码编译为RISC-V指令集架构的二进制文件;
  • OpenOCD-HPMicro,是HPM修改过的OpenOCD,用于连接开发板进行调试和二进制文件下载;

完成以上步骤,我们的HPM6750开发板的RT-Thread Studio开发环境已经搭建完毕了。

使用RT-Thread Studio

接下来,我们将演示如何使用RT-Thread Studio创建RT-Thread项目,如何对项目进行编译、调试,如何将生成的二进制文件下载到开发板上,以及如何使用“串口终端”功能。

创建项目

依次点击“文件→新建→RT-Thread项目”菜单,在弹出的“新建项目”窗口中,填入项目名称,选择“基于开发板”,在开发板下拉菜单中选择HPM6750EVKMINI:

点击“完成”即可创建名为“hpm-hello_world”的项目。

编辑代码

打开项目的applications/main.c文件,向main函数中添加一行:

rt_kprintf("Hello, World!!!\\n");

如下图所示:

编译项目

点解界面左上角的锤子形状的“编译”图标,或使用Ctrl+B快捷键,则会开始编译项目。编译过程中可以看到“控制台”中有编译日志输出。编译完成后,可以看到“控制台”中输出了Flash和RAM的占用量:

调试和烧录

调试前需要注意的是——HPM6750EVKMINI开发板的BOOT拨码必须在00的状态

点击界面上的虫子形状的“调试”图标,或使用Ctrl+F5快捷键,将会开始调试,如下图所示。

可以看到,RT-Thread Studio里可以进行单步调试、断点调试,也可以查看变量、寄存器、调用栈等信息。

通过调试功能,我们可以跟踪rt_kprintf是如何调用到BSP中的UART驱动代码的:

直接烧录

如果你想直接将编译生成的二进制文件烧录到开发板,不需要进行调试的话,可以点击界面上的“下载程序”图标,或使用Ctrl+Alt+D快捷键:

串口终端

和其他嵌入式开发IDE类似,RT-Thread Studio也带有“终端”功能,通过“终端”功能我们可以接收并查看串口输出、向串口发送数据。下面介绍如何在RT-Thread Studio中通过“终端”查看串口输出。

依次点击菜单“窗口→显示视图→终端”打开终端子窗口,此时控制台子窗口将会变为“终端”视图,切右上角将会多出一个新的终端图标:

点击右上角的配置新终端图标,弹出串口参数配置界面:

串口端口选择HPM6750开发板实际的串口端口号,其他参数不用修改(因为和RT-Thread代码中的默认配置一致)。点击“确定”,将会启动一个新的终端,并按照配置参数连接HPM6750开发板对应的串口端口:

此时,按下开发板的复位按键,将会看到终端输出了RT-Thread的版本信息和Hello World:

在串口终端中使用finsh命令行

由于RT-Thread默认启用了finsh交互式命令行,并且HPM6750 BSP中已将UART0初始化为控制台(console)输入输出。因此,我们可以在串口终端中输入finsh命令,进行交互式命令行操作,非常便于一般功能性测试和调试。

例如,我们可以在控制台中输入help命令并回车,查看当前支持哪些命令。

输入ps命令并回车,查看当前有哪些线程正在运行,如下图。

【先楫HPM6750系列】RT-Thread开发环境搭建和Hello World相关推荐

  1. 【先楫HPM6750测评】RT-Thread开发环境搭建和Hello World

    本文由RT-Thread论坛用户@xusiwei1236原创发布:https://club.rt-thread.org/ask/article/1bf679d8a2709824.html 本篇介绍HP ...

  2. [Android系列—] 1. Android 开发环境搭建与Hello World

    前言 开始之前先熟悉几个名词: SDK -- Software Development Kit, 软件开发工具包.这个词并不陌生, JDK,就是Jave Development Kit,同样对于And ...

  3. 涂鸦智能模组SDK开发系列课程——SoC开发环境搭建(一)

    SoC开发环境搭建 本章节主要介绍如何搭建涂鸦 Wi-Fi 和 Wi-Fi&Bluetooth LE 系列模组二次开发的编译环境.在 Windows 上使用 VirtualBox 虚拟机软件安 ...

  4. 【JAVA零基础入门系列】Day1 开发环境搭建

    一.安装JDK java的sdk简称JDK ,去其官方网站下载最近的JDK即可. http://www.oracle.com/technetwork/java/javase/downloads/jdk ...

  5. 手牵手系列之TypeScript开发环境搭建

    新建项目 初始化 npm init 安装全局依赖 npm install typescript tslint -g 执行命令初始化,项目根目录生成tsconfig.json文件 tsc --init ...

  6. Android深入浅出系列之Android开发环境搭建—SDK(三)

    安装SDK 1:下载SDK 只有下载了Android的,SDK(Software Development Kit)软件开发工具包,我们才能从事安卓的开发,SDK可以从Android的官方网站上下载,下 ...

  7. win10下pyqt5低功耗蓝牙系列一:开发环境搭建

    1.序言 之前在网上搜索关于python实现低功耗蓝牙(BLE)的案例,基本都是让安装pybluez等之类的工具,实测发现基本行不通,具体原因也不记得了,折腾了将近一个星期时间.这两天看Qt的QtBl ...

  8. 【先楫HPM6750系列】移植轻量级AI推理框架——TinyMaix

    [先楫HPM6750系列]移植轻量级AI推理框架--TinyMaix 文章目录 [先楫HPM6750系列]移植轻量级AI推理框架--TinyMaix 一.TinyMaix是什么? 二.TinyMaix ...

  9. 【先楫HPM6750系列】CoreMark跑分测试

    [先楫HPM6750系列]CoreMark跑分测试 上篇帖子中,我们完成了Embedded Studio开发环境搭建,对Hello World示例进行了编译和调试. 本篇将会使用SEGGER Embe ...

最新文章

  1. 深度干货!如何将深度学习训练性能提升数倍?
  2. 详谈ARM架构与ARM内核发展史
  3. 像git一样管理数据,高效的数据管理平台TensorBay来了!
  4. Spring源码分析之BeanPostProcessor接口和BeanFactoryPostProcessor接口方法不执行原因分析
  5. 带你走进EJB--MDB
  6. WordPress搬家教程:换空间与换域名
  7. python中def func是什么意思_python中的函数def和函数的参数
  8. factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class ..
  9. 在家怎么做冰皮月饼 冰皮月饼的做法
  10. 这程序还厉害的。。。
  11. 红罐王老吉品牌定位战略
  12. Linux用户和组权限管理
  13. 周鸿祎:写区块链最好的一篇文章
  14. 用了三年teambition的我,为什么改用飞项了?
  15. php记录上次观看记录,PHP 记录用户访问记录
  16. Eclipse怎样改变字体大小
  17. 线上展厅打造视觉亮点
  18. 北美票房排行榜 实时_诸城客房管理软件排行榜
  19. 一篇文章,讲透“复盘”
  20. 企业领袖必读的10本管理学书籍

热门文章

  1. 网上考试系统支持多少人同时在线考试
  2. 技术专栏 | 两万字深度长文!从原理到趋势 解剖风口上的区块链技术
  3. 中国人保为STEPS意匠制土承保产品责任险,为消费者保驾护航
  4. 题目二:约瑟夫生者死者游戏
  5. PHP5最新中文版CHM手册
  6. 说一说埃隆.马斯克他妈妈的故事
  7. java设置word审阅最终状态_word2007怎么将审阅中修订改为最终状态
  8. 数据结构:时间复杂度空间复杂度(递归)
  9. 汉澳sinox2016企业版暨器普sepl2.0发布
  10. 百度刷相关wf5搜_干翻抖音?百度上线新APP!