【瑞萨RA系列FSP库开发】RASC+Keil的环境搭建

文章目录

  • 一、获取资源包
  • 二、安装 Keil 软件、RA 芯片包和 RASC
  • 三、RASC 集成到 Keil
  • 四、使用 RASC 生成 Keil 工程
  • 五、通过 Keil 打开 RASC 的 FSP 配置器界面
  • 六、配置和编译 Keil 工程
  • 七、使用调试器下载程序


本节将介绍如何在Keil上开发瑞萨RA MCU (如需了解 e2 studio 开发环境,请私信联系)

一、获取资源包

Keil(MDK-ARM) 的下载页面为:https://www.keil.com/download/product/

使用 Keil 软件开发瑞萨 RA MCU 还需要 RA 芯片包以及 RASC 软件
Renesas Advanced Smart Configurator (RASC) 的下载页面为:https://github.com/renesas/fsp/releases

在该页面下可以找到 RASC 的安装程序,还有 RA 芯片包。

  • “setup_fsp_v4_0_0_rasc_v2022-07.exe”,其文件名表示安装程序包含的 FSP 库版本为 v4.0.0、RASC 版本为 v2022-07。
  • “MDK_Device_Packs_v4.0.0.zip”该压缩包解压之后得到文件“Renesas.RA_DFP.4.0.0.pack”,即对应 FSP 4.0.0 版本的 RA 芯片包(适用于 Keil 软件)。

注意:建议下载 Keil v5.30 以上的版本,因为版本过低可能导致后续的步骤提示“无法安装RA 芯片包”的错误。若安装 RA 芯片包时遇到此错误提示安装失败,请尝试重新安装较新版本的 Keil 软件之后再重新安装 RA 芯片包。

二、安装 Keil 软件、RA 芯片包和 RASC

Keil 软件和 RA 芯片包的安装只需双击它们的安装包然后根据提示进行安装即可,请自行无脑安装。需要注意的是,需要先安装好 Keil 软件,然后再安装 RA 芯片包,因为这里的“芯片包”是作为 Keil 软件的一种组件而存在的。

RASC 的安装步骤如下。
①首先双击 RASC 安装包,并且等待安装程序准备完成后,会弹出一个安装界面,如下图所示。
在这里插入图片描述

②继续单击“Next”,得到如下图所示的界面。然后勾上“I accept the terms of the Software Agreements”之后,单击“Install”即可开始安装。
在这里插入图片描述

③在 RASC 软件安装完成之后,会弹出如下界面,最后点“OK”即可完成安装。
在这里插入图片描述

三、RASC 集成到 Keil

将 RASC 集成到 Keil 的具体步骤如下。
①首先打开 Keil 软件,在菜单栏依次点击:“Tools”→“Customize Tools Menu”。
在这里插入图片描述

② 将弹出如下图所示的定制工具菜单的界面。
在这里插入图片描述
③ 在“Menu Content”窗口中新建一个菜单项“RA Smart Configurator”,然后在“Command”一栏中输入 RASC 程序的路径,在“Initial Folder”一栏中输入 “$P”,在“Arguments”一栏中输入:

--device $D --compiler ARMv6 configuration.xml

在这里插入图片描述
④ 同理,在“Menu Content”窗口中再次新建一个菜单项 “Device Partition Manager”,然后在“Command”一栏中输入 RASC 程序的路径,在“Initial Folder”一栏中输入“$P”,在“Arguments”一栏中输入:

-application com.renesas.cdt.ddsc.dpm.ui.dpmapplication configuration.xml

⑤ 最后再点击“OK”即可。
在这里插入图片描述
⑥ 再次点开 Keil 软件菜单栏的“Tools”,我们可以看到“RA Smart Configurator”和“Device Partition Manager”这两个菜单项已经被加入到 Tools 栏上面了。
在这里插入图片描述

四、使用 RASC 生成 Keil 工程

