电子产业一站式赋能平台

PCB联盟网

搜索
查看: 2032|回复: 1
收起左侧

[作业已审核] 智慧第六次作业-I2C,SPI调试

[复制链接]

6

主题

27

帖子

237

积分

一级会员

Rank: 1

积分
237
发表于 2021-1-11 20:00:02 | 显示全部楼层 |阅读模式
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,不要写错了。
③不能在读写回调函数里调用中断读或者写函数

the 6th.zip

2.49 MB, 下载次数: 2, 下载积分: 联盟币 -5

回复

使用道具 举报

24

主题

355

帖子

1677

积分

版主

Rank: 3Rank: 3

积分
1677
QQ
发表于 2021-1-13 09:20:10 | 显示全部楼层
这是由于0xA1|0x01等于0xA1,0xA0|0x01也等于0xA1,所以结果一样,总结的很好,非常不错
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表