
uboot初始化IIC1,跳转到应用程序中后,先读一字节AT24C04的数据,然后初始化IIC1(未复位),再读一字节AT24C04时,有概率一直检测到IIC处于busy状态。 IIC1总线只有STM32F405RGT6和AT24C04,IIC总线有10K的上拉电阻。 以下三种方式可降低出busy的概率: 1)跳转到应用程序中后,若先进行IIC1初始化(未复位),再去读一字节数据则正常; 2)跳转到应用程序中后,若IIC1初始化前,先复位一下,则后续读一字节数据正常; 3)跳转到应用程序中后,若不再初始化IIC1,则IIC通信正常。 但仍不清楚为什么原本程序有概率出现busy的状态。 |
关于AN2867文档的疑问
tougfx 显示问题
F429同时使用SDRAM和SRAM
CAN数据重发
littlefs系统能读写SD卡吗?
STM32F405的ADC功耗参数不理解
STM32F405RGT6 ADC2+TIM4触发+DMA(DMA2_Stream2_CH1)+DMA中断会死机(取消中断后完全正常)
CUBEIDE1.19.0
stm32支持canfd和dma结合使用吗
NUCLEO-F401RE板卡,连接USB,在KEIL下可以找到ST-LINK仿真器,也可以下载代码。在电脑上看不到NODE_F401RE的磁盘,有知道是什么原因?
用逻辑分析仪或者示波器看一下波形,是不是SDA或者CLK一直拉低导致到。如果是,说明之前的操作有异常导致的。在操作前重新初始化IIC,再进行正常操作。
从而被认为总线在工作busy。