由于目前项目赶得很紧,不啰嗦了,直接入题。
MCU:GD32F450IIH6
主频:180MHz
系统:uC/OS-III
软件库:HAL
问题描述:
上电初始化,相关任务都正常。后来加入设备参数初始化,即从EEPROM(24C64)芯片里读出所存储的参数。我的参数分12组,每组4个参数,每个参数2字节。连续读6组都正常,超过6组发现IIC报总线BUSY错误。
由于此前MCU使用STM32F429,没出现上述问题,于是互换了两个主板的24C64问题依旧,排除买到水货问题。
既然读6组无事,再读就多报BUSY,于是降速50K,上述问题不再出现;突发奇想,增速到200K,300K,350K上述问题也不再出现。改回100K问题重现(没仔细测试,应该是80-120K这个范围都存在这个问题)。
因为项目进度要求,没有时间深挖原因,但需要重视,毕竟后续大量项目要换成这个芯片。在此贴出来,如果哪位朋友遇到过这个问题,请多交流。 |