IC:

概述

Ameba 系列的 I/O 提供灵活的连接能力,支持与片上的模拟和数字电路接口进行连接。详见 I/O 框图 所示。

有关 PAD 连接片上信号的配置方法,请参阅 引脚复用 章节。本节主要介绍 PAD 支持的功能与编程方法。

../../../rst_peripherals/rtos/1_gpio/figures/pad_path.svg

I/O 框图

功能特性

引脚控制模块支持灵活的 I/O 电气特性控制:

  • 内部上拉/下拉电阻

    • 可配置的片上电阻网络,支持上拉/下拉/高阻控制

    • 部分引脚上拉/下拉电阻阻值可调

  • 可编程的 Driving Strength 挡位

    可编程驱动能力,多档位可选

  • 可编程 Slew Rate 控制

    可调节信号边沿陡峭度,支持快速/慢速模式切换

PAD 控制与编程接口

PAD API 参考

芯片通过 {SDK}/component/soc/amebaxxx/fwlib/include/ameba_pinmux.h 头文件提供完整的 PAD 控制接口。

API

描述

PAD_PullCtrl

配置 Active 模式下 PAD Pull 类型

PAD_SleepPullCtrl

配置 Sleep 模式下 PAD Pull 类型

PAD_ResistorCtrl

配置 PAD 上拉/下拉阻值类型

PAD_DrvStrength

配置 PAD 驱动能力挡位

PAD_InputCtrl

开启/关闭 PAD 数字路径控制

PAD_SlewRateCtrl

配置 PAD 上升沿/下降沿速率

备注

有关 PAD 特性参数,如:上下拉阻值信息、驱动能力、电压特性及信号边沿速率等性能指标请查询芯片数据手册。

低功耗模式引脚状态管理

PAD 在 Active 与低功耗模式下的 PU/PD 功能分别由不同寄存器进行控制。这种设计允许在低功耗模式下为每个引脚独立配置片内的上拉或下拉电阻。

PAD 输入状态

  • 普通睡眠模式(PG 或 CG)

    所有 PAD 的 PU/PD 功能均生效。

  • 深度睡眠模式

    • 大多数 PAD 的 PU/PD 功能仍然生效;

    • 某些 PAD 的供电会被关闭,导致这些引脚的 PU/PD 失效,因此可能呈现浮空状态。

      • 如果与这些 PAD 相连的电路需要被拉到高或低状态,则需要在 PCB 上使用外部电阻器。

    备注

    深度睡眠模式下, PU/PD 功能无效的 PAD,请查询芯片数据手册。

PAD 输出状态

  • 普通睡眠模式(PG 或 CG)

    PAD 输出的状态将 保持睡眠前的状态

    例如,在睡眠之前,如果 I/O 设置为输出 1,系统进入 PG 或 CG 后,此 I/O 仍将保持输出 1 不变。

  • 深度睡眠模式

    Active 下设置的 1/0 输出状态将失效

    例如,在睡眠之前,如果 I/O 设置为输出 1,系统进入深度睡眠后,则 I/O 将无法保持输出 1 状态。

模拟数字共用引脚使用规范

部分 PAD 设计为既可连接到模拟电路,也可与数字电路通信。为确保模拟信号的完整性,这些 PAD 用作模拟功能时,需断开与数字路径连接 (例如,作为 ADC 的输入)。

ADC 与 Cap-touch PAD

对于该部分 PAD,支持其与 ADC, Cap-touch 模拟电路及数字电路连接。默认情况作为数字功能。

备注

支持该功能的 PAD, 请查询 ADC 或 Cap-touch 章节介绍。

  • 当配置其作为 ADC 或 Cap-touch pin 时,需执行以下操作

    • 步骤 1:关闭数字通路连接

      PAD_InputCtrl(PinName, DISABLE);
      
    • 步骤 2:Pull Control 配置为浮空状态

      PAD_PullCtrl(PinName, GPIO_PuPd_NOPULL);
      
    • 步骤 3:与 ADC 或 Cap-touch pin 功能相关的其它配置,详见 ADC 或 Cap-touch 章节介绍。

  • 当配置其为数字功能时,需执行以下操作

    需先调用如下接口使能数字通路连接,再按需进行引脚复用即可。

    PAD_InputCtrl(PinName, ENABLE);
    

Audio PAD

无。

USB PAD

  • 当配置其作为 USB PAD 时,需执行以下操作

    配置 PU/PD 为浮空状态,该操作已在底层驱动代码实现,您无需额外操作。更多技术细节请参阅 USB 章节。

  • 当从 USB 功能切换至其它功能时

    仅需执行相应的 USB 去初始化操作,并按需进行引脚复用即可,无需额外操作。