当前位置: 首页 > news >正文

【瑞萨RA6M3】1. 基于 vscode 搭建开发环境

基于 vscode 搭建开发环境

  • 1. 准备
  • 2. 安装
    • 2.1. 安装瑞萨软件包
    • 2.2. 安装编译器
    • 2.3. 安装 cmake
    • 2.4. 安装 openocd
    • 2.5. 安装 ninja
    • 2.6. 安装 make
  • 3. 生成初始代码
  • 4. 修改 cmake 脚本
  • 5. 调试准备
  • 6. 仿真


1. 准备

需要瑞萨仓库中的两个软件:

  1. MDK_Device_Packs.zip
  2. setup_fsp_rasc.exe(RA Smart Configurator)

交叉编译工具链:

  1. gcc
  2. cmake

2. 安装

2.1. 安装瑞萨软件包

MDK_Device_Packs_v5.2.0.zip
setup_fsp_v5_2_0_rasc_v2024-01.1.exe

在这里插入图片描述

安装 setup_fsp_rasc.exe(RA Smart Configurator)
在这里插入图片描述

2.2. 安装编译器

Arm GNU Toolchain Downloads – Arm Developer
下载最新版本:arm-gnu-toolchain-13.2.rel1-mingw-w64-i686-arm-none-eabi.zip

下载后解压,把解压路径添加到环境变量。

在终端中执行指令,查看 gcc 的版本信息:

$ arm-none-eabi-gcc -v
Using built-in specs.
COLLECT_GCC=D:\Applications\Toolchain\arm-gnu-toolchain-13.2.Rel1-mingw-w64-i686-arm-none-eabi\bin\arm-none-eabi-gcc.exe
COLLECT_LTO_WRAPPER=D:/Applications/Toolchain/arm-gnu-toolchain-13.2.Rel1-mingw-w64-i686-arm-none-eabi/bin/../libexec/gcc/arm-none-eabi/13.2.1/lto-wrapper.exe
Target: arm-none-eabi
Configured with: /data/jenkins/workspace/GNU-toolchain/arm-13/src/gcc/configure --target=arm-none-eabi --prefix=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/install --with-gmp=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/host-tools --with-mpfr=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/host-tools --with-mpc=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/host-tools --with-isl=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/host-tools --disable-shared --disable-nls --disable-threads --disable-tls --enable-checking=release --enable-languages=c,c++,fortran --with-newlib --with-gnu-as --with-headers=yes --with-gnu-ld --with-native-system-header-dir=/include --with-sysroot=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/install/arm-none-eabi --with-multilib-list=aprofile,rmprofile --with-libiconv-prefix=/data/jenkins/workspace/GNU-toolchain/arm-13/build-mingw-arm-none-eabi/host-tools --host=i686-w64-mingw32 --with-pkgversion='Arm GNU Toolchain 13.2.rel1 (Build arm-13.7)' --with-bugurl=https://bugs.linaro.org/
Thread model: single
Supported LTO compression algorithms: zlib
gcc version 13.2.1 20231009 (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7))

2.3. 安装 cmake

https://cmake.org/download/
在这里插入图片描述

下载后解压,把解压路径添加到环境变量。

在终端中执行指令,查看 cmake 的版本信息:

$ cmake --version
cmake version 3.28.4CMake suite maintained and supported by Kitware (kitware.com/cmake).

2.4. 安装 openocd

https://github.com/openocd-org/openocd/releases

在这里插入图片描述

下载解压后,将解压路径添加到环境变量中。

在终端中执行指令,查看 openocd 的版本信息:

$ openocd --version
Open On-Chip Debugger 0.12.0 (2023-01-14-23:37)
Licensed under GNU GPL v2
For bug reports, readhttp://openocd.org/doc/doxygen/bugs.html

2.5. 安装 ninja

ninja 和 make 都是构建系统工具,它们通常作为后端,被 cmake 生成和使用,相比之下 ninja 具有更好的性能和更专注于构建速度。

https://github.com/ninja-build/ninja/releases

在这里插入图片描述

下载解压后,将解压路径添加到环境变量。

在终端中执行命令,查看 ninja 版本信息:

$ ninja --version
1.11.1

2.6. 安装 make

https://gnuwin32.sourceforge.net/packages/make.htm

在这里插入图片描述

