STM32F405ZGT6 批次22+ 问下这颗料,60度烘烤12小时后,出现鼓包,是怎么回事? 原厂有标准的烘烤温度范围 跟时长范围吗?
非官方开发板第一次下载成功,之后就各种失败
STM32H5F/E 相比 STM32F4 系列最大的优势是什么?
ST TOF问题请教
STM32F4的SPI端口,如何实现多通道输入?
STM32F4标准库USB例程CDC_HID_Composite问题:第一次识别成功,后续插入电脑均识别失败
STM32F407 Flash 故障
STM32F407使用LAN8720A进行网口通信
USBX在F407上创建CDC不能正常使用
STM32F407 音频输入输出时 IFFT 无法正常工作
微信公众号
手机版
可以根据这个线索,跟踪先运行SPI 时,看看这个状态什么时候会变化,从而发现什么原因。
SPI和EEPROM通信?示波器看一下I2C总线的状态,是不是没有接上拉电阻。
接了上拉电阻,如果把I2C放在EEPROM的SPI通信之前或者直接注释SPI的话,I2C正常输出波形通信,但是放在SPI之后就在“if (hi2c->State == HAL_I2C_STATE_READY)”判断之后返回HAL_BUSY。调试看到hi2c->state值为0xFF。
好的,我试试,刚刚我将I2C初始化放在EEPROM通信之后,可以进去hi2c->state,但是又卡在了“I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_SB, RESET, Timeout, Tickstart”和“READ_BIT(hi2c->Instance->CR1, I2C_CR1_START) == I2C_CR1_START”,最终返回HAL_TIMEOUT
是不是I2C和SPI的配置IO有冲突了。仿真看一下IO寄存器对应IO口的状态。
没有冲突,目前已解决,跟踪state发现是SPI通信问题,导致state从ready变成其他