【致敬未来的攻城狮计划】RA2E1环境搭建点亮发光二极管

news2024/11/25 8:19:36

开启攻城狮的成长之旅!这是我参与的由 CSDN博客专家 架构师李肯和 瑞萨MCU (瑞萨电子 (Renesas Electronics Corporation) ) 联合发起的「 致敬未来的攻城狮计划 」的第 2 天,点击查看活动计划详情 !

开发环境搭建

开发环境可以选择Keil或者e2-studio。e2-studio是瑞萨官方提供的基于eclipse的IDE(电脑上已经装了n个eclipse了(-_-))。

Keil环境

首先明确两个概念RASC和FSP。

RASC:

RA Smart Confifigurator(简称为 RASC)是一款桌面应用程序,可为用户提供与集成到 e2 studio中的 Smart Confifigurator 相同的功能。借助 RASC,使用第三方工具链和 IDE (比如 Keil、IAR、GCC)的开发人员可以像 e2 studio 的用户一样,以相同的方式访问软件系(BSP、HAL 驱动程序、中间件、RTOS)的项目设置和图形化配置、引脚分配和时钟设置等。

类比STM32CubeMX。

FSP:

FSP(Flexible Software Package)灵活配置软件包,这是一个用于支持瑞萨 MCU 开发的固件库。通过使用 FSP 库,我们可以轻松配置和管理瑞萨 MCU,从而轻松实现复杂的应用程序。

FSP包括以下主要功能和组件:

  1. 丰富的设备驱动程序:FSP提供了丰富的设备驱动程序,包括时钟、GPIO、UART、SPI、I2C、ADC、DAC等常用的外设驱动程序,使得开发人员可以更加方便地使用这些外设功能。
  2. 库函数和API接口:FSP提供了大量的库函数和API接口,使得开发人员可以更加轻松地实现复杂的应用程序功能,包括通信协议、数据处理、算法等。
  3. 开发工具集成:FSP支持集成多种开发工具,包括e2 studio、IAR、Keil等,使得开发人员可以在自己熟悉的开发环境中使用FSP进行开发。
  4. 软件升级和管理:FSP支持在线更新和管理,可以方便地更新和升级软件组件,同时也可以方便地管理已安装的软件组件。

类比STM32的HAL库

主要有三步:

  • RA SC(RA Smart Configurator)(RASA安装包:https://www2.renesas.cn/cn/en/software-tool/ra-smart-configurator)

  • 瑞萨的MDK软件支持包级瑞萨的FSP库

  • 将RASC 集成到 Keil

参考:【致敬未来的攻城狮计划】–RA2E1 开发板测评(2)LED闪烁_瑞萨开发板_风正豪的博客-CSDN博客

e2-studio

e2 studio是瑞萨电子推出的一款基于Eclipse的集成开发环境(IDE),主要用于开发基于瑞萨微控制器(MCU)的应用程序。它提供了丰富的开发工具和组件,使得开发人员可以更加轻松地开发、调试和部署应用程序。

e2 studio具有以下主要功能和特点:

  1. 具备基于Eclipse的IDE的开发工具:e2 studio是基于Eclipse的IDE,可以与多种开发工具集成,如GCC,IAR等,也支持多种MCU设备的开发和调试。
  2. 提供开发和调试工具:e2 studio集成了调试器、烧录器、仿真器等开发和调试工具,可以支持MCU芯片的在线调试和烧录。
  3. 提供丰富的MCU开发组件和应用程序样例:e2 studio提供了多种MCU开发组件和应用程序样例,包括外设驱动程序、协议栈、算法库等,可以大大缩短开发时间。
  4. 支持跨平台开发:e2 studio支持Windows、Linux和Mac OS等操作系统,使得开发人员可以在自己熟悉的平台上进行开发。

参考:【致敬未来的攻城狮计划】— 连续打卡第四天:e2 studio 使用教程_嵌入式up的博客-CSDN博客

点灯

程序下载

在Keil中只需要像往常一样编译下载即可。

目前在 e2 studio 软件上进行开发只能使用 J-Link 调试程序。如果需要用 J-Link 下载程序,那么需要使用额外的 J-Flash Lite 软件来烧录 Hex 文件。幸好板子自带jtag,只需要用里面带的数据线即可使用jtag进行仿真。

不过使用e2studio中的调试功能也可以将程序下载到flash中。

还可以通过瑞萨提供的下载工具下载生成的hex文件

首先先建个Project

image-20230417222538484

image-20230417222052802

然后将生成的hex文件放到里面即可下载到flash

点亮两颗发光二极管

RA2E1开发板板载红蓝两颗LED

src是存放用户代码的地方,使用RA SC重新配置工程后里面的文件不会被覆盖,而其他文件夹下的文件则会被覆盖

image-20230417222739505

在src文件夹下新建led.c/.h两个文件

led.h

/*
 * led.h
 *
 *  Created on: 2023年4月17日
 *      Author: zmake
 */

#ifndef LED_H_
#define LED_H_

#include "hal_data.h"

void led_entry(void);

#endif /* LED_H_ */

其中hal_data.h是当使用fsp库时所需要的包含的头文件,类比stm32fnxx_hal.h

led.c

/*
 * led.c
 *
 *  Created on: 2023年4月17日
 *      Author: zmake
 */
#include "led.h"


void led_entry()
{
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_05_PIN_01, BSP_IO_LEVEL_HIGH);
    R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS);
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_05_PIN_01, BSP_IO_LEVEL_LOW);
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_05_PIN_02, BSP_IO_LEVEL_HIGH);
    R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS);
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_05_PIN_02, BSP_IO_LEVEL_LOW);
}

R_IOPORT_PinWrite函数是fsp库中的写io口函数,可以在e2studio提供的Developer Assitance中查看,比较方便的是可以直接将函数拖到代码中,复制都不用复制。

image-20230417223321681

最后调试一下程序,将程序加载到flash中

最后展示一下效果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eDROBrxF-1681742773409)(https://zhangguosheng.oss-cn-beijing.aliyuncs.com/%E7%82%B9%E7%81%AF.gif)]

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

React styled-components(三)—— 高级特性

styled-components 高级特性样式继承嵌套设置主题样式继承 新建 Demo.js 文件: import React, { Component } from react import styled from styled-components;const CustomStyle styled.divp { color: red;} const ContextBox styled(CustomStyle)width:…

Tableau-创建环状图:使用2个饼图

步骤 1:创建饼图 在“标记”下面,选择“饼图”标记类型。将分类拖到颜色。将任务总数拖到角度。再拖动一次任务总数,放到标签。根据需要调整饼图大小。 步骤 2:切换到双轴图表 右键点击任意一个字段,创建-->计算…

3年功能测试无情被裁,3个月学习自动化测试重新开始........

前言 不知不觉在软件测试行业工作了3年之久,虽然说我是主做的功能测试,但是我也一直是兢兢业业的呀,不曾想去年7月份无情被辞的消息让我感到一阵沉重。我曾经一直坚信自己的技能和经验足以支撑我在这个领域的未来,但现实却告诉我&…

考研数据结构——表达式的转换用栈实现表达式的概述

一、用表达式实现中缀表达式转后缀表达式 把括号里的符号移到括号外 二、用栈实现中缀表达式转后缀表达式 1、遇到字母写下来 2、遇到符号加入栈中 3、遇到成对括号才出栈 4、当前读取运算符要小于等于栈顶运算符优先级则出栈 从左向右扫描 三、表达式方法实现中缀表达式转…

Shader Graph9-世界空间、物体空间、相机空间、切线空间

一、World Space世界空间 在下用的Blender软件,新建了一个平面,中间的黄色小圆点表示的世界空间的原点,在世界空间的物体的位置,都是相对于这个原点来说的,红色箭头表示x轴,绿色箭头表示y轴,蓝…

算法 二叉树2 || 层序遍历 226.翻转二叉树 101. 对称二叉树 104.二叉树的最大深度 111 二叉树的最小深度 222.完全二叉树的节点个数

102 二叉树的层序遍历 队列先进先出,符合一层一层遍历的逻辑,而用栈先进后出适合模拟深度优先遍历也就是递归的逻辑。 而这种层序遍历方式就是图论中的广度优先遍历,只不过我们应用在二叉树上。 迭代法: /*** Definition for …

springboot和vue写个小项目

遵循“约定优于配置”的原则,只需要很少的配置或使用默认的配置。 能够使用内嵌的Tomcat、Jetty服务器,不需要部署war文件。 提供定制化的启动器Starters,简化Maveni配置,开箱即用。 纯)java配置,没有代码生成&#xf…

4月11日,每天30秒,昨夜今晨一览无余/我国首条“西氢东送”管道纳入国家规划/国际机构:中国经济蓬勃复苏,展现广阔投资

-> 昨天的世界(点击进入) <- http://mp.weixin.qq.com/s?__bizMzU4MzQ4Mzk0Nw&mid2247488724&idx1&snd19817d3c7fd9aeb521052090eb439e0&chksmfda90390cade8a864965c805b86acd253f5d74368ae8767b7f00b80d4af5bcc42feef7635641&scene21#wechat_redir…

Qt扫盲-Qt图表类综述

Qt支持图表类综述一、概述二、图表类型1. 折线图和柱状图2. 面积图和散点图3. 柱状图4. 饼图5. 盒须图6. 烛台图表7. 星座图图表三、坐标轴 Axes四、图例五、与图表交互1. 动态绘制数据2. 深入数据3. 缩放和滚动4. 鼠标悬停六、主题一、概述 Qt Charts支持创建时尚的、交互式的…

Jetpack Compose之对话框和进度条

概述 对话框和进度条其实并无多大联系&#xff0c;放在一起写是因为两者的内容都不多&#xff0c;所以凑到一起&#xff0c;对话框是我们平时开发使用得比较多的组件&#xff0c;像隐私授权&#xff0c;用户点击删除时给用户提示这是一个危险操作等&#xff0c;进度条的使用频…

一文吃透Elasticsearch

本文已经收录到Github仓库&#xff0c;该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点&#xff0c;欢迎star~ Github地址 如果访问不了Github&#xff0c…

【自制】我造了一台 钢 铁 侠 的 机 械 臂 !【硬核】

有人说:一个人从1岁活到80岁很平凡,但如果从80岁倒着活,那么一半以上的人都可能不凡。 生活没有捷径,我们踩过的坑都成为了生活的经验,这些经验越早知道,你要走的弯路就会越少。

当我跑步时在想什么

最近好几个人对我说&#xff1a;你瘦了。这是非常激励人心的反馈&#xff0c;验证了跑步是有效的。只要今天开始锻炼&#xff0c;最胖的时候就算过去了&#xff0c;余生都会越来越美。前几天佛山50km徒步&#xff0c;带小朋友走了一半。下午有运动会&#xff0c;就没有走完了。…

提高职场效率,原来可以这么简单

身为职场人&#xff0c;你是否也有过类似的经历 看上去忙的很&#xff0c;手头东西又杂又多&#xff0c;但是一天过去了&#xff0c;到点下班发现啥都没做好当领导布置任务时&#xff0c;常常做了A后就忘记B&#xff0c;任务零碎不会安排做一件事情总是容易拖延&#xff0c;导致…

ROS开发之如何使用RPLidar A1二维激光雷达?

文章目录0.引言1.创建工作空间2.获取rplidar_ros包并编译3.检查雷达端口4.启动launch显示雷达扫描结果0.引言 笔者研究课题涉及多传感器融合&#xff0c;除了前期对ROS工具的学习&#xff0c;还需要用雷达获取数据&#xff0c;进行点云处理。虽然激光雷达已经应用很广泛&#x…

快速构建目标检测coco格式数据集

目标检测coco格式数据集coco数据集快速构建总结coco数据集 首先搞清楚coco格式数据集的组成。在data数据下、分为train、val以及annotations三个文件夹。&#xff08;image是我未划分训练集和测试集的图像存储文件夹&#xff09; 1.train文件夹&#xff1a;用来存放作为训练的图…

一个PostgreSql cli的工具

GitHub - xuejiazhi/pgii: pgii is a PostgreSql cli tool. PostgreSql is developed in CMD or Golang and can be compiled for multiple platforms pgii 是一个PostgreSql cli的工具,对PostgreSql 在CMD或者,采用Golang进行开发,可以多平台下面编译使用&#xff1a; 跨平台…

C/C++|物联网开发入门+项目实战|嵌入式C语言高级|C语言常用关键字及运算符操作-学习笔记(8)

文章目录2-2: C语言常用关键字及运算符操作关键字参考&#xff1a; 麦子学院-嵌入式C语言高级2-2: C语言常用关键字及运算符操作 [重点] 掌握C语言的常用关键宇及其应用场景&#xff0c;使用技巧 关键字 编译器&#xff1a;预先定义了一定意义的字符串&#xff0c;32个。 s…

RHCE3

综合练习&#xff1a;请给openlab搭建web网站 ​ 网站需求&#xff1a; ​ 1.基于域名[www.openlab.com](http://www.openlab.com)可以访问网站内容为 welcome to openlab!!! ​ 2.给该公司创建三个子界面分别显示学生信息&#xff0c;教学资料和缴费网站&#xff0c;基于[www.…

对Spring循环依赖的一些理解

什么是循环依赖 类A有个字段需要注入类B&#xff0c;类B有个字段需要注入类C&#xff0c;类C有个字段需要注入类A&#xff0c;它们之间的依赖关系形成了一个循环。 Spring初始化完一个对象之后会把实例放入单例池&#xff08;singletonObjects&#xff09;中&#xff0c;也就是…