我正在尝试使用 STM32CubeIDE 和 Proteus 闪烁外部 LED
while (1)
{
HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);
HAL_Delay(100);
}
[ ) 2
LED 不闪烁
我假设您已将引脚配置为正确输出,没有上拉或下拉电阻。因此,您需要将 LED 端接到地而不是 3.3V。
如果没有上拉或下拉电阻,引脚既不是高电平也不是低电平,引脚处于“z 状态”,因此当您将 LED 从低电平切换到高电平时,引脚和引脚之间没有电位差LED 所以没有电流流动,当引脚从高电平变为低电平时,LED 的二极管特性(仅允许电流沿一个方向流动)不会让电流流向电路板。
问题解决了。首先是LED的极性。其次,proteus 上的蓝色药丸库不支持我在 STM32CubeIDE 上选择的 STM32FC103C8。应该选择STM32FC103C6。