MPU6050相关材料.docx

上传人:b****8 文档编号:12794840 上传时间:2023-06-08 格式:DOCX 页数:15 大小:161.23KB
下载 相关 举报
MPU6050相关材料.docx_第1页
第1页 / 共15页
MPU6050相关材料.docx_第2页
第2页 / 共15页
MPU6050相关材料.docx_第3页
第3页 / 共15页
MPU6050相关材料.docx_第4页
第4页 / 共15页
MPU6050相关材料.docx_第5页
第5页 / 共15页
MPU6050相关材料.docx_第6页
第6页 / 共15页
MPU6050相关材料.docx_第7页
第7页 / 共15页
MPU6050相关材料.docx_第8页
第8页 / 共15页
MPU6050相关材料.docx_第9页
第9页 / 共15页
MPU6050相关材料.docx_第10页
第10页 / 共15页
MPU6050相关材料.docx_第11页
第11页 / 共15页
MPU6050相关材料.docx_第12页
第12页 / 共15页
MPU6050相关材料.docx_第13页
第13页 / 共15页
MPU6050相关材料.docx_第14页
第14页 / 共15页
MPU6050相关材料.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

MPU6050相关材料.docx

《MPU6050相关材料.docx》由会员分享,可在线阅读,更多相关《MPU6050相关材料.docx(15页珍藏版)》请在冰点文库上搜索。

MPU6050相关材料.docx

MPU6050相关材料

MPU-60X0对陀螺仪和加速度计分别用了三个16位的ADC将其测量的

模拟量转化为可输出的数字量。

为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250,±500,±1000,

±2000°/秒(dps),加速度计可测范围为±2,±4,±8,±16g。

由于本人也处于学习阶段,翻译的可能不太准确,只能表达一下简单的意思,以官方数据手册为准。

引御编号

MPU4000MPUb«064

引脾霁称

描述

1

Y

Y

CLKIN

町选的外部时钟输入.如果不用则连aGND

6

Y

Y

AUXDA

I2C主串行数据「川于外接传感器

1

¥

Y

AUXCL

I2C主串行时钟•用手针接传感器

8

Y

/CS

SPI片选〔0二SPImode>

8

¥

VLOGIC

数字I/O供电电斥

9

Y

ADO/SDO

I2CSlave地址LSBfADOh

SPI串行数据输出(EDO)

9

¥

ADO

I2CS怕ve地址LSBfADO)

10

Y

Y

REGOUT

校准滤波电容连线

11

Y

Y

FSYNC

顿同步数字输入

12

Y

Y

INT

中断数字输出(推挽或开漏>

13

Y

Y

VDD

电源电压及数字I/O供电电压

18

Y

Y

GND

电源地

1I9,21,22

Y

Y

RESV

预留,不接

20

Y

Y

CPOUT

电荷泵电容连线

23

Y

SCUSCLK

I2C串行时钟(SCL):

SPI串祁时钟(SCLK)

23

Y

SCL

I2C串厅时钟(SCL)

24

Y

SDA/SDI

I2C串行数(SDA):

SPI串行数据输入<SDh

24

Y

SDA

I2C串行数据^SDA)

2.3.4,5J4,

15,16,17

Y

Y

NC

不接

引脚说明

VDD供电电压为2.5V±5%3.0V±5%3.3V±5%VDDIO为1.8V±5%

内建振荡器在工作温度范围内仅有±1%频率变化。

可选外部时钟输入32.768kHz或19.2MHz

找出几个重要的寄存器:

1)Register25-SampleRateDivider

(SMPRT_DIV

Type;Read/Wriie

Regjstw(Hex!

Register

{D«ebal)

Bitr

B怖

'Bits

Bil4

BM

Bit2

Ktl

Bit#

$9

25

SMPLRTJ叩

1)SMPLRT_DIV8位无符号值,通过该值将陀螺仪输出分频,得到采样频率

该寄存器指定陀螺仪输出率的分频,用来产生MPU-6OX0勺采样率。

传感器寄存器的输出、FIFO输出、DMP采样和运动检测的都是基于该采样率。

采样率的计算公式

采样率=陀螺仪的输出率/(1+SMPLRT_DIV)

当数字低通滤波器没有使能的时候,陀螺仪的输出率等于

8KHZ反之等于1KHZ

2)Register26-Configuration

(CONFIG

Type:

Read/Write

(Hex)

Register(Decimal)

BW

Bite

BhS

Bh4

Bit!

Bhl

BM

lA

EXTJWC^SETipO]

DLPFJ词2;D|

1)EXT_SYNC_SET位无符号值,配置帧同步引脚的采样

 

2)DLPF_CFG3位无符号值,配置数字低通滤波器

该寄存器为陀螺仪和加速度计配置外部帧同步(FSYNC引脚采样和数字低通滤波器(DLPF)。

通过配置EXT_SYNC_SET可以对连接到FSYNC引脚的一个外部信号进行采样。

FSYNC引脚上的信号变化会被锁存,这样就能捕获到很短的频闪信号。

采样结束后,锁存器将复位到当前的FSYNC言号状态。

根据下面的表格定义的值,采集到的数据会替换掉数据寄存器中上次接收到的有效数据

EXTSYNCSET

FSYNCBitLocation

0

Inputdisabled

1

TEMPOUTL10]