1. 选择工作空间目录
手动新建一个名为“Workspace_Keil”的文件夹,并将该文件夹作为我们的工作空间,我们的所有 Keil 工程都会放在这个文件夹里面。值得注意的是:为了避免编译错误,该工作空间文件夹必须放在全英文的路径下,不能包含有中文字符。

2. 新建一个工程
使用 RASC 软件新建一个工程的操作步骤与使用 e2 studio 新建工程的步骤是类似的,而在最后一步中,我们要直接借助 RASC 来自动生成一个 Keil 工程。因此,我们新建一个用于 RA MCU开发的 Keil 工程并不是通过 Keil 软件来进行,而是通过 RASC 软件。

① 首先打开 RASC 软件,接着在菜单栏依次点击 “File”→“New”→“FSP Project” ,开始新建一个工程。如下图所示。
在这里插入图片描述
② 然后会弹出如下的默认界面。
在这里插入图片描述
③ 取消勾选“Use default location”,然后将上图中的 Keil 工程名字(Project name)改为统一的名字:EBF_RA6M5,将 Keil 工程的位置路径(Location)设置为:“{工作空间路径}/06_Template”,如下图所示。下图中的“Workspace_Keil”为工作空间文件夹,该文件夹下面将存放多个 Keil 工程。“06_Template”为 Keil 工程文件夹,其命名表示的是“对应工程模板”的意思。
在这里插入图片描述

警告: 注意:为了避免编译错误,Keil 工程所在位置的绝对路径必须是全英文路径,不能包含有中文字符。

④ 接下来点击“Next”进入下一步,到工程选项界面,如下图所示。与使用 e2s 新建工程时的一样,我们需要在这里选择 FSP 库版本、板子型号、设备(MCU)型号、编程语言、编译器等。这里的不同之处主要在于需要额外选择 IDE 类型(Keil、IAR 等),并且不需要选择调试器,因为调试器是在 IDE 里面进行选择和配置的。
在这里插入图片描述
⑤ 按照下面的方式更改上图中的配置:
• FSP Version 那一栏那里的 FSP 库版本选择 “4.0.0”。一般来说选择最新的版本即可。
• 板子型号选择 “Custom User Board (Any Device)”,即用户自定制的板子。因为软件不知道我们的板子用的是什么芯片,所以后面有一个小括号括起来的“Any Device”提示字样。
• Device 一栏,我们要点开“…”按钮,在弹出的界面中选择我们板子上所用的芯片型号,然后点击“确定”即可。
– 对于野火启明 6M5 开发板,选到“RA6M5”列表下的这个型号“R7FA6M5BH3CFC”;
– 对于野火启明 4M2 开发板,选到“RA4M2”列表下的这个型号“R7FA4M2AD3CFP”;
– 对于野火启明 2L1 开发板,选到“RA2L1”列表下的这个型号 “R7FA2L1AB3CFP”。
• 编程语言:我们默认选择 C 语言。
• 在下方的“IDE Project Type”栏里选择“Keil MDK Version 5”。
• 在下方的“Toolchains”栏里选择工具链“ARM Compiler 6”,这个是 Keil 自带的 ARM 官方编译器。

更改完成后的配置如下图所示。然后点击“Next”下一步。
在这里插入图片描述
⑥ 这里默认选择 “Flat (Non-TrustZone) Project”即可。点击“下一步”。
在这里插入图片描述
⑦ 默认选择 “No RTOS”即可,然后点“下一步”。如果需要用到 RTOS,可以在“RTOS Selection”下拉列表里面选择 RTOS。对于初学者来说,RTOS 的内容比较难学一点,因此我们暂时不使用RTOS。
在这里插入图片描述
⑧ 默认选择 “Bare Metal - Minial”即可,然后点“下一步”
在这里插入图片描述
⑨ 接着就会显示如下的界面,新工程这就新建完成了,将该界面关掉即可。
在这里插入图片描述
⑩ 我们可以在“{工作空间路径}/06_Template”目录下面看到 RASC 已经为我们自动地生成了一个Keil 工程。如下图所示。
在这里插入图片描述

