RA4M2_MINI开发(5)----GPIO输入检测
本文介绍了如何使用e2studio开发环境对瑞萨RA4M2单片机进行GPIO输入检测。主要内容包括硬件准备(开发板R7FA4M2AD3CFL)、工程创建、时钟配置(12MHz晶振)、SWD调试口设置,以及LED控制(P111)和按键检测(P000)的GPIO配置。通过R_IOPORT_PinRead()函数读取按键状态,控制LED亮灭。文中提供了视频教程、样品申请方式及源代码获取途径(GitHub
RA4M2_MINI开发.5--GPIO输入检测
概述
本篇文章主要介绍如何使用e2studio对瑞萨单片机进行GPIO输入检测。
最近在瑞萨RA的课程,需要样片的可以加qun申请:925643491。

视频教学
https://www.bilibili.com/video/BV1CPgazKEWT/
RA4M2
样品申请
https://www.wjx.top/vm/rCrkUrz.aspx
硬件准备
首先需要准备一个开发板,这里我准备的是自己绘制的开发板,需要的可以进行申请。
主控为R7FA4M2AD3CFL

参考程序
https://github.com/CoreMaker-lab/RA4M2_MINI
https://gitee.com/CoreMaker/RA4M2_MINI
源码下载
https://download.csdn.net/download/xinzuofang/91626610
新建工程

工程模板

保存工程路径

芯片配置
本文中使用R7FA4M2AD3CFL#AA0来进行演示。

工程模板选择




时钟设置
开发板上的外部高速晶振为12M.

需要修改XTAL为12M。

SWD调试口设置

GPIO口配置
由下图我们可以得知,板子上有1个LED灯,同时需要给高电平才可以点亮,故以P111管脚为例,配置方式如下所示。

在e2studio中可以直接设置P111为输出口。

按键口配置
由下图我们可以得知,按键在P000管脚,并且有一个上拉。

在e2studio中可以直接设置P000为输入口。
同步到工程。

R_IOPORT_PinRead()函数原型

故可以用R_IOPORT_PinRead()函数进行读取IO口电平状态,该函数只能读取一个端口的电平。
bsp_io_level_t p_port_value_pin_000;
R_IOPORT_PinRead(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_00, &p_port_value_pin_000);
if(p_port_value_pin_000)
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_11, BSP_IO_LEVEL_LOW);
else//按下按键LED亮
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_11, BSP_IO_LEVEL_HIGH);
代码
在hal_entry()中添加如下。
while(1)
{
bsp_io_level_t p_port_value_pin_000;
R_IOPORT_PinRead(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_00, &p_port_value_pin_000);
if(p_port_value_pin_000)
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_11, BSP_IO_LEVEL_LOW);
else//按下按键LED亮
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_11, BSP_IO_LEVEL_HIGH);
}

更多推荐



所有评论(0)