
1.概述
本篇文章主要介绍如何使用e2studio对瑞萨单片机进行GPIO输入检测,并以LED显示。
2.硬件准备
首先需要准备一个开发板,这里我准备的是芯片型号 R7FA2L1AB2DFL 的开发板。

3. 新建工程

4.工程模板

5.保存工程路径

6.芯片配置
本文中使用R7FA2L1AB2DFL来进行演示。

7
7.工程模板选择

8.按键口&Led配置
由下图可以得知,板子上有2个LED灯,需要给高电平才可以点亮。


当按下按键P015,P103亮,否则P103灭为案例进行配置。

9.工程文件
查看pin_data.c,可以看到P103的定义已经写入,说明配置成功。

打开main.c函数,发现写了一个hal_entry ()函数。

打开hal_entry.c,可以看到在hal_entry函数内,注释着可以在这输入自己的代码。

10.R_IOPORT_PortRead()函数原型
fsp_err_t R_IOPORT_PortRead (
ioport_ctrl_t *const p_ctrl,
bsp_io_port_t port,
ioport_size_t * p_port_value )
//说明:Reads the value on an IO port. Implements ioport_api_t::portRead.The specified port will be read, and the levels for all the pins will be returned. Each bit in the returned value corresponds to a pin on the port. For example, bit 7 corresponds to pin 7, bit 6 to pin 6, and so on.
故可以用 R_IOPORT_PortRead ()函数进行配置,配置高电平如下所示。
R_IOPORT_PortRead(&g_ioport_ctrl, BSP_IO_PORT_00, &p_port_value_port_15);11.R_IOPORT_PinRead()函数原型
fsp_err_t R_IOPORT_PinRead (
ioport_ctrl_t *const p_ctrl,
bsp_io_port_pin_t pin,
bsp_io_level_t * p_pin_value )
//说明:Reads the level on a pin. Implements ioport_api_t::pinRead.
故可以用R_IOPORT_PinRead()函数进行读取IO口电平状态,该函数只能读取一个端口的电平。
bsp_io_level_t p_port_value_port_151;
R_IOPORT_PinRead(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_15, &p_port_value_port_151);由上述可以得知,R_IOPORT_PortRead完全可以替代R_IOPORT_PinRead。
12. 代码
hal_entry()中添加如下。
ioport_size_t p_port_value_port_15;
bsp_io_level_t p_port_value_port_151;
/*******************************************************************************************************************//**
* main() is generated by the RA Configuration editor and is used to generate threads if an RTOS is used. This function
* is called by main() when no RTOS is used.
**********************************************************************************************************************/
void hal_entry(void)
{
/* TODO: add your own code here */
while(1)
{
R_IOPORT_PortRead(&g_ioport_ctrl, BSP_IO_PORT_00, &p_port_value_port_15);
if(p_port_value_port_15 & 0x8000)
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_04, BSP_IO_LEVEL_LOW);
else
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_04, BSP_IO_LEVEL_HIGH);
R_IOPORT_PinRead(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_15, &p_port_value_port_151);
if(p_port_value_port_151)
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_04, BSP_IO_LEVEL_LOW);
else
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_04, BSP_IO_LEVEL_HIGH);
}
#if BSP_TZ_SECURE_BUILD
/* Enter non-secure code */
R_BSP_NonSecureEnter();
#endif
}13.视频教学
视频教学在B站官方账号,欢迎观看B站教学视频~
原文标题:瑞萨e2studio----GPIO输入检测
文章出处:【微信公众号:RA生态工作室】欢迎添加关注!文章转载请注明出处。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
mcu
+关注
关注
147文章
18605浏览量
387004 -
ARM
+关注
关注
135文章
9499浏览量
388689 -
嵌入式
+关注
关注
5186文章
20146浏览量
328795
发布评论请先 登录
相关推荐
热点推荐
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
;amp;vd_source=7ab92f6a337b22fda39554fd6e70f01a
本报告旨在记录基于瑞萨RA6E2 MCU评估板的初步开发体验。主要内容包括:
软件开发环
发表于 12-01 22:42
【瑞萨RA6E2】 配置Keil开发环境+使用按键控制LED+串口/调试器烧录程序
一、 概述
本报告旨在记录基于瑞萨RA6E2 MCU评估板的初步开发体验。主要内容包括:
软件开发环境的搭建与配置。
实现一个基础的GPIO控制功能:通过用户按键控制LED灯的亮灭。
发表于 11-26 20:53
【瑞萨RA6E2】ADC、DAC 电压输入输出
);
代码中 dac 的值为 0 ~ 4095,对应 0 ~ 3.3v 电压
【ADC 电压输入】
瑞萨 RA6E2 支持 12 位 ADC 电压
发表于 11-10 01:29
【RA4L1-SENSOR】RA4L1-SENSOR开发版开箱评测+e2studio软件安装
RA4L1-SENSOR开发板。如下图所示
拿出里面的开发板,可以看到3件套,接上USB线,
二、e2studio软件安装
e2 studio (简称为 e2 或
发表于 06-12 23:23
【RA-Eco-RA4M2开发板评测】初学瑞萨-使用瑞萨flash programmer烧录程序
本人刚入坑不久,对单片机的热情很高,于是也加入了瑞萨的板子申请队伍,很荣幸也成为了试用者之一,此前对于瑞萨的板子从未接触过,包括对于使用e2stud
发表于 04-29 17:28
【RA-Eco-RA4M2开发板评测】试用瑞萨flash programmer烧录
本人刚入坑不久,对单片机的热情很高,于是也加入了瑞萨的板子申请队伍,很荣幸也成为了试用者之一,此前对于瑞萨的板子从未接触过,包括对于使用e2stud
发表于 04-28 19:12
【瑞萨RA2L1入门学习】+e2_studio软件安装及使用
一、e2_studio软件安装及使用
注册e² studio | Renesas 瑞萨电子
下载软件
安装
4.创建工程
更改工程位置
新
发表于 03-27 13:25
瑞萨RA8快速上手指南:Cortex-M85内核瑞萨RA8开发环境搭建 并点亮一个LED
因为Cortex-M内核,瑞萨RA8系列单片机支持多种市面上常见的开发环境,像Keil MDK、IAR EWARM等,而本文讲述的是瑞萨自家官方的IDE(

瑞萨e2studio----GPIO输入检测
评论