五、通过 Keil 打开 RASC 的 FSP 配置器界面

① 双击 Keil 工程文件 “EBF_RA6M5.uvprojx”,打开该 Keil 工程。
然后在菜单栏依次点击“Tools”→“RA Smart Configurator”,即可打开与该 Keil 工程相关联的RASC 软件 FSP 配置界面。
在这里插入图片描述
② 打开的 FSP 配置页面如下图所示。接着单击右上角的 “Generate Project Content”,软件会根据工程现有的 FSP 配置来自动生成 FSP 库代码。
在这里插入图片描述

六、配置和编译 Keil 工程

1. 配置 Keil

需要注意的是,在使用 RASC 生成一个新的 Keil 工程之后,如果直接编译和下载程序,虽然能编译通过,但是程序下载这一步是会报错的。因为 RASC 自动生成的这个 Keil 工程默认情况下并没有配置好一些必需的工程选项。

这里有一个小技巧,能让我们免去配置各个工程选项的烦恼,即:需要在选择芯片型号那里切换到其他芯片型号再切换回来,这样可以让 Keil 软件自动按默认方式配置工程,重新编译之后即可成功下载程序。

如图所示,具体步骤如下:
• ①:单击该工程选项配置按钮。
• ②:点击最左边的“Device”页面。在这个页面可以切换芯片型号。
• ③:在这里首先点到其他一个芯片型号上,然后再点回启明 6M5 开发板所用的芯片型
号:“R7FA6M5BH3CFC”,这样可以让软件自动配置一些关键的工程选项。启明 4M2 和启明 2L1 开发板也类似。
• ④:最后点击“OK”按钮即可。

在这里插入图片描述
添加工程的头文件包含路径:
需要注意,我们在这里需要添加一下头文件包含路径:”./src”,因为在后面编写驱动程序的时候,我们会把所有的驱动代码文件都放到工程根目录的 src 文件夹下面。
添加方法如下。首先打开工程选项配置窗口,并切换到“C/C++ (AC6)”页面,可以看到其中有一栏“Include Paths”,目前为空。我们要做的就是在“Include Paths”当中添加一条头文件包含的相对路径“./src”。

① 点右边的“…”按钮。
在这里插入图片描述
② 然后点“New”按钮,新建一条头文件包含路径。
在这里插入图片描述
③ 加入“./src”路径,然后一路点击确定即可。路径“./src”或者“.\src”表示的是相对于 Keil 工程根目录的相对路径。
在这里插入图片描述

2. 编译工程

单击编译按钮即可对该工程进行编译。右边“LOAD”按钮为下载程序按钮。如下图所示。
在这里插入图片描述
在成功编译工程之后的下一步是调试程序或者下载程序,但是这需要正确配置调试器后才能进行,否者会弹出提示错误信息的窗口。

七、使用调试器下载程序

1. DAP 仿真器简介

野火的 DAP 仿真器遵循 ARM 公司的 CMSIS-DAP 标准,支持所有基于 Cortex 内核的单片机,常见的 M3、M4 和 M7 都可以完美支持,M23、M33 也可支持。

野火的 DAP 仿真器支持下载和在线仿真程序,支持 Windows 操作系统,不需要安装驱动(免驱)即可使用,支持 KEIL 和 IAR 直接下载,非常方便。

2. 硬件连接
用 USB 线连接仿真器到电脑,如果仿真器的灯亮则表示正常,可以使用。然后把仿真器的另外一端连接到开发板,给开发板上电,然后就可以通过软件 KEIL 或者 IAR 给开发板下载程序。仿真器与电脑和开发板连接方式如下图所示:
在这里插入图片描述
3. 仿真器配置
① 在仿真器连接好电脑和开发板且开发板供电正常的情况下,打开编译软件 KEIL,在 KEIL 菜单栏下面的工具栏的魔术棒选项卡里面选择仿真器的型号,具体过程如下。
Debug 页面下选择使用 CMSIS-DAP Debugger:
在这里插入图片描述
② Utilities 页面下勾上选择 Use Debug Driver:
在这里插入图片描述
③ Debug Settings 选项配置如下,只要识别到芯片即可,其它选项可以按照默认配置,无需修改。
在这里插入图片描述
注:此页面保持原本的默认设置即可,不必按上图所示进行配置。

