0

美好的一天

我一直在尝试从 STM32F407 迁移到 STM32F746。我遇到的问题是使用 ST HAL 库来初始化 CAN。该代码是从 MX Cube (4.16) 生成的。

使用 Nucleo-144 STM32F746,我可以在调试(ST-Link)期间通过初始化代码(MX_CAN1_Init()),但在调试中使用 uLink Pro 的生产系统上则不行。等待 CAN 外设(MSR INAK 位未清除)将超时。

CAN 引脚没有连接任何东西,即悬空。

4

1 回答 1

0

找到了解决方案。

显然,如果 CAN RXD 引脚悬空或拉低,则初始化功能将超时,除非使用 Nucleo 板上的 ST-Link 进行调试。

然后我在GPIO中使用了内部上拉电阻,问题就消失了。两个系统都会在运行模式或调试中传递初始化代码。

我不记得 STM32F407 是否有类似的问题。

于 2016-11-24T09:21:34.480 回答