OpenEdv-开源电子网

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

三轴加速度传感器中读ADXL345寄存器 为何要temp=IIC_Wait_Ack();

[复制链接]

4

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2013-7-22
在线时间
0 小时
发表于 2013-9-3 11:36:41 | 显示全部楼层 |阅读模式

  三轴加速度传感器中读ADXL345寄存器

//读ADXL345寄存器
//addr:寄存器地址
//返回值:读到的值
u8 ADXL345_RD_Reg(u8 addr)   
{
 u8 temp=0;  
 IIC_Start();      
 IIC_Send_Byte(ADXL_WRITE); //发送写器件指令 
 temp=IIC_Wait_Ack();   
    IIC_Send_Byte(addr);     //发送寄存器地址
 temp=IIC_Wait_Ack();                   
 IIC_Start();          //重新启动
 IIC_Send_Byte(ADXL_READ); //发送读器件指令 
 temp=IIC_Wait_Ack();   
    temp=IIC_Read_Byte(0);  //读取一个字节,不继续再读,发送NAK         
    IIC_Stop();     //产生一个停止条件     
 return temp;    //返回读到的值

红色部分  为何要把应答值赋给temp,最后temp不就是读取的值吗,和应答信号有什么关系

将来的你,一定会感谢现在拼命努力的自己!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-9-3 15:46:30 | 显示全部楼层
回复【楼主位】摩托贵族:
---------------------------------
可以不复制给temp,实际没什么用。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2013-7-22
在线时间
0 小时
 楼主| 发表于 2013-9-3 15:47:37 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
 谢谢 原子哥
将来的你,一定会感谢现在拼命努力的自己!
回复 支持 反对

使用道具 举报

14

主题

1592

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2622
金钱
2622
注册时间
2014-7-17
在线时间
350 小时
发表于 2014-8-29 14:28:10 | 显示全部楼层
回复【3楼】摩托贵族:
---------------------------------
我也感觉这句奇怪~~
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-2 03:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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