gpio问题整理

为什么配置了pin脚不生效

../../_images/hal_gpio_config.png

1) “pad” :注意PA,PB不要搞错,PA是HCPU,PB是LCPU。经常有同学搞错。PB能在HCPU直接调用。PA不能直接在LCPU调用。

2)“func”:注意对照pinmux,config表看下是否支持,注意是否配置错了。

例:PA28,对应的是GPIO_A28,不要复制,粘贴忘记改了。

../../_images/hal_gpio_config_err.png

3)“flags”:内部上下拉状态。有外部上下拉的,不需要再配置内部上下拉了。这里对于通讯接口(I2C/SPI)统一推荐使用外部上拉,芯片内部上拉不可调节。大概在18K左右,速率高的时候会出现数据异常

4)“hcpu” :这里是区分大小核的,PA脚是大核的PIN脚,这里是1. PB脚是小核的PIN脚,要用0.经常有同学复制,粘贴忘记改了。