用LL库配置GPIO时踩了坑,大家也这样吗?
我按照手册设置输出高电平,但管脚就是不动,是不是还有啥隐藏开关?是不是搞混了PP和OD输出? 你是不是忘开GPIO时钟了? 我之前用LL也遇到过,最后发现是AF没关。 你是不是用了上电默认的输入模式? LL配置顺序稍微错一下就没反应。 拉高前你看ODR和IDR对得上不? CubeMX不太友好,我手撸才整明白。 会不会是管脚被别的外设复用了? 用Scope量一下看有没输出。 开关速度快吗?是不是被容性拖慢了? STM32的GPIO外设需要先开启时钟才能正常工作。若未开启时钟,配置将无效。在配置GPIO前,必须调用对应的时钟使能函数。例如,对于GPIOA,需调用 STM32的GPIO外设需要先开启时钟才能正常工作。若未开启时钟,配置将无效。在配置GPIO前,必须调用对应的时钟使能函数。例如,对于GPIOA,需调用 若引脚配置为开漏输出且未连接外部上拉电阻,或上拉/下拉配置与需求不符,可能导致输出电平异常。根据需求选择输出类型,并正确配置上拉/下拉电阻 若引脚被配置为其他外设的复用功能(如UART、I2C等),则无法作为普通GPIO使用。检查引脚是否被其他外设占用,并确保其未被配置为复用功能 引脚可能未正确连接到外部电路,或存在短路、断路等问题。检查硬件连接,确保引脚与外部电路正确连接,并使用万用表等工具检测电路是否正常 没踩,主要是LL库和标准库应该都差不多 一般来说就是你配置问题,估计跟库没啥关系 虽然LL库通常不需要额外的初始化,但若系统配置不当(如时钟配置错误),可能影响LL库的正常使用。确保系统时钟配置正确,并检查LL库的使用是否符合规范 你咋写的,看看你的代码啊
页:
[1]