4. 下载程序
如果前面步骤都成功了,接下来就可以把编译好的程序下载到开发板上运行。下载程序不需要其他额外的软件,直接点击 Keil 中的“LOAD”按钮即可。
在这里插入图片描述
程序下载后,Keil 软件下方 Build Output 选项卡如果打印出“Programming Done.”则表示程序下载成功。此时的程序只是成功下载进 Flash 了,并没有自动运行,可按板子上复位键来复位运行程序。
在这里插入图片描述
如果在 Debug Settings → Flash Download 配置下勾选了“Reset and Run”,则会多出一行“Application running …”的提示。此时程序已在下载完成后自动运行。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/20865.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

百汇BCR:十个外汇交易常见问题解析

外汇交易是一种受到市场欢迎的投资方式,参与交易很容易,但想要盈利却很难。特别是一些细节问题容易被忽略,百汇BCR小编整理了十个外汇交易常见问题供有需要的投资者借鉴学习。 问题一、外汇开户需要哪些资料? 个人相关信息资料、…

20 KVM管理虚拟机-虚拟机生命周期示例

文章目录 20 KVM管理虚拟机-虚拟机生命周期示例20.1 创建虚拟机20.2 启动虚拟机20.3 重启虚拟机20.4 关闭虚拟机20.5 销毁虚拟机 20 KVM管理虚拟机-虚拟机生命周期示例 本节给出虚拟机生命周期管理相关命令的示例。 20.1 创建虚拟机 虚拟机XML配置文件为openEulerVM.xml # …

Windows批处理指令

前言 批处理文件(batch file)包含一系列 DOS 命令,通常用于自动执行重复性任务。用户只需双击批处理文件便可执行任务,而无需重复输入相同指令。编写批处理文件非常简单,但难点在于确保一切按顺序执行。编写严谨的批处…

使用mkdocs快速部署上线静态站点到Github

背景 mkdocs是一种方便地生成站点的工具,相比hugo、hexo等个人博客而言,mkdocs更加简便、轻量级,可以快速帮助部署上线类似个人技术本(notebook,wiki)之类的站点。并且支持默认支持站点内搜索,…

基于SSM的网上宠物店

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

网络基础进阶

1、交换机接口类型 Console口:也称为:串口接口,一般用于与PC连接,用于配置和监控交换机。百兆以太网接口:用于连接计算机和交换机之间的通信。Console到的网络接口:俗称交叉串口,是用于连接交换…

微信小程序xr-frame实现多光源效果

1.基础知识: 灯光 灯光组件Light用于给场景提供照明,也是阴影的核心。相机组件一般被代理到灯光元素XRLight中使用,其派生自XRNode,对应在xml中的标签为xr-light。 主光源以及参数 类型uniforms宏说明书写环境光颜色和亮度u_a…

2023年门店管理系统如何选?简单好用的门店管理系统有哪些?

开单收银效率低、商品管理混乱、记账对账耗时耗力还易出错...... 是我们在进行门店管理过程中常见的问题。 为了改善门店管理遇到的这几大问题,提高门店管理效率,越来越多的门店开始使用门店管理系统。 但如何选择简单实用、性价比高的门店管理系统&…

template和component自定义组件之间的区别

在小程序中自定义组件 component 方式和组件模板 template 2种方式实现页面组件化。 一、component自定义组件 1.概念 自定义组件是指可以被多个页面使用的组件,可以在小程序中多次复用。在开发中可以将一个页面中的代码和样式抽象出来,然后创建一个自定…

springboot缓存

