
uboot初始化IIC1,跳转到应用程序中后,先读一字节AT24C04的数据,然后初始化IIC1(未复位),再读一字节AT24C04时,有概率一直检测到IIC处于busy状态。 IIC1总线只有STM32F405RGT6和AT24C04,IIC总线有10K的上拉电阻。 以下三种方式可降低出busy的概率: 1)跳转到应用程序中后,若先进行IIC1初始化(未复位),再去读一字节数据则正常; 2)跳转到应用程序中后,若IIC1初始化前,先复位一下,则后续读一字节数据正常; 3)跳转到应用程序中后,若不再初始化IIC1,则IIC通信正常。 但仍不清楚为什么原本程序有概率出现busy的状态。 |
关于昆明如何开具建筑装修费发票-昆明本地宝
关于青岛如何开具建筑装修费发票-青岛本地宝
关于兰州如何开具建筑装修费发票-兰州本地宝
关于济南如何开具建筑装修费发票-济南本地宝
关于海口如何开具建筑装修费发票-海口本地宝
关于三亚如何开具建筑装修费发票-三亚本地宝
关于深圳如何开具建筑装修费发票-深圳本地宝
关于哪里如何开具建筑装修费发票-本地宝
关于呼和浩特如何开具装饰费发票-呼和浩特本地宝
关于温州如何开具装饰费发票-温州本地宝
用逻辑分析仪或者示波器看一下波形,是不是SDA或者CLK一直拉低导致到。如果是,说明之前的操作有异常导致的。在操作前重新初始化IIC,再进行正常操作。
从而被认为总线在工作busy。