下载安装后,需要将安装路径添加到环境变量中。

在终端中执行命令,查看 make 版本信息:

$ make --version
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.This program built for i386-pc-mingw32

3. 生成初始代码

打开 rasc(RA Smart Configurator)
在这里插入图片描述

在这里插入图片描述

RAFA6M3A H 3 C FB

  1. H:2MB
  2. FB:144引脚
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4. 修改 cmake 脚本

修改顶层 CMakeLists.txt
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

5. 调试准备

玩转 pyocd - 哈拎 - 博客园 (cnblogs.com)

$ pyocd list -tName                      Vendor                   Part Number                  Families   Source   
------------------------------------------------------------------------------------------------------air001                    AirM2M                   Air001                                  builtin  air32f103xb               AirM2M                   Air32F103xB                             builtin  air32f103xc               AirM2M                   Air32F103xC                             builtin  air32f103xe               AirM2M                   Air32F103xE                             builtin  air32f103xg               AirM2M          
$ pyocd pack -sVendor   Pack   Version  
---------------------------
$ pyocd pack find R7FA6M3AH
0000684 I No pack index present, downloading now... [pack_cmd]Part        Vendor    Pack             Version   Installed  
--------------------------------------------------------------R7FA6M3AH   Renesas   Renesas.RA_DFP   5.2.0     False
$ pyocd pack -i R7FA6M3AH
Downloading packs (press Control-C to cancel):Renesas.RA_DFP.5.2.0
Downloading descriptors (001/001)
$ pyocd pack -sVendor    Pack     Version  
------------------------------Renesas   RA_DFP   5.2.0
$ pyocd list -p#   Probe/Board                  Unique ID      Target  
----------------------------------------------------------0   XIVN1987 XV-Link CMSIS-DAP   5F95D4D86436   n/a
$ pyocd flash --target=R7FA6M3AH --erase=auto --frequency=1000000 ./build/FSP_Project.elf
0001841 I Loading D:\Workspace\other\ra\proj01\build\FSP_Project.elf [load_cmd]
[==================================================] 100%
0009190 I Erased chip, programmed 4992 bytes (39 pages), skipped 912 bytes (8 pages) at 0.79 kB/s [loader]

没尝试过:RT-Thread-使用标准PyOCD烧录RA6M3 HMI-BoardRT-Thread问答社区 - RT-Thread在这里插入图片描述

在这里插入图片描述

6. 仿真

F5
在这里插入图片描述

http://www.lryc.cn/news/332819.html

相关文章:

  • 使用pip install替代conda install将packet下载到anaconda虚拟环境
  • 【HTML】常用CSS属性
  • python中的print(f‘‘)具体用法
  • 《青少年成长管理2024》022 “成长七要素之三:文化”4/5
  • Linux(05) Debian 系统修改主机名
  • 之前翻硬币问题胡思乱想的完善
  • 前端与后端协同:实现Excel导入导出功能
  • Docker:探索容器化技术,重塑云计算时代应用交付与管理
  • 畅捷通T+ KeyInfoList.aspx SQL漏洞复现
  • 【面经】interrupt()、interrupted()和isInterrupted()的区别与使用
  • 了解这些技术:Flutter应用顺利登陆iOS平台的步骤与方法
  • 经济学 劳动市场 医疗经济学
  • vue + koa + Sequelize + 阿里云部署 + 宝塔:宝塔数据库连接
  • 华为昇腾认证考试内容有哪些
  • Spring Boot接收从前端传过来的数据常用方式以及处理的技巧
  • EFCore通用数据操作类
  • java Web 辅助学习管理系统idea开发mysql数据库web结构java编程计算机网页源码maven项目
  • 使用Python实现K近邻算法
  • Celery的任务流
  • 使用Arcpy进行数据批处理-批量裁剪
  • 【攻防世界】ics-05
  • VTK的交互器
  • ChatGPT(3.5版本)开放无需注册:算力背后的数据之战悄然打响
  • python项目练习——14.学生管理系统
  • 基于SpringBoot的公益慈善平台
  • Python网络爬虫(一):HTML/CSS/JavaScript介绍
  • 机器学习每周挑战——旅游景点数据分析
  • 开发语言漫谈-C语言
  • vue3导入excel并解析excel数据渲染到表格中,纯前端实现。
  • Java常用API之Encoders类解读