OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4549|回复: 0

请教一下大家,关于IIC-DMA的改写问题

[复制链接]

209

主题

771

帖子

0

精华

初级会员

Rank: 2

积分
136
金钱
136
注册时间
2018-3-26
在线时间
287 小时
发表于 2022-10-10 10:59:55 | 显示全部楼层 |阅读模式
10金钱
请教一下大家,关于IIC-DMA的改写问题,我之前用的HAL库的IIC阻塞函数进行存储器的读写,没有问题
  1. pBuffer=0x1C;
  2. HAL_I2C_Mem_Write(&hi2c1,LSM6DS3_ACC_GYRO_I2C_ADDRESS_LOW,LSM6DS3_CTRL2_G_REG,1,&pBuffer, 1, 0x2000);HAL_Delay(1);
  3. HAL_I2C_Mem_Read(&hi2c1, LSM6DS3_ACC_GYRO_I2C_ADDRESS_LOW, LSM6DS3_CTRL2_G_REG, 1,&pBufferkk,1, 0x2000);
  4. printf("0x%02X  ",pBufferkk);
复制代码
可以输出0X1C;
但是我改用IIC_DMA的方式则输出不正确
  1. pBuffer=0x1C;
  2. HAL_I2C_Mem_Write_DMA(&hi2c1,LSM6DS3_ACC_GYRO_I2C_ADDRESS_LOW,LSM6DS3_CTRL2_G_REG,1,&pBuffer, 1);HAL_Delay(1);
  3. HAL_I2C_Mem_Read_DMA(&hi2c1, LSM6DS3_ACC_GYRO_I2C_ADDRESS_LOW, LSM6DS3_CTRL2_G_REG, 1,&pBufferkk,1);
  4. printf("0x%02X  ",pBufferkk);
复制代码
这样只能输出0X00,这是为什么?是函数我用的不正确吗?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 01:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表