使用CubeMX生成的STM32G0B1工程,通过I2C读取EEPROM时,TXIS位一直保持0,导致无法发送从机地址。 调用的函数时:HAL_I2C_Mem_Read(&hi2c1, EEPROM_ADDRESS | EEPROM_READ, address, I2C_MEMADD_SIZE_16BIT, pOutBuff, outBuffLen, 100); address为16位长度的。 根据手册,TXIS位发送中断状态位,在主发送模式时,当每个字节发送完成后,TXIS位才置1。那么I2C初始化完成后,TXIS位默认为0,在I2C_RequestMemoryRead()函数中先调用I2C_WaitOnTXISFlagUntilTimeout()检查TXIS位不是永远会失败吗? 该如何解决? |
明白第一个TXIS怎么来的了,发送从机地址来的,之前看错了 |
mcu iic问题:mcu作为i2c-slave, main函数内循环打印,收到 i2c get 时,循环打印停止了是什么原因?
adc采集电压
关于使用STM32G030C8T6的串口收发过程中串口接收问题
STM32G0B1的CAN自动重发
用stm32cubeide生成的STM32G030F6P6代码只要一开中断,任何中断程序都会跑飞.
STM32G0B1CBT6 双Bank升级,运行Bank2上Flash不能写问题
有关STM32G0B1RET6芯片FLASH擦除问题
STM32G030烧录程序
Stm32G071 i2c slave配置问题
STM32G030 不能下载程序 0xFFFF0040