5 W806 的 I2C 底层函数求问

发布于 2022-10-21 10: 45: 11

想问下 W806 底层提供的 I2C 库函数中的
HAL_I2C_Write (I2C_HandleTypeDef hi2c, uint8_t DevAddress, uint8_t MemAddress, uint8_t pData, uint16_t Size)

HAL_I2C_Read (I2C_HandleTypeDef hi2c, uint8_t DevAddress, uint8_t MemAddress, uint8_t pData, uint16_t Size)
这两个函数是要向从设备某个地址写入数据和读出数据嘛, 如果我现在只想这样通讯: 设备地址+写; 传感器运行命令 (8 位地址) +读取传感器返回的数据; 这样的还能使用底层提供的函数嘛, 就是对这个底层提供的函数的参数不是很明白, 每个写操作和读操作必须要两个地址和一个数据嘛? 这个 Write 和 Read 的前两个地址可以是一样的嘛;

例如: bh1750 发送读取高分辨率测量指令, 读取光照度数据; 这样对吗
HAL_I2C_Write (&hi2c, 0x46, 0x10, 0x47, 1) ;
HAL_I2C_Read (&hi2c, 0x47, 0x10, lightBuf, 2) ;

查看更多

关注者
0
被浏览
2. 4k
isme
isme 认证专家 2022-10-21
冰镇大西瓜

这里的 I2C 是软件模拟的, 具体实现是在 platform/drivers/wm_i2c. c 你要的接口都在里面.
image. png

1 个回答

撰写答案

请登录后再发布答案, 点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览