【基于 RT-Thread Studio的CPK-RA6M4 开发板环境搭建】

简介: 【基于 RT-Thread Studio的CPK-RA6M4 开发板环境搭建】

1. CPK-RA6M4 开发板特点

基于瑞萨RA6M4 MCU开发的CPK-RA6M4 MCU评估板 ,通过 灵活配置软件包和IDE,可帮助用户对RA6M4 MCU 群组的特性轻松进行评估,并对嵌入系统应用程序进行开发。


1.1 搭载资源


1.1.png


1.2 外观正面



1.2.png

1.3 外观反面



1.3.png

1.4 系统框图


1.4.png


1.5 板载原理图


1.5.png

1.6.png

1.7.png

1.8.png

1.9.png


来源:

《开发板用户手册》

原理图:


本文将使用瑞萨的 CPK-RA6M4 开发板介绍如何在 RA 系列 MCU 上让 RT-Thread 运行起来。开发环境的搭建将分为以下几个部分:


  • RA 开发环境搭建
  • 基于 RT-Thread Studio开发环境搭建

2. RA 开发环境搭建

2.1 必备工具

2.1.1 灵活配置软件包 (FSP) :

可快速配置开发板的外设功能,请使用 v3.5.0 版本,目前可在github上下载3.5.0版本(下载地址:https://github.com/renesas/fsp/releases/tag/v3.5.0 ,注意文件名称为:setup_fsp_v3_5_0_rasc_v2021-10.exe)

2.11.png


<注意官网为3.8.0版本,不向前兼容,使用3.8.0版本会会导致本工程不可用>


2.1.2 CPK-RA6M4 板级支持包:

配合 FSP 一起使用,是开发板的图形化配置支持包,请使用 v3.5.0 版本


可在Renesas官网下载:

2.12.png

网盘下载链接:https://cowtransfer.com/s/b9eddec169d544

已包含 上述FSP 软件和 FSP 板级支持包,从此链接下载可一步到位。


2.2 环境搭建

灵活配置软件包 (FSP)


1、打开链接下载 FSP,请确认下载的 3.5.0 版本,从网盘下载可忽略此下载步骤。

2.21.png

目前 RT-Thread 中 CPK-RA6M4 的 BSP 支持的版本是 3.5.0。可以在 BSP 的 README 中确认目前支持的 FSP 版本。

2、找到下载的文件打开(注意文件名称包含为rasc):setup_fsp_v3_5_0_rasc_v2021-10.exe


2.22.png

3、配置安装路径,安装完成后找到此路径,之后添加 CPK-RA6M4 板级支持包 时会用到

2.23.png


4、勾选 Licenese

2.24.png

5、点击 install 等待安装完成。

2.25.png

6、运行 rasc.exe,验证是否安装成功。路径:\eclipse\rasc.exe

2.26.png


7、成功启动后关闭即可,继续接下来的操作


2.27.png


2.3 CPK-RA6M4 板级支持包

1、此部分,你可以参考Renesas官网文档《向FSP中添加CPK评估板的BSP 》

下载 3.5.0 版本支持包。从网盘下载可忽略此下载步骤。

2.31.png

2、在下载的支持包中可以找到以下三个文件

2.32.png

3、此时找到 FSP 的安装路径,进入 \internal\projectgen\ra\ ,将文件复制到对应的文件夹中。

2.33.png


4、再次打开 rasc.exe,查看是否添加成功。点击 next 进入工程创建

2.34.png



5、确认是否存在已添加的 CPK-RA6M4 开发板的支持包,此步骤仅为验证是否添加成功,不必继续创建工程,关闭即可。

2.35.png


6、到此基本将瑞萨开发板相关的环境搭建完成。调试器 J-link 的安装,在下面的步骤中介绍。


3. RT-Thread 开发环境搭建

3.1 基于 RT-Thread studio

下载安装必备软件环境


下载并安装 RT-Thread studio

打开 RT-Thread studio,进入包管理器,下载 RT-Thread 的 bsp 支持包及相关工具。


3.11.png

下载 BSP 支持包,勾选最新版即可。



3.12.png

PS:BSP 支持包会自动下载依赖的资源包:


3.13.png

RT-Thread 系统源码包

GCC工具链:版本 10.2.1

调试器 J-link:版本 7.50a



3.2 创建工程测试结果

1、打开 RT-Thread studio,新建 RT-Thread 项目 —> 基于开发板,创建CPK-RA6M4的工程

3.21.png


2、打开创建的工程,双击 RA Smart Configurator 即可打开刚刚安装的 FSP 配置工具图片

3.22.png


3、第一次打开需要配置 FSP 路径,选择到安装路径即可。确认可打开 FSP 即可关闭,先不做修改继续后续操作。


3.23.png

3.231.png

3.232.png




4、编译工程,确认工具链配置正确


3.24.png

5、接线:连接串口工具、USB-Jlink (跳帽恢复到normal operation以及device mode)


3.25.png

6、连接 UART7 (TX:P613; RX:P614),波特率 115200。此路串口用于 RT-Thread 系统命令行交互。


3.26.png


7、下载程序到开发板,注意下载的是 HEX 文件。


查看运行结果

下载程序成功之后,系统会自动运行并打印系统信息。 连接开发板对应串口到 PC ,在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息。输入 help命令可查看系统中支持的命令。

板载LED3会以1Hz频率闪烁


打开示波器

7.png

板载reset, 查看相关内置信息

8.png

打印结果如下



\ | /
- RT -     Thread Operating System
 / | \     4.1.0 build Jan 18 2022 18:48:37
 2006 - 2021 Copyright by rt-thread team
Hello RT-Thread!
msh >
RT-Thread shell commands:
icu_sample       - icu sample
list             - list all commands in system
list_device      - list device in system
list_timer       - list timer in system
list_msgqueue    - list message queue in system
list_mailbox     - list mail box in system
list_mutex       - list mutex in system
list_event       - list event in system
list_sem         - list semaphore in system
list_thread      - list thread
version          - show RT - Thread version information
clear            - clear the terminal screen
hello            - say hello world
free             - Show the memory usage in the system.
ps               - List threads in the system.
help             - RT - Thread shell help.
reboot           - Reboot System
msh >


8、应用入口函数


应用层的入口函数在 bsp\ra6m4-cpk\src\hal_emtry.c 中 的 void hal_entry(void) 。用户编写的源文件可直接放在 src 目录下。

void hal_entry(void)
{
    rt_kprintf("\nHello RT-Thread!\n");    while (1)
    {
        rt_pin_write(LED3_PIN, PIN_HIGH);
        rt_thread_mdelay(500);
        rt_pin_write(LED3_PIN, PIN_LOW);
        rt_thread_mdelay(500);
    }
}


main.c 在项目文件夹地re_ge下

9.png

/* generated main source file - do not edit */
#include "hal_data.h"
            int main(void) {
              hal_entry();
              return 0;
            }


目录
相关文章
|
消息中间件 微服务
MQTT X连接阿里云微服务消息队列MQTT
MQTT X 是 EMQ 开源的一款优雅的跨平台 MQTT 5.0 桌面客户端,它支持 macOS, Linux, Windows。MQTT X 的 UI 采用了聊天界面形式,简化了页面操作逻辑,用户可以快速创建连接,允许保存多个客户端,方便用户快速测试 MQTT/MQTTS 连接,及 MQTT 消息的订阅和发布。本文演示如何使用该工具快速连接阿里云微服务消息队列MQTT,并进行消息的发布和订阅测试。
4491 0
MQTT X连接阿里云微服务消息队列MQTT
|
7月前
|
人工智能 负载均衡 数据可视化
阿里云出手了,DeepSeek服务器拒绝繁忙,免费部署DeepSeek模型671B满血版
阿里云推出免费部署DeepSeek模型671B满血版服务,通过百炼大模型平台,用户无需编码,最快5分钟、最低0元即可完成部署。平台提供100万免费Token,支持DeepSeek-R1和DeepSeek-V3等多款模型调用,有效解决服务器繁忙问题。新手零基础也能轻松上手,享受高效稳定的API调用和自动弹性扩展功能。教程涵盖开通服务、获取API-KEY及配置Chatbox客户端等步骤,详细指引助您快速实现DeepSeek自由。
471 18
|
12月前
|
消息中间件 NoSQL Java
设计了简单高效的弹幕系统!老板直接加薪
先赞后看,南哥助你Java进阶一大半系统最早起源于日本,流行于视频网站。我们认识的初音未来(Hatsune Miku)就是在niconico平台上爆红的!!我是南哥,一个Java学习与进阶的领路人,相信对你通关面试、拿下Offer进入心心念念的公司有所帮助。
196 3
设计了简单高效的弹幕系统!老板直接加薪
|
11月前
|
数据采集 人工智能 自然语言处理
隐私保卫战全面打响!大模型私有化技术:让企业数据穿上隐形斗篷,效能飙升新高度
【10月更文挑战第17天】近年来,大型语言模型在各行业智能化转型中发挥了重要作用,但数据安全和隐私保护成为重要挑战。私有化大模型通过将模型部署在企业内部,实现数据本地化处理和定制化应用,既防止数据泄露,又提升模型精准度和效率。例如,耸智科技提供的私有化解决方案,帮助企业构建基于专用数据的垂直大模型,确保数据安全并实现个性化调优。私有化大模型不仅提高了数据安全性,还在效能上显著提升,为企业智能化发展提供新机遇。
214 2
|
9月前
|
机器学习/深度学习 人工智能 算法
深入解析图神经网络:Graph Transformer的算法基础与工程实践
Graph Transformer是一种结合了Transformer自注意力机制与图神经网络(GNNs)特点的神经网络模型,专为处理图结构数据而设计。它通过改进的数据表示方法、自注意力机制、拉普拉斯位置编码、消息传递与聚合机制等核心技术,实现了对图中节点间关系信息的高效处理及长程依赖关系的捕捉,显著提升了图相关任务的性能。本文详细解析了Graph Transformer的技术原理、实现细节及应用场景,并通过图书推荐系统的实例,展示了其在实际问题解决中的强大能力。
1061 30
|
机器学习/深度学习 人工智能 算法
【悬念揭秘】ML.NET:那片未被探索的机器学习宝藏,如何让普通开发者一夜变身AI高手?——从零开始,揭秘构建智能应用的神秘旅程!
【8月更文挑战第28天】ML.NET 是微软推出的一款开源机器学习框架,专为希望在本地应用中嵌入智能功能的 .NET 开发者设计。无需深厚的数据科学背景,即可实现预测分析、推荐系统和图像识别等功能。它支持多种数据源,提供丰富的预处理工具和多样化的机器学习算法,简化了数据处理和模型训练流程。
262 1
|
存储 安全 Android开发
Android 动态权限请求的设计与实现
【4月更文挑战第6天】在现代安卓应用开发中,用户隐私和安全性日益受到重视。因此,操作系统引入了动态权限请求机制,要求应用在运行时请求特定权限而非安装时一次性获取所有权限。本文将详细探讨Android动态权限请求的关键概念、设计原则以及实现过程,旨在帮助开发者构建更加安全且用户体验友好的应用。通过深入分析Android系统权限模型及其演变,我们将展示如何在实际项目中有效地实施动态权限请求,并处理可能遇到的挑战。
288 0
|
监控 Shell
生产环境Shell脚本Ping监控主机是否存活(多种方法)
生产环境Shell脚本Ping监控主机是否存活(多种方法)
|
安全 Linux 调度
倚天虚拟化:CPU虚拟化原理介绍
虚拟化技术中最关键的技术之一就是CPU虚拟化。在没有硬件辅助虚拟化技术出来之前,通常都是通过TCG(软件进行指令翻译)的方式实现CPU虚拟化。但是由于TCG方式的虚拟化层开销太大,性能太差,因此引入了硬件辅助虚拟化技术。
1828 1
|
JavaScript
vue将日期数据转换成字符串
vue将日期数据转换成字符串
361 0