STM32Gxxx系列MCU引脚分配至外设(复用功能)时能否采样GPIO输入?
STM32Gxxx系列复用引脚的GPIO输入采样可行性
对于STM32Gxxx系列MCU,当引脚配置为外设复用功能时,确实可以读取GPIO输入电平。
从参考手册的描述和GPIO框图可以看出:引脚的电平信号会同时送入GPIO输入寄存器和对应的外设模块,输入路径与复用外设的信号路径相互独立。因此即使引脚被分配给TIMER捕获功能,你依然可以通过读取GPIO输入数据寄存器(IDR)来获取引脚的实时电平状态。
针对你的引脚卡滞检测场景,给出以下实用提示:
- 无需切换引脚的复用配置,直接读取对应GPIO端口的
IDR寄存器即可,不会干扰TIMER捕获功能的正常运行。 - 为避免误判,建议采用多次连续采样的逻辑:比如连续读取10次以上均为同一电平,再判定引脚处于卡滞状态。
- 可根据输入信号的实际情况配置引脚的
PUPDR(上下拉电阻)或施密特触发器参数,提升电平检测的抗干扰能力。 - 若系统存在实时性要求,建议将卡滞检测任务放在低优先级的后台任务中执行,避免占用中断或高优先级任务的资源。
内容的提问来源于stack exchange,提问作者yo3hcv
相关产品推荐
相关产品推荐

