PC2_C和PC3_C容易出现控制失效的问题。
有个项目用了STM32H743VIT6 芯片,PC2_C和PC3_C设置为推挽输出。其中有4块芯片出现PC2_C和PC3_C设置失效的问题。表现为:设置为低电平时IO电压是1-2V。
我最先用来测试前面的4款板其他功能都是好的,就是PC2、PC3的驱动有问题,而且驱动的电流强弱有差异。注意PC2_C和PC3_C是做其他芯片的使能脚,不对外,IO损坏的概率很小。
后面我拿了4块新板测试,发现可PC2_C和PC3_C又可以正常了。百思不得其解啊
查找了国内外的论坛,发现有多位网友有类似的问题,但是都没有准确的答案。现在电路板做出来了,不敢卖。 如果你用PC2_C做普通GPIO的话,就千万不要将PC2与PC2_C之间的那个模拟开关打开了。
为什么不要将PC2与PC2_C之间的那个模拟开关打开 非常感谢香水城主的回复。已经添加如下代码,但是还是一样的。而且查了一下默认PC2_C和PC2的开关是关闭状态。
HAL_SYSCFG_AnalogSwitchConfig(SYSCFG_SWITCH_PC2,SYSCFG_SWITCH_PC2_CLOSE);
HAL_SYSCFG_AnalogSwitchConfig(SYSCFG_SWITCH_PC3,SYSCFG_SWITCH_PC3_CLOSE);
比较疑惑的是为什么有4片芯片有这个问题,查找了一下发现国内外都有人遇到类似问题,但是没有确定的答案。 这几个结尾带_C的管脚,本意是设计给ADC当专用模拟输入通道的,不是给你当通用GPIO用的,这几个管脚会直接连接到ADC的多路选择器上,你现在强行让它们再连接到GPIO控制器上,估计会受影响 管脚太多了,很多复用功能,眼花缭乱。
页:
[1]