|
1、I2C轮询方式中的疑问:
/* USER CODE BEGIN 2 */
HAL_I2C_Mem_Write(&hi2c1, 0xA0, 0x00, 3, tx, 3, 0xffff);
HAL_Delay(50);
HAL_I2C_Mem_Read(&hi2c1, 0xA1, 0x00, 3, rx, 3, 0xffff);
HAL_Delay(50);
/* USER CODE END 2 */
在读的函数中,从设备的地址0xA1,能成功读取到EEPROM中的值,老师用的0xA0,也能读取到,为什么两个都能成功?
2、I2C中断方式编程心得:
①I2C模式写和读之后,一定要延时,等待从设备处理数据,否则不会成功。
②I2C中断API函数参数为是I2C_MEMADD_SIZE_16BIT,不要写错了。
③不能在读写回调函数里调用中断读或者写函数
|
|