当前位置: 首页 > news >正文

RA4M2_MINI开发(5)----GPIO输入检测

RA4M2_MINI开发.5--GPIO输入检测

  • 概述
  • 视频教学
  • 样品申请
  • 硬件准备
  • 参考程序
  • 源码下载
  • 新建工程
  • 工程模板
  • 保存工程路径
  • 芯片配置
  • 工程模板选择
  • 时钟设置
  • SWD调试口设置
  • GPIO口配置
  • 按键口配置
  • R_IOPORT_PinRead()函数原型
  • 代码

概述

本篇文章主要介绍如何使用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

源码下载

新建工程

在这里插入图片描述

工程模板

在这里插入图片描述

保存工程路径

在这里插入图片描述

芯片配置

本文中使用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);}

在这里插入图片描述

http://www.dtcms.com/a/309909.html

相关文章:

  • 探索 VMware 虚拟机:开启虚拟化世界的大门
  • SIP 呼叫中实现远端摄像头控制学习笔记
  • Go语言-->数组
  • WPF使用PreviewTextInput事件限制用户输入
  • Go语言在AI领域的最新应用与最佳实践深度研究
  • 使用Min-Max进行数据特征标准化
  • 手撕Redis源码1-数据结构实现
  • SpringBoot3.x入门到精通系列:1.5 配置文件详解
  • 2025 数字经济就业方向及前景【一文说清楚】
  • Spark Shuffle性能优化实践指南:提升大数据处理效率
  • 【数据分享】中国27省乡镇(街道)级人口密度数据集(2000年)
  • 设计模式1:创建型模式
  • AI在安全方面的十个应用场景
  • 分布式弹幕系统设计
  • Vue.set 响应式原理详解:源码级逐行带入实战解析
  • 【go】slice元素去重
  • MonoGame游戏开发框架日记 -07
  • 【Go】P1 GoLang 语言简介与起源
  • iPhone 恢复出厂设置是否会删除所有内容?
  • 充电桩车位占用识别准确率↑32%:陌讯动态特征融合算法实战解析
  • STM32 使用 RTC 实现实时时钟功能
  • tauri实用教程:项目打包为安装包时如何包含其他文件
  • InfluxDB 与 Golang 框架集成:Gin 实战指南(一)
  • 噪声对比估计(NCE):原理、演进与跨领域应用
  • 第一个大语言模型的微调
  • 电路基础学习
  • 字节跳动招机器人数据算法研究员-Top Seed
  • 开源医院信息管理系统:基于若依框架的智慧医疗解决方案
  • Chrontel【CH7219A-BF】CH7219A USB-C和DP 1.4至HDMI 2.1协议转换器,带DSC解码功能
  • [2025CVPR-图象生成方向]ODA-GAN:由弱监督学习辅助的正交解耦比对GAN 虚拟免疫组织化学染色