直击翻车现场:STM32 GPIO 无法输出的问题

您所在的位置:网站首页 ls1028can口不正常 直击翻车现场:STM32 GPIO 无法输出的问题

直击翻车现场:STM32 GPIO 无法输出的问题

2023-06-14 06:33| 来源: 网络整理| 查看: 265

问题描述

平台:STM32F103RBT6,其中有GPIO 输入,也有GPIO输出,其中LED指示灯(GPIO 输出)。

发现,程序烧写后,代码正常跑,配置的GPIO 引脚,没有电平输出。

问题分析 开始以为代码有问题,所以,软件调试,发现可以正常的跑。串口打印,发现程序能正常的执行!!确认引脚配置正确后,开始认真的分析,发现,GPIO 的寄存器配置,感觉已经配置了推挽输出!!检查硬件,发现焊接良好。对比官方的GPIO配置,发现了一点问题。GPIO 的速率,没有配置!!

问题解决

原来配置GPIO时,上面有GPIO 输入,没有配置SPEED,配置输出时,直接复制粘贴后,改为了PP推挽输出,没有配置SPEED。

/* LED_PIN_RUN2 */ HAL_GPIO_WritePin(PORT_LED_PIN_RUN2, LED_PIN_RUN2, GPIO_PIN_RESET); GPIO_InitStruct.Pin = LED_PIN_RUN2; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; /* 注意,需要配置!! */ HAL_GPIO_Init(PORT_LED_PIN_RUN2, &GPIO_InitStruct);

反思

其实都是懒引起的,代码,不能总是复制与粘贴。认真分析问题,认真总结。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3