2

GYROXOUTL[0]

3

GYROYOUTL[01

4

GYROZOUTL[D]

5

ACCELXOUTL[0]

6

ACCELYOUTL[0]

1

ACCELZOUTLI01

数字低通滤波器是由DLPF_CF碌配置,根据下表中DLPF_CFG勺值对加速度传感器和陀螺

仪滤波

DLPF_CFG

Accelerometer(F,=IkHzJ

Gyroscope

Bandwidth(Hz>

Delay(ms)

Bandwidth(Hz)

Defay(ms)

Fs(kHz)

0

260

0

256

0.98

8

1

184

2.0

188

1.9

1

2

94

3,0

98

2.3

1

3

44

4.9

42

4.8

1

4

21

8.5

20

8.3

1

5

10

13.8

10

13.4

1

6

5

1I9.0

5

1&6

1

7

RESERVED

IRESERVED

8

3)

(GYRO_CONFIG

Register27-GyroscopeConfiguration

4)

Type:

Read/Write

Register(呦

IRegSstei(Decinial)

IBhS

歇3

飾2

Bill

IB

27

X6ST

1YG*T

ZGST

FS_SELI[10]

9

—:

 

这个寄存器是用来触发陀螺仪自检和配置陀螺仪的满量程范围。

 

和ZGSTbits可以激活陀螺仪对应轴的自检。

每个轴的检测可以独立进行或同时进行。

 

在MPU-6000/MPU-6050数据手册的电气特性表中已经给出了每个轴的限制范围。

当自检的响应值在规定的范围内,就能够通过自检;反之,就不能通过自检。

根据下表,FS_SEL选择陀螺仪输出的量程:

FSSEL

FulllScaleRange

0

±250嗨

1

±50D

2

±1000°/s

3

±2000

5)

(ACCEL_CONFI)

Register28-AccelerometerConfiguration

6)

Type:

Read/Write

R西btwIKei)

妊刨牝rID蝕Imai)

Bit/

Bits

Bit4

6it3

BW

iBrtl

BitO

28

XAST

VA_ST

■■

ZAST1

1AFSSE屮0]

 

根据下表,AFS_SEL选择加速度传感器输出的量程。

AFSSEL

FulllScaleRange

0

1

2

±

3

±IIeg

具体细节和上面陀螺仪的相似。

7)Registers59to64-AccelerometerMeasurements(ACCEL_XOUT_HACCEL_XOUT_L,

ACCEL_YOUT_H,ACCEL_YOUT_L,ACCEL_ZOUT_H,andACCEL_ZOUT_L

Type:

ReadOnly

r:

Regisiei(Hen}

Regk苗r

(Decimal1

Bit?

Bil5

Bii4

Bin

&h?

Bitl

B刖

36

59

ACCEL,XOUT[16:

fl|

3C

60

ACCELXOmp0]

j迪

ei

ACCELYOUT[l5:

e)

3E

63

ACCEL¥OUT[70|

3F

63

ACCELJOUTlISei

40

64

1

[ACCELZOUT[7:

q

1)ACCEL_XOUT16位2's补码值。

存储最近的X轴加速度感应器的测量值。

2)ACCEL_YOUT16位2's补码值。

存储最近的丫轴加速度感应器的测量值。

3)ACCEL_ZOUT16位2's补码值。

存储最近的Z轴加速度感应器的测量值。

这些寄存器存储加速感应器最近的测量值。

加速度传感器寄存器,连同温度传感器寄存器、陀螺仪传感器寄存器和外部感应数据寄

存器,都由两部分寄存器组成(类似于STM32F10X系列中的影子寄存器):

一个内部寄存

器,用户不可见。

另一个用户可读的寄存器。

内部寄存器中数据在采样的时候及时的到更新,仅在串行通信接口不忙碌时,才将内部寄存器中的值复制到用户可读的寄存器中去,避免了直接对感应测量值的突发访问。

在寄存器28中定义了每个16位的加速度测量值的最大范围,对于设置的每个最大范围,都对应一个加速度的灵敏度ACCEL_xOUT如下面的表中所示:

AFSSIEL

FiuilllScaleRange

LSBSensitivity

0

±2g

16384LSBfg

1

±4g

8192LSB/g

2

±8g

4096LSB/g

3

±l6g

2043LSB/g

8)Registers65and66-TemperatureMeasurement(TEMP_OUT_HndTEMP_OUT_L

Type:

ReadOnly

(Hex)

(DecimalJ

Bii7

B怖

Bits

BIt4

Bin

Bhf

Ktl

Bitfl

41

&5

TEMP^0iJTI15:

Si

42

&6

1)TEMP_OUT16位有符号值。

存储的最近温度传感器的测量值。

 

GYRO_YOUT_H,GYRO_YOUT_L,GYRO_ZOUT_H,andGYRO_ZOUT_L

Type:

ReadOnly

R料i軌制

)h«k3

(Decimal)

BiM

Bi恬

BirS

BiM

6ft3

Bit2

Bfti

BitO

43

67

GVRO,XOUT|1S:

$]