1. 认识缓存 一级缓存 - 缓存是一种介于数据永久存储介质与数据应用之间的数据临时存储介质 - 使用缓存可以有效的减少低速数据读取过程的次数,提高系统性能 Service public class BookServiceImplCache implements BookService {Autowiredprivate BookDao book…

Java | 一分钟掌握定时任务 | 3 - 单机定时之Timer

作者:Mars酱 声明:本文章由Mars酱原创,部分内容来源于网络,如有疑问请联系本人。 转载:欢迎转载,转载前先请联系我! 介绍 这个是个JDK远古时代的api了,据考证,可以追溯到…

(2)数码管

LED数码管:数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成"8"字器件 51单片机是共阴极连接 74HC245这个芯片有什么作用呢?解:这个芯片被称之为双向数据缓冲器这个芯片的作用,用来进行数据缓冲(提高驱…

如何在 Python 开发环境中调用 ChatGPT 模型?

本文将演示在本地的 python 项目中调用 ChatGPT 模型 前言 作为一名程序员,在开发过程当中时常需要使用 ChatGPT 来完成一些任务,但总是使用网页交互模式去 Web 端访问 ChatGPT 是很麻烦的,这时候我们可以使用代码来调用 ChatGPT 模型&…

RHCSA之查看命令帮助手册

目录 RHCSA之查看命令帮助手册 查看命令类型 --- type Linux中对应的命令类型 帮助命令 help 命令 用法1 help 内部命令 用法2 命令 --help 命令的部分语法符号解析 man 命令 man命令用法 man的帮助级 man 命令帮助信息界面中的常用操作 man命令中帮助信息的结构以及意义…

公司招了一个腾讯拿30K的人,让我见识到了什么是天花板···

前言 人人都有大厂梦,对于软件测试人员来说,BAT 为首的一线互联网公司肯定是自己的心仪对象,毕竟能到这些大厂工作,不仅薪资高待遇好,而且能力技术都能够得到提升,最关键的是还能够给自己镀上一层金&#…

NXP公司LPC21xx+热敏电阻实现温度检测

LPC2131/32/34/36/38微控制器基于16位/32位Arm7TDMI-S™CPU,支持实时仿真和嵌入式跟踪,具有尺寸小,功耗低,多个32位定时器、单/双10位8通道ADC、10位DAC、PWM通道、47个GPIO线(它们拥有多达9个边沿或电平触发的外部中断…

保密+完整+可用+安全,规避代码安全「马奇诺防线」,构建软件供应链整体安全

近日,在「江狐会」广州站上,极狐(GitLab) 高级解决方案架构师武让分享了如何通过三大阶段 四大要点,规避代码安全「马奇诺防线」,真正确保软件供应链安全。以下内容整理自本次演讲。Enjoy~ 先跟大家分享一个故事 一战…

Cplex的数据类型结构及基本语法功能

本序列将会重开一门新的序列----数学求解器cplex,文章不做简单介绍,不灌水,直接给大家进行讲述如何上手实操,并有针对性的给出相应案例分析。 OPL编程 OPL是ILOG团队为运筹学专家量身定制的一种优化建模语言,语法相对简单&#x…

ChatGPT国内免费使用方法有哪些?

目录 ChatGPT介绍:一、ChatGPT是什么?二、ChatGPT发展:三、ChatGPT 优点:四、国内使用ChatGPT方法五、结语: ChatGPT介绍: 一、ChatGPT是什么? ChatGPT 是一个基于语言模型 GPT-3.5 的聊天机器人,ChatGPT模型是Instruct GPT的姊妹模型(siblingmodel&a…

【5.15】一、软件测试基础—软件概述

目录 1.1 软件概述 1.1.1 软件生命周期 1.1.2 软件开发模型 1.1.3 软件质量概述 1.1 软件概述 软件是相对于硬件而言的,它是一系列按照特定顺序组织的计算机数据和指令的集合。 软件的生命周期:软件从“出生” 到 “消亡” 的过程。 1.1.1 软件生…