11.10.2. 功能描述

  • GPIO有三种配置:关闭,通用功能和专用功能。

  • 专用功能是指复用到其他模块使用,比如UART,TWI等,通用功能在GPIO模块内部控制。

11.10.2.1. 通用功能

  • 通用功能具有输入电平读取,输出电平设置,中断设置等三个功能。当引脚配置为通用功能后:

    • 使能GEN_IE,即可在GEN_IN_STA对应的位读取到当前的输入电平。

    • 使能GEN_OE,即可配置GEN_OUT_CFG使得对应的引脚输出电平。

    • 当使用到中断检测功能,同样需要使能GEN_IE,每个引脚可配置中断模式为:下降沿中断,上升沿中断,低电平中断,高电平中断,双沿中断(上升沿或下降沿)。

11.10.2.2. 通用输入去抖功能

  • 通用功能的输入,支持两级去抖,去抖后作用于寄存器和产生中断,如 图 11.70 所示。

../../../_images/gpio_dbc.png

图 11.70 GPIO 二级去抖

  • 第一级去抖用于滤除高频脉冲,去抖可配置使用1-15个参考点(配置为0表示不做去抖),典型应用下(APB0为100MHz时钟),采样周期为10ns,则过滤脉冲最小为10ns,最大为150ns。

  • 第二级去抖用于滤除宽脉冲,如机械按键抖动等,去抖可配置使用1-15个参考点(配置为0表示不做去抖);典型应用下(APB0为100MHz时钟),采样周期可配置为2(N+1) (N=0-15),则最大采样周期为0.65ms,最大过滤脉冲为9.83ms。