68

QYRO^XOUTPOI

4&

69

4$

70

GYROVOtrT[701

47

71

GYROzouTiisa]

72

GYROZOUT{701

这个和加速度感应器的寄存器相似

对应的灵敏度:

FSSEL

FullScaleRange

LSBSensitivity

0

±2507S

131LSBr/S

1

士5D0対

65.5LSB/^/S

2

士10007S

32.8LSB/7S

3

±2000Vs

16.4LSB/*/S

(PWR_MGMT_1

8)Register107-PowerManagement1

Type:

Read/Write

RegjstH

R骂居怡I(Decirnal)

Bjt?

Bh5

Bill

Bid

Bid

Bid

BitD

66

OEVfce.RESET

SLEEP

CYCLE

=

吒1MPP$

CLK陡遐q

该寄存器允许用户配置电源模式和时钟源。

它还提供了一个复位整个器件的位,和一个关闭温度传感器的位

1)DEVICE_RESET置1后所有的寄存器复位,随后DEVICE_RESE自动置0.

3)CYCLE

当CYCLE被设置为1且SLEEP没有设置,MPU-60X0进入循环模式,为

了从速度传感器中获得采样值,在睡眠模式和正常数据采集模式之间切换,每次获得一个

采样数据。

LP_WAKE_CTRL108)寄存器中,可以设置唤醒后的采样率和被唤醒的频率。

 

时钟源的选择:

CLKSEL

ClockSource

0

Internal8MHzoscillator

1

PLLwithXaxisgyroscopereferenee

2

PLLwithYaxisgyroscopereference

3

PLLwithZaxisgyroscopereference

4

PLLwithexternal32,768kHzreference

5

PLLwithexternal19.2MHzreference

6

Reserved

7

Stopsthedockandkeepsthetiminggeneralorinreset

(WHO_AM_I

9)Register117-WhoAmI

Type:

ReadOnly

Register(H«x)

IRegisier(Dedm^rl)

Btl?

Bi怡

Bit5

BH4

Bit!

Bh2

Bit!

BiW

?

5

111?

I

I

WHO_AM_I中的内容是MPU-60X0的6位I2C地址

上电复位的第6位到第1位值为:

110100

为了让两个MPU-6050能够连接在一个I2C总线上,当AD0引脚逻辑低电平时,设备的地址

MPU-6000可以使用SPI和I2C接口,而MPU-6050只能使用I2C,其中I2C的地址由ADO引

 

 

2000deg/s)*/

 

自检,2G,5Hz)*/

 

#defineACCEL_XOUT_L0x3C#defineACCELYOUTH0x3D#defineACCELYOUTL0x3E#defineACCEL_ZOUT_H0x3F

#defineACCEL_ZOUT_L0x40

 

#defineTEMP_OUT_L0x42

 

#definePWR_MGMT_10x6B//

电源管理,典型值:

0x00(正常启用)*/

编程时用到的关于I2C协议规范:

信号

描述

s

卄始标志:

SCL为卜SDA的卜•降沿

AD

从栈备地址(Slave地址)

W

「q数据位9)

R

i£数据位'1)

ACK

应答fn:

亿弟9个讨仲周期SCL为injll]*SDA対te

NACK

拒绝血答:

在第9个时钟周期.SDAliJF;』

RA

MPU-60X0内部寄心器地址

CATA

1/

血动救据变化数搠有效SCLIII

~~ir\SDAfI[

图1I2C总线通信毎议

要求两条总线线路一条串行数据线SDA—条串行时钟线SCL

IC传送过程中,其地址(slaveraddress)是7bits

送入SDA中的每个字节长度必须是8-bits,在IIC总线上,START信号后,一个从地址(slaveaddress)被传送,在该字节中的bit7是一个读写选择信号,

“0”表示写,“1”表示读。

但在实际中传送的地址是8bits的

1.(数据的有效性)SDA线上的数据必须在时钟的高电平周期保持稳定数据线的高或低电平状态只有在SCL线的时钟信号是低电平时才能改变。

2.(起始和停止条件)当SCL线是高电平时,SDA线从高电平向低电平切换,这个情况表示起始条件。

当SCL线是高电平时,SDA线由低电平向高电平切换表示停止条件。

3.(总线空闲状态)DA和SCL两条信号线都处于高电平,即总线上所有的器件都释放总线,两条信号线各自的上拉电阻把电平拉高;

4.(数据传输与应答信号ACK)发送到SDA线上的数据必须是8位的。

每次传输可以发送的数据不受限制。

每个字节后必须在时钟的第9个脉冲期间释放数据总线(SDA为高),由接收器发送一个ACK(把数据总线的电平拉低)来表示数据成功接收。

在起始条件之后,发送一个7位的从机地址,紧接着第8位是数据方向(R/W),0-表示发

送数据(写),1-表示接收数据(读)。

数据传输一般由主机产生的停止位(P)终止。

一个字节(为slaveaddress由7位地址和一位R/W读写位组成的,这字节是个器件地址。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2