不知道什么原因调用I2C_AcknowledgeConfig(DISABLE);和 I2C_GenerateSTOP(DISABLE);会清除PE标志;所以以上调试结果都是在注释掉这两语句后调试的结果。硬件IIC是经过映射的,也按照提示做过初始化IIC软复位。
热门产品 :
CH32V317: 互联型青稞RISC-V MCU
不知道什么原因调用I2C_AcknowledgeConfig(DISABLE);和 I2C_GenerateSTOP(DISABLE);会清除PE标志;所以以上调试结果都是在注释掉这两语句后调试的结果。硬件IIC是经过映射的,也按照提示做过初始化IIC软复位。
您好,这两行代码全都注释掉是肯定会出问题的,I2C_AcknowledgeConfig(DISABLE);需要在读最后一个字节前调用,I2C_GenerateSTOP(DISABLE);需要用来结束IIC读写过程;除了这两处一定要用到这两行代码外,其他地方可以不再调用。
建议用逻辑分析仪抓波形看下这两行代码在什么时候调用会清掉PE标志,正常使用是不会导致PE异常的。