0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

微控制器外围功能的六部分系列之GPIO(通用输入/输出)

电子设计 来源:瑞萨电子 作者:瑞萨电子 2021-06-21 18:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文介绍了学习微控制器外围功能的六部分系列中的第一部分,该系列是 GPIO(通用输入/输出)。它讨论了重要的外围设备,即 GPIO,以及使用 GR-SAKURA 和编程提示对 GPIO 进行编程,以防止“颤动”或由开关移动引起的某种程度的快速振动。

CPU 和内存是大脑。外围设备是 Brawn。

MCU(微控制器)广泛用于控制所有类型的电子设备。正如我们在之前的“微控制器简介”系列中所解释的那样,MCU 由 CPU(中央处理单元)、存储器和实现各种外设支持功能的附加电路组成(见图 1)。CPU通过读取程序和以下指令进行操作:读取数据、进行计算和比较、根据比较结果生成其他操作等指令。内存的作用不仅是存储数据,还包括程序本身。

pYYBAGDQZZOAKFKkAAEULMTBcd0917.png

重要外设:GPIO 端口

GPIO(通用输入/输出)端口处理传入和传出的数字信号。作为输入端口,它可用于将从开关接收到的 ON/OFF 信号或从传感器接收到的数字读数与 CPU 进行通信。作为输出口,它可以根据CPU指令和计算结果驱动外部操作——例如,根据计算结果驱动LED显示屏,或者输出驱动信号给电机

GPIO 被称为“通用”,因为每个引脚都可以自由设置为用作输入或输出。在早期的 MCU 中,每个端口要么专门输入,要么专门输出。然而,GPIO 是灵活的。如果它有 8 个引脚,您可以将它们设置为最适合您的需要:4 输入 4 输出,或 7 输入 1 输出,或任何其他组合。

请注意,当程序读取、写入和操作数字值(0 和 1)时,外部设备通常使用信号电平:低电压和高电压。GPIO 处理两个方向的必要转换。让我们看看 RX63N 的 GPIO 使用的基本寄存器 (*1)(见图 2)。

pYYBAGDQZaKABvcBAAF3YiHU8-4524.png

使用 GR-SAKURA 对 GPIO 进行编程

为了获得 GPIO 端口如何工作的一些实践知识,让我们编写一个程序,通过点亮 LED 来响应按下开关。我们将使用 Sakura 的“数字 I/O”库来方便我们的编程。

图 3 显示了根据开关值打开和关闭指定 LED(LED 0)的程序代码,其中 GPIO 端口用于获取开关设置和发送 LED 开/关信号。该程序以调用 pinMode 函数 (1) 的设置函数开始,该函数将连接到开关的引脚设置为输入模式,将连接到 LED 的引脚设置为输出模式。我们在这里使用设置函数,因为引脚模式设置必须只进行一次。

pYYBAGDQZbGAIifQAACL2BfB4m0909.png

编程提示:防止“喋喋不休”引起的问题

开关通过完成(闭合)或阻断(打开)电路来工作:当开关闭合时电流流动,而当它打开时不流动。然而,由于开关是机械装置,因此不能依靠它以瞬时和干净的方式改变电路状态。相反,开关的移动总是会产生某种程度的快速振动,这会导致短暂的中间“颤动”阶段,在该阶段电路在稳定到正确状态之前快速循环打开和关闭。您可能想尝试运行以下程序(图 4)以更好地了解实际中的喋喋不休。

poYBAGDQZb2AQ1FDAABssezNVHo001.png

所需的操作是使 LED 在按下和松开开关时平稳地亮起和熄灭。但这会一直发生吗?如果在抖动过程中读取开关信号,结果是不可预测的。这就是我们在图 3 所示的程序中引入“颤动”延迟的原因。

编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2578

    文章

    55811

    浏览量

    795435
  • led
    led
    +关注

    关注

    244

    文章

    24779

    浏览量

    693422
  • 数字信号
    +关注

    关注

    2

    文章

    1064

    浏览量

    49754
  • GPIO
    +关注

    关注

    16

    文章

    1337

    浏览量

    56590
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RL78/G12微控制器通用应用的低功耗

    RL78/G12微控制器通用应用的低功耗选 在电子设计领域,低功耗、高性能的微控制器一直是工程师们追求的目标。Renesas的RL78/G12
    的头像 发表于 04-13 15:05 273次阅读

    Freescale Kinetis KL34系列微控制器:低功耗高性能

    Freescale Kinetis KL34系列微控制器:低功耗高性能选 一、引言 在当今的电子设计领域,低功耗、高性能的微控制器需求日益增长。Freescale的Kinetis K
    的头像 发表于 04-10 10:50 224次阅读

    探索PIC16CR7X系列微控制器功能特性与应用指南

    ,成为众多工程师的理想选。今天,我们就来深入了解一下PIC16CR7X系列微控制器的特点、功能以及在实际应用中的注意事项。 文件下载: PIC16CR73-I/SO.pdf 一、PI
    的头像 发表于 04-07 15:30 244次阅读

    RL78/G1P微控制器通用与传感控制的低功耗

    RL78/G1P微控制器通用与传感控制的低功耗选 在电子设计领域,低功耗、高性能的微控制器一直是工程师们追求的目标。Renesas的RL
    的头像 发表于 04-01 15:10 270次阅读

    RL78/G12微控制器通用应用的低功耗

    RL78/G12微控制器通用应用的低功耗选 在电子设计领域,低功耗、高性能的微控制器一直是工程师们追求的目标。Renesas的RL78/G12
    的头像 发表于 04-01 14:40 316次阅读

    MSP430FR58xx系列微控制器:低功耗设计的理想

    MSP430FR58xx系列微控制器:低功耗设计的理想选 在电子设计领域,低功耗、高性能的微控制器一直是工程师们追求的目标。TI的MSP430FR58xx
    的头像 发表于 03-30 17:00 562次阅读

    MSP430FR59xx系列微控制器:低功耗设计的理想

    MSP430FR59xx系列微控制器:低功耗设计的理想选 在电子工程领域,低功耗、高性能的微控制器一直是开发者们追求的目标。德州仪器(TI)的MSP430FR59xx
    的头像 发表于 03-30 10:55 291次阅读

    深入解析Cypress FM系列微控制器:多功能、高性能的理想

    深入解析Cypress FM系列微控制器:多功能、高性能的理想选 在当今电子技术飞速发展的时代,微控制器作为各类电子设备的核心,其性能和
    的头像 发表于 03-29 10:05 395次阅读

    STM32L072xx系列微控制器:低功耗设计的优选

    STM32L072xx系列微控制器:低功耗设计的优选选 在当今的电子设备设计中,低功耗、高性能的微控制器是众多工程师追求的目标。STMicroelectronics推出的STM32L
    的头像 发表于 02-28 11:35 933次阅读

    PSoC 4100M系列微控制器

    PSoC 4100M系列微控制器PSoC 4100M系列微控制器是英飞凌(原Cypress)推出的一款基于ARM Cortex-M0内核的可编程片上系统(PSoC),它集成了可配置的模
    发表于 01-12 09:20

    RA0E2微控制器:低功耗设计的理想

    RA0E2微控制器:低功耗设计的理想选 在当今的电子设计领域,低功耗、高性能的微控制器需求日益增长。Renesas的RA0E2系列微控制器
    的头像 发表于 12-26 17:30 1048次阅读

    探索MCX E24系列微控制器:工业与物联网应用的理想

    探索MCX E24系列微控制器:工业与物联网应用的理想选 在工业和物联网(IIoT)领域,对高性能、高可靠性微控制器的需求与日俱增。NXP的MCX E24
    的头像 发表于 12-24 11:10 631次阅读

    CW32系列微控制器的时钟源和定时选项介绍

    (PLL):这是一种可以将输入时钟源进行倍频输出的时钟源,可以提供更高的时钟频率。 定时方面,CW32系列微控制器通常提供以下几种选择:
    发表于 12-16 06:26

    PSOC 4100BL系列微控制器

    PSoC 4100BL系列微控制器是英飞凌(原Cypress)推出的基于ARM Cortex-M0内核的可编程片上系统(PSoC),集成低功耗蓝牙(BLE)射频模块,适用于物联网、可穿戴设备
    发表于 11-21 09:00

    Microchip AVR32EA 系列微控制器:高性能与低功耗的完美融合

    Microchip Technology AVR32EA28/32/48微控制器是 AVR® EA系列的一部分,采用带硬件乘法器的AVR CPU,时钟运行速度达20MHz。AVR EA系列
    的头像 发表于 10-10 15:16 1022次阅读
    Microchip AVR32EA <b class='flag-5'>系列</b><b class='flag-5'>微控制器</b>:高性能与低功耗的完美融合