[MSPM0开发]之二MSPM0G3507之IOMUX功能概述(基于driverlib库)

一 IOMUX概述

MSPM0G3507中IOMUX外设主要功能:数字功能选择、反相控制、驱动强度( 如果
适用) 、上拉或下拉电阻( 如果适用), 以及唤醒配置( 如果适用于某些 IO, 用于从SHUTDOWN关断模式唤醒) 。

IOMUX 可管理数字 IO 的配置。 IOMUX 配置的主要功能包括:
• 选择将哪个外设复用到每个数字 IO 引脚( 例如, GPIO 或 UART 外设)(是的,这里GPIO也是外设
• 数字输入路径配置
– 迟滞控制
– 输入路径启用/禁用
– 输入逻辑反转控制
• 数字输出路径配置
– 驱动强度控制
– 输出连接启用/禁用
– 输出逻辑反转( 与输入逻辑反转共享控制)
– 逻辑高电平至高阻态输出转换( 用于开漏型接口)
– 禁用连接到 IO 的外设时保持“最后状态”
• 唤醒配置( 用于从 SHUTDOWN 模式唤醒)
– 从 PINCM 寄存器的唤醒状态位读取唤醒源
– 唤醒比较电平
– 释放 SHDNIOREL
– 唤醒启用/禁用
• 上拉和下拉电阻控制
数字IO结构类型
数字IO类型
对应sysconfig的这里
sysconfig
ADC、DAC模拟外设与IOMUX没有任何关系,当某个引脚开启ADC或者DAC功能时,通常其IOMUX设置为高组态(默认状态)

二 IO功能框图

IO功能结构框图

-5V 容限开漏数字 IO 提供迟滞和逻辑电平控制
-上拉电阻、下拉电阻永远需要在IOMUX中配置
- SWD引脚默认在SWD模式

TTL 模式( 左) 和 CMOS 模式( 右) 之间的输入逻辑电平差异见下图
在这里插入图片描述
迟滞功能即图中右图↑↓箭头区域

三 外设功能分配过程

3.1 外设初始化顺序

在 BOOTRST 之后为 IO 设置初始的 IOMUX 配置时, 应用软件可以通过向 PF 字段写入相应的外设选择值, 同时设置与目标引脚对应的 PINCMx 寄存器中的 PC 和 INENA 位, 从支持的选项中选择要连接到 IO 的数字外设。
必须先设置给定外设的 IOMUX 配置, 然后再初始化连接到 IO 的外设以运行。
即:先配置IOMUX,再配置外设功能 如:gpio、spi、i2c、uart、timer的输出通道、adc、dac、i2s、can等等

3.2 运行中修改外设功能

为数字 IO 配置外设功能后, 要在运行时更改该 IO 的外设功能选择, 应按以下过程操作:

  1. 禁用当前连接的外设功能
  2. 将相应 PINCMx 寄存器中的 PC 位( 输出连接位) 和 INENA( 输入连接位) 清零
  3. 将 0x0 写入 PINCMx 中的 PF 字段以清除数据路径中的逻辑
  4. 通过将外设功能 ID 写入 PF 寄存器来选择新的外设功能
  5. 设置 PINCMx 寄存器中的 PC 和 INENA 位以连接新选择的外设
  6. 启用新选择的外设以运行

3.3 输出高组态的使用

高组态输出
运行过程中高电平切换高组态,直接修改对应的“Z1位”即可

3.4 shutdown唤醒配置和唤醒后“复位操作”

配置支持唤醒的 IO 以便从 SHUTDOWN 模式唤醒, 请执行以下操作:

  1. 设置 INENA 位以使输入状态从 IO 传播到唤醒逻辑。
  2. 通过设置或清除目标引脚对应的 PINCMx 寄存器中的 WCOMP 位来选择用于唤醒的比较电平。
  3. 通过设置目标引脚对应的 PINCMx 寄存器中的 WUEN 位来启用唤醒。
  4. 通过 SYSCTL 中的相应命令进入 SHUTDOWN 模式

3.5 shutdown唤醒后的恢复过程

应用软件必须按照以下过程来恢复从 SHUTDOWN 模式退出时的 IO 状态:

  1. 必要时按照如下方式检查哪个 IO 触发了从 SHUTDOWN 模式唤醒:
    a. 重新配置与要测试唤醒状态的 IO 对应的 PINCMx 寄存器, 并设置外设连接 (PC) 位( PC 位用于门控WAKESTATE 指示) 。
    b. 测试与待测试 IO 对应的 PINCMx 寄存器中的 WAKESTATE 位, 确定该特定 IO 是否根据先前配置的WCOMP 和 WUEN 配置接收到了 WAKE 状态。
  2. 将任何其余的 IOMUX PINCM 寄存器重新配置为正确的状态。
  3. 重新配置通过 IOMUX 连接到引脚的外设并启用它们。
  4. 释放 SYSCTL 中的 SHUTDOWN IO 锁定。
  5. 清除 PINCMx 寄存器中的 WUEN 位以复位 WAKESTATE 状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值