Renesas MCU之使用e² studio搭建开发环境

目录

概述

1 e² studio介绍

2 搭建Renesas MUC开发环境

2.1 软件版本信息

2.2 安装软件

3 创建工程

3.1 板卡硬件接口

 3.2 FSP配置IO

4 Generate Project

4.1 项目目录介绍

4.2 LED接口相关驱动

5 调试

5.1 测试代码

5.2 J-Link调试代码

5.3 硬件结构


概述

本文主要介绍搭建Renesas MCU开发环境的步骤和方法,包括从GITHUB上下载e² studio和FSP,还介绍了如何使用 e² studio创建一个工程,使用FSP配置MCU的资源,包括配置IO,使用J-Link调试代码等内容。

1 e² studio介绍

e² studio是一款基于Eclipse开发环境的集成开发工具(IDE),专门用于开发和调试嵌入式系统的软件。它提供了丰富的功能和工具,帮助开发人员快速构建和调试嵌入式应用程序。

e² studio支持多种嵌入式处理器和微控制器,包括Renesas的RX、RZ、RL78和RH850系列等。它提供了一套专业的开发工具,包括代码编辑器、编译器、调试器、模拟器和性能分析器等。开发人员可以使用e² studio创建、编辑和构建嵌入式应用程序,并通过集成的调试器进行调试、跟踪和优化。

e² studio还具有丰富的插件生态系统,开发人员可以根据自己的需求选择和安装各种插件,扩展其功能和能力。这些插件可以提供额外的功能,如版本控制、代码生成、自动化测试等。

总的来说,e² studio是一个强大而灵活的嵌入式开发工具,能够帮助开发人员轻松地构建、调试和优化嵌入式应用程序。无论是初学者还是有经验的开发人员,都可以从e² studio的功能和工具中受益。

2 搭建Renesas MUC开发环境

2.1 软件版本信息

安装软件时注意:FSP的版本信息必须要和e² studio一致

软性下载地址:

https://github.com/renesas/fsp/releases

笔者使用最新版本:V5.3.0

 需要下载的软件包如下:

2.2 安装软件

在github上完成下载后,就可以安装软件,安装软件时注意:

1)保证软件安装的路径为不包含汉字字符

2)FSP_PACK最好和fsp e2s在同一个文件夹内

 安装完成后就可以打开软件:

3 创建工程

创建一个项目,控制板卡上一个LED使其安装1HZ的频率跳转。

3.1 板卡硬件接口

MCU类型:

LED引脚接口

 3.2 FSP配置IO

1)选择MCU的类型

2)系统时钟配置

3)IO配置

 4)配置Debug端口

4 Generate Project

4.1 项目目录介绍

配置完成参数后,就可以生成项目

4.2 LED接口相关驱动

创建bsp_led.c和bsp_led.h文件,并将该文件加载到sr目录中,编写如下代码

bsp_led.h文件中的代码:

/** bsp_led.h**  Created on: 2024年5月31日*      Author: Administrator*/#ifndef BSP_LED_H_
#define BSP_LED_H_
#include "hal_data.h"/**   led -1 status* */
#define LED1_OFF    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_05, BSP_IO_LEVEL_LOW)
#define LED1_ON     R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_05, BSP_IO_LEVEL_HIGH)/**   led -2 status* */
#define LED2_OFF    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_LOW)
#define LED2_ON     R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_HIGH)/**   led -3 status* */
#define LED3_OFF    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_02, BSP_IO_LEVEL_LOW)
#define LED3_ON     R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_02, BSP_IO_LEVEL_HIGH)#define LED1_TOGGLE     R_PORT4->PODR ^= 1<<(BSP_IO_PORT_04_PIN_05 & 0xFF)
#define LED2_TOGGLE     R_PORT4->PODR ^= 1<<(BSP_IO_PORT_04_PIN_04 & 0xFF)
#define LED3_TOGGLE     R_PORT0->PODR ^= 1<<(BSP_IO_PORT_00_PIN_02 & 0xFF)void run_led( void );#endif /* BSP_LED_H_ */

bsp_led.c文件中的代码:

/** bsp_led.c**  Created on: 2024年5月31日*      Author: Administrator*/#include "bsp_led.h"void run_led( void )
{while(1){LED3_TOGGLE;R_BSP_SoftwareDelay(500, BSP_DELAY_UNITS_MILLISECONDS);}
}/* End of this file */

5 调试

5.1 测试代码

在hal_entry.c文件中的hal_entry函数中调用run_led函数

5.2 J-Link调试代码

点击Debug按钮就可以调试代码

 点击快速运行,则代码进入到hal_entry.c的hal_entry函数中:

5.3 硬件结构

使用j-link连接到板卡上,USB-UART提供电源。

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

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

相关文章

ES6-01-简介

一、什么是ES6&#xff1f; 每年一个版本o(╥﹏╥)o。 二、javaScript新特性的特点 1、语法简洁&#xff0c;功能丰富&#xff1b; 2、框架开发应用。 3、岗位需求&#xff01; 三、let关键字 3-1、声明变量 let a;let a,b;let e100;let f521, gmilk-love, h[]; 3-2、声明的…

python采集汽车价格数据

python采集汽车价格数据 一、项目简介二、完整代码一、项目简介 本次数据采集的目标是车主之家汽车价格数据,采集的流程包括寻找数据接口、发送请求获取响应、解析数据和持久化存储,先来看一下数据情况,完整代码附后: 二、完整代码 #输入请求页面url #返回html文档 imp…

Linux C/C++目录操作

获取当前目录 #include <unistd.h>char *getcwd(char *buf,size_t size); char *get_current_dir_name(void);//注意释放内存 malloc() free()切换工作目录 #include <unistd.h>int chdir(const char *path);//0成功&#xff0c;其他失败&#xff08;目录不存在…

fbd编程语言:深度解析与未来展望

fbd编程语言&#xff1a;深度解析与未来展望 在编程语言的浩瀚海洋中&#xff0c;fbd编程语言以其独特的魅力和潜力&#xff0c;逐渐引起了开发者的关注。那么&#xff0c;fbd编程语言究竟有何特别之处&#xff1f;它的发展前景又如何呢&#xff1f;本文将从四个方面、五个方面…

PostgreSQL的视图pg_class

PostgreSQL的视图pg_class 在 PostgreSQL 中&#xff0c;pg_class 是一个系统目录表&#xff0c;用于存储所有关系&#xff08;如表、索引、视图、序列等&#xff09;的元数据。pg_class 是数据库系统的重要组成部分&#xff0c;包含了关于每个关系的具体信息。 pg_class 视图…

数据结构基础篇(7)

二十三.串、数组和广义表 -串的定义 零个或多个任意字符组成的有限序列串的术语 - 子串&#xff1a;一个串中任意连续字符组成的子序列&#xff08;含空串&#xff09;叫该串的子串- 主串&#xff1a;包含子串的串对应叫主串- 字符位置&#xff1a;字符在序列中序号是该字符串…

react-intl国际化在项目中的使用

前言 使用成熟的第三方库的国际化&#xff0c;可以直接使用封装好的方法&#xff0c;这个国际化的原理其实是使用了react 的第三方库react-intl &#xff0c;感觉主要比较好的就是使用其中的模版&#xff0c;它的本质还是通过了Provider的形式 第一步新建文件夹&#xff0c;计…

Python 限制输入数的范围

Python 限制输入数的范围 在 Python 编程中&#xff0c;我们经常需要限制用户输入的数据范围&#xff0c;以避免一些可能出现的问题。例如&#xff0c;在一个游戏程序中&#xff0c;我们可能想要确保玩家的分数在某个范围内&#xff0c;而不是太高或太低。在这个博文中&#x…

minos 2.4 中断虚拟化——中断子系统

首发公号&#xff1a;Rand_cs 该项目来自乐敏大佬&#xff1a;https://github.com/minosproject/minos 前面讲述了 minos 对 GICv2 的一些配置和管理&#xff0c;这一节再往上走一走&#xff0c;看看 minos 的中断子系统 中断 中断描述符 /** if a irq is handled by minos…

属性(property)

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 1 创建用于计算的属性 在Python中&#xff0c;可以通过property&#xff08;装饰器&#xff09;将一个方法转换为属性&#xff0c;从而实现用于计算…

几种更新 npm 项目依赖的实用方法

引言 在软件开发的过程中&#xff0c;我们知道依赖管理是其中一个至关重要的环节。npm&#xff08;Node Package Manager&#xff09; 是 Node.js 的包管理器&#xff0c;它主要用于 Node.js 项目的依赖管理和包发布。随着项目的不断发展&#xff0c;依赖库的版本更新和升级成…

字符串-459重复字符串

459. 重复的子字符串 - 力扣&#xff08;LeetCode&#xff09; 给定一个非空的字符串 s &#xff0c;检查是否可以通过由它的一个子串重复多次构成。 示例 1: 输入: s "abab" 输出: true 解释: 可由子串 "ab" 重复两次构成。示例 2: 输入: s "ab…

基于Win11下的Wireshark的安装和使用

Wireshark的安装和使用 前言一、Wireshark是什么简介 二、下载Wireshark下载过程查看自己电脑配置 三、安装Wireshark安装过程安装组件创建快捷方式winPacpNpcap 打开检验 四、使用Wireshark实施抓包捕获数据包 五、基于Wireshark使用显示过滤器简介使用方法注意ICMP的请求和应…

【明道云】如何在发送邮件模块给出多条记录形成的列表

【背景】 在完成批量分别发送邮件给不同部门担当的任务后,作为主管部门的用户希望能够获得成功得到处理的所有记录信息。这些信息需要在提醒邮件中以表格形式呈现。 【分析】 获得多条记录的方法能够拿到数据,问题在于如何合适地以表格形式呈现在邮件中。 只有富文本支持表…

c++文件流

1.流的概念 在 C 中&#xff0c;流&#xff08;stream&#xff09;是一种用来处理输入输出数据的概念。 可以把流看作从源头&#xff08;如文件、键盘、网络连接等&#xff09;到终端的数据传输管道。 这些管道在程序运行时动态创建&#xff0c;并可以连接到多种不同的源头和…

目标检测算法综述

1 研究背景 1.1 概述 目标检测是计算机视觉的重要分支&#xff0c;主要任务是在给定的图片中精确找到物体所在位置&#xff0c;并标注出物体的类别&#xff0c;即包含了目标定位与目标分类两部分。在计算机视觉领域中的目标跟踪、图像分割、事件检测、场景理解等的任务都以目标…

Java线程几种常用方法详细说明

在Java编程中&#xff0c;多线程编程是一个非常重要的主题。它允许我们同时运行多个任务&#xff0c;提高程序的性能和响应速度。在这篇博客中&#xff0c;我们将介绍一些常用的Java线程方法和构造器&#xff0c;并通过示例代码展示如何使用它们。 Thread提供的常用方法 publi…

速盾:速盾高防cdn的防御原理?

速盾高防CDN是一种专业的网络安全解决方案&#xff0c;通过多种防御措施保护网站不受各种网络攻击的影响。其防御原理主要包括以下几个方面&#xff1a; 高强度DDoS防护 速盾高防CDN采用了弹性云防护集群&#xff0c;能够应对大规模的分布式拒绝服务&#xff08;DDoS&#xff0…

SpringBoot与Spring Framework提供的缓存抽象

目录 缓存 项目总结 新建一个SpringBoot项目 pom.xml application.properties CacheConfig Book BookRepository接口 BookService服务类 BookController控制器 SpringbootCacheApplication启动类 启动项目&#xff0c;使用Postman测试 参考博文&#xff1a; 1、使用…

llvm 3.5 源码分析 clang for x86 001 之搭环境

0&#xff0c;目标 编译 针对x86 的&#xff0c;debug 的 c语言的编译器 1&#xff0c;下载代码 git clone --recursive 。。。llvm-project.git $ cd llvm-project 2&#xff0c;预备代码 llvm 3.5 版本的源代码&#xff0c;早期版本&#xff0c;可能比较小比较容易debug $…