一、型號(hào)
我看了一下型號(hào)為 GY-521 MPU6050模塊 三維角度傳感器6DOF 三軸加速度計(jì)電子陀螺儀
可在官網(wǎng)下載最新的芯片手冊(cè)和寄存器映射和描述,參看:MPU6050 官網(wǎng)
二、查看芯片手冊(cè)
(1)產(chǎn)品簡(jiǎn)介
MPU-60X0是世界上第一款集成 6 軸MotionTracking設(shè)備。它集成了3軸MEMS陀螺儀,3軸MEMS加速度計(jì),以及一個(gè)可擴(kuò)展的數(shù)字運(yùn)動(dòng)處理器 DMP( DigitalMotion Processor),可用I2C接口連接一個(gè)第三方的數(shù)字傳感器,比如磁力計(jì)。擴(kuò)展之后就可以通過(guò)其 I2C或SPI接口輸出一個(gè)9軸的信號(hào)( SPI接口僅在MPU-6000可用)。 MPU-60X0也可以通過(guò)其I2C接口連接非慣性的數(shù)字傳感器,比如壓力傳感器。
MPU-60X0對(duì)陀螺儀和加速度計(jì)分別用了三個(gè)16位的ADC,將其測(cè)量的模擬量轉(zhuǎn)化為可輸出的數(shù)字量。為了精確跟蹤快速和慢速的運(yùn)動(dòng),傳感器的測(cè)量范圍都是用戶可控的,陀螺儀可測(cè)范圍為±250, ±500, ±1000, ±2000°/秒( dps),加速度計(jì)可測(cè)范圍為±2, ±4,±8, ±16g。
一個(gè)片上1024字節(jié)的FIFO,有助于降低系統(tǒng)功耗。和所有設(shè)備寄存器之間的通信采用 400kHz的 I2C接口或 1MHz的 SPI接口( SPI僅MPU-6000可用)。 對(duì)于需要高速傳輸?shù)膽?yīng)用, 對(duì)寄存器的讀取和中斷可用 20MHz的SPI。另外,片上還內(nèi)嵌了一個(gè)溫度傳感器和在工作環(huán)境下僅有±1%變動(dòng)的振蕩器。芯片尺寸4×4×0.9mm,采用QFN封裝(無(wú)引線方形封裝),可承受最大 10000g的沖擊,并有可編程的低通濾波器。
關(guān)于電源, MPU-60X0可支持 VDD范圍 2.5V±5%, 3.0V±5%,或 3.3V±5%。另外MPU-6050還有一個(gè) VLOGIC引腳,用來(lái)為 I2C輸出提供邏輯電平。 VLOGIC電壓可取1.8±5%或者VDD。
(2)產(chǎn)品特征
數(shù)字輸出6軸或9軸的旋轉(zhuǎn)矩陣、四元數(shù)(quaternion)、歐拉角格式(EulerAngleforma)的融合演算數(shù)據(jù)。
具有131 LSBs/°/sec 敏感度與全格感測(cè)范圍為±250、 ±500、 ±1000與±2000°/sec 的3軸角速度感測(cè)器(陀螺儀)。
可程式控制,且程式控制范圍為±2g、 ±4g、 ±8g和±16g的3軸加速器。
移除加速器與陀螺儀軸間敏感度,降低設(shè)定給予的影響與感測(cè)器的飄移。
數(shù)字運(yùn)動(dòng)處理(DMP:DigitalMotion Processing)引擎可減少?gòu)?fù)雜的融合演算數(shù)據(jù)、 感測(cè)器同步化、 姿勢(shì)感應(yīng)等的負(fù)荷。 運(yùn)動(dòng)處理數(shù)據(jù)庫(kù)支持 Android、 Linux與Windows 內(nèi)建之運(yùn)作時(shí)間偏差與磁力感測(cè)器校正演算技術(shù),免除了客戶須另外進(jìn)行校正的需求。
以數(shù)位輸出的溫度傳感器
以數(shù)位輸入的同步引腳(Syncpin)支援視頻電子影相穩(wěn)定技術(shù)與GPS
可程式控制的中斷(interrupt)支援姿勢(shì)識(shí)別、搖攝、畫(huà)面放大縮小、滾動(dòng)、快速下降中斷、 high-G中斷、零動(dòng)作感應(yīng)、觸擊感應(yīng)、搖動(dòng)感應(yīng)功能。
VDD供電電壓為2.5V±5%、 3.0V±5%、 3.3V±5%; VDDIO為1.8V±5%
陀螺儀運(yùn)作電流: 5mA, 陀螺儀待命電流: 5uA; 加速器運(yùn)作電流: 500uA, 加速器省電模式電流: 40uA@10Hz
高達(dá) 400kHz 快速模式的 I2C,或最高至 20MHz 的 SPI 串行主機(jī)接口(serial hostinterface)
內(nèi)建振蕩器在工作溫度范圍內(nèi)僅有±1%頻率變化。 可選外部時(shí)鐘輸入 32.768kHz或19.2MHz
(3)使用說(shuō)明
《1》引腳輸出和信號(hào)描述
《2》典型用法
《3》所需電容規(guī)格
需要了解的小知識(shí)點(diǎn):
電容的基本單位是F(法拉),其它單位還有:毫法(mF)、微法(uF)、納法(nF)、皮法(pF)。
由于單位F 的容量太大,所以我們看到的一般都是μF、nF、pF的單位。
換算:1F=1000000μF,1μF=1000nF=1000000pF
電容規(guī)格:Ceramic, X7R, 0.1μF ±10%, 2V 是什么意思呢?
參看:全系列電容規(guī)格書(shū)
Ceramic
陶瓷介質(zhì)
X7R
溫度系數(shù)/特性:工作溫度范圍 -55℃~125℃ (軍工級(jí))
元器件級(jí)別主要是指其工作溫度范圍,如下:
商業(yè)級(jí):0℃~+70℃
工業(yè)級(jí):-40℃~+85℃
汽車(chē)級(jí):-40℃~125℃
軍品級(jí):-55℃~+125℃
0.1μF ±10%
0.1μF 容量,容差是±10%
2V
額定電壓,以此也可以選擇電容尺寸
三、電路圖
到此,硬件部分看完了!!
/
上面簡(jiǎn)單的介紹了 MPU6050,里面有好多概念不明白,3軸、6軸、9軸、加速度計(jì)、磁力針、DMP等等。
都是什么玩意。。。啊!!這道題我不會(huì)做,太難了!
帶著這些問(wèn)題,繼續(xù)看芯片手冊(cè)。
一、概述
MPU-60X0由以下幾個(gè)關(guān)鍵塊和功能組成:
1、帶有16位ADC和信號(hào)調(diào)理的三軸MEMS速率陀螺儀傳感器
2、具有16位ADC和信號(hào)調(diào)理的三軸MEMS加速度傳感器
3、數(shù)字運(yùn)動(dòng)處理器(DMP)引擎
4、主I2C和SPI(僅MPU-6000)串行通信接口
5、用于第三方磁力計(jì)和其他傳感器的輔助I2C串行接口
6、時(shí)鐘
7、傳感器數(shù)據(jù)寄存器
8、FIFO
9、中斷
10、數(shù)字輸出溫度傳感器
11、陀螺儀和加速度計(jì)自檢
12、偏見(jiàn)和LDO
13、充電泵
其系統(tǒng)結(jié)構(gòu)圖:
接下來(lái)就一一的開(kāi)始看。
二、帶有16位ADC和信號(hào)調(diào)理的三軸MEMS陀螺儀
MPU-60X0由三個(gè)獨(dú)立的振動(dòng)MEMS速率陀螺儀組成,可檢測(cè)旋轉(zhuǎn)角度X軸,Y軸和Z軸。 當(dāng)陀螺儀圍繞任何感應(yīng)軸旋轉(zhuǎn)時(shí),科里奧利效應(yīng)就會(huì)產(chǎn)生電容式傳感器檢測(cè)到的振動(dòng)。 所得到的信號(hào)被放大,解調(diào)和濾波產(chǎn)生與角速度成比例的電壓。 該電壓使用單獨(dú)的片內(nèi)數(shù)字化16位模數(shù)轉(zhuǎn)換器(ADC)對(duì)每個(gè)軸進(jìn)行采樣。 陀螺儀傳感器可以全面范圍的被數(shù)字編程為每秒±250,±500,±1000或±2000度(dps)。 ADC樣本速率可以從每秒8,000個(gè)采樣點(diǎn)編程到每秒3.9個(gè)采樣點(diǎn),并且可由用戶選擇低通濾波器可實(shí)現(xiàn)廣泛的截止頻率。
三、具有16位ADC和信號(hào)調(diào)理的三軸MEMS加速度計(jì)
MPU-60X0的3軸加速度計(jì)為每個(gè)軸使用單獨(dú)的檢測(cè)質(zhì)量。 加速沿著一條特定軸在相應(yīng)的檢測(cè)質(zhì)量上引起位移,并且電容式傳感器檢測(cè)到該位移位移有差別。 MPU-60X0的架構(gòu)降低了加速度計(jì)的敏感度制造變化以及熱漂移。 當(dāng)設(shè)備放置在平坦的表面上時(shí),將進(jìn)行測(cè)量在X和Y軸上為 0g,在Z軸上為+ 1g。 加速度計(jì)的比例因子在工廠進(jìn)行校準(zhǔn)并且在名義上與電源電壓無(wú)關(guān)。 每個(gè)傳感器都有一個(gè)專(zhuān)用的sigma-delta ADC來(lái)提供數(shù)字輸出。 數(shù)字輸出的滿量程范圍可以調(diào)整到±2g,±4g,±8g或±16g。
四、數(shù)字運(yùn)動(dòng)處理器(DMP)
嵌入式數(shù)字運(yùn)動(dòng)處理器(DMP)位于MPU-60X0內(nèi)部,可從主機(jī)處理器中卸載運(yùn)動(dòng)處理算法的運(yùn)算。 DMP從加速度計(jì),陀螺儀以及其他第三方傳感器(如磁力計(jì))獲取數(shù)據(jù),并處理數(shù)據(jù)。結(jié)果數(shù)據(jù)可以從DMP的寄存器中讀取,或者可以在FIFO中緩沖。 DMP可以訪問(wèn)其中的一個(gè)MPU的外部引腳,可用于產(chǎn)生中斷。
DMP的目的是卸載主機(jī)處理器的時(shí)序要求和處理能力。通常,運(yùn)動(dòng)處理算法應(yīng)該以高速運(yùn)行,通常在200Hz左右,以提供低延遲的精確結(jié)果。即使應(yīng)用程序以更低的速率更新,這也是必需的。例如,一個(gè)低功率的用戶界面可能會(huì)以5Hz的速度更新,但運(yùn)動(dòng)處理仍然應(yīng)該以200Hz運(yùn)行。 DMP可以作為一種工具使用,以最大限度地降低功耗,簡(jiǎn)化定時(shí),簡(jiǎn)化軟件架構(gòu),并在主機(jī)處理器上節(jié)省寶貴的MIPS,以便在應(yīng)用中使用。
五、主要 I2C 和 SPI 串行通信接口
MPU-60X0使用 SPI(僅MPU-6000)或 I2C 串行通信至系統(tǒng)處理器接口。 與系統(tǒng)處理器通信時(shí),MPU-60X0始終充當(dāng)從屬設(shè)備。 LSB的 I2C 從地址的地址由引腳9(AD0)設(shè)置(一般接地)。
MPU-60X0與其主機(jī)之間的通信邏輯電平如下:
MPU-6000:與主機(jī)通信的邏輯電平由VDD上的電壓設(shè)置
MPU-6050:與主機(jī)通信的邏輯電平由VLOGIC上的電壓設(shè)置
六、輔助I2C串行接口
MPU-60X0 具有一個(gè)輔助 I2C 總線,用于與片外3軸數(shù)字輸出磁力計(jì)進(jìn)行通信或其他傳感器。
兩種工作模式:
I2C Master Mode,此時(shí)MPU-60X0作為主設(shè)備與外接傳感器通信;
Pass-Through Mode, 此時(shí)僅用作連接, 允許MPU和外接傳感器同時(shí)和芯片通信。
因?yàn)槲覜](méi)有用到磁力針,這部分不詳講。
到此就搞清楚了:
GY-521MPU6050 是三維角度傳感器,為全球首例集成六軸傳感器的運(yùn)動(dòng)處理組件。
這里的六軸,代表的是它內(nèi)置了一個(gè)三軸 MEMS 陀螺儀、一個(gè)三軸 MEMS 加速度計(jì),一個(gè)數(shù)字運(yùn)動(dòng)處理引擎(DMP)。它還有用于第三方的數(shù)字傳感器接口的輔助 I2C 串行接口,比如當(dāng)輔助 I2C 串行接口連接到一個(gè)三軸磁力計(jì),MPU6050 能提供一個(gè)完整的九軸融合輸出到其主 I2C 端口。
下圖標(biāo)明了傳感器的參考坐標(biāo)系( XYZ組成右手系)以及 3個(gè)測(cè)量軸和旋轉(zhuǎn)方向。
旋轉(zhuǎn)的正向可用右手螺旋定則判斷
七、內(nèi)部時(shí)鐘生成
MPU-60X0具有靈活的時(shí)鐘方案,允許多種內(nèi)部或外部時(shí)鐘源用于內(nèi)部同步電路。這個(gè)同步電路包括信號(hào)調(diào)理和
ADC,DMP以及各種控制電路和寄存器。片內(nèi)PLL提供了靈活性允許輸入產(chǎn)生這個(gè)時(shí)鐘。
產(chǎn)生內(nèi)部時(shí)鐘的允許的內(nèi)部源是:
內(nèi)部張弛振蕩器
任何X,Y或Z陀螺(在整個(gè)溫度范圍內(nèi)變化±1%的MEMS振蕩器)
允許的外部時(shí)鐘源是:
32.768kHz方波
19.2MHz方波
生成內(nèi)部同步時(shí)鐘源的選擇取決于外部的可用性來(lái)源以及對(duì)功耗和時(shí)鐘精度的要求。這些要求將是最多的可能因操作模式而異。例如,在一種模式中,最關(guān)心的是電量消耗,用戶可能希望操作MPU-60X0的數(shù)字運(yùn)動(dòng)處理器進(jìn)行處理加速計(jì)數(shù)據(jù),同時(shí)保持陀螺儀關(guān)閉。在這種情況下,內(nèi)部張弛振蕩器是一個(gè)好時(shí)鐘選擇。但是,在另一種陀螺儀激活的模式下,選擇陀螺儀作為時(shí)鐘源提供更精確的時(shí)鐘源。時(shí)鐘精度非常重要,因?yàn)闀r(shí)序誤差直接影響數(shù)字運(yùn)動(dòng)處理器(以及任何處理器的擴(kuò)展)執(zhí)行的距離和角度計(jì)算。還有啟動(dòng)條件要考慮。當(dāng)MPU-60X0首次啟動(dòng)時(shí),設(shè)備使用其內(nèi)部時(shí)鐘,直到編程從另一個(gè)來(lái)源操作。這允許用戶例如等待使MEMS振蕩器在被選為時(shí)鐘源之前穩(wěn)定下來(lái)。
八、傳感器數(shù)據(jù)寄存器
傳感器數(shù)據(jù)寄存器包含最新的陀螺儀,加速度計(jì),輔助傳感器和溫度測(cè)量數(shù)據(jù)。 它們是只讀寄存器,可通過(guò)串行接口訪問(wèn)。 這些寄存器的數(shù)據(jù)可以隨時(shí)讀取。 但是,可以使用中斷函數(shù)來(lái)確定新數(shù)據(jù)何時(shí)可用。
九、FIFO
MPU-60X0包含一個(gè)可通過(guò)串行接口訪問(wèn)的1024字節(jié)FIFO寄存器。 FIFO配置寄存器決定哪個(gè)數(shù)據(jù)寫(xiě)入FIFO。 可能的選擇包括陀螺儀數(shù)據(jù),加速計(jì)數(shù)據(jù),溫度讀數(shù),輔助傳感器讀數(shù)和 FSYNC 輸入。 FIFO 計(jì)數(shù)器跟蹤 FIFO 中包含的有效數(shù)據(jù)字節(jié)數(shù)。 FIFO寄存器支持突發(fā)讀取。 中斷功能可用于確定新數(shù)據(jù)何時(shí)可用。
十、中斷
中斷功能通過(guò)中斷配置寄存器進(jìn)行配置。 可配置的項(xiàng)目包括INT引腳配置,中斷鎖存和清除方法以及中斷觸發(fā)器。 可觸發(fā)中斷的項(xiàng)目有:
(1)時(shí)鐘發(fā)生器鎖定到新的參考振蕩器(用于切換時(shí)鐘源);
(2)可以讀取新數(shù)據(jù)(來(lái)自FIFO和數(shù)據(jù)寄存器);
(3)加速度計(jì)事件中斷;
(4)MPU-60X0 沒(méi)有收到輔助傳感器的確認(rèn)I2C總線。
中斷狀態(tài)可以從中斷狀態(tài)寄存器讀取。
十一、數(shù)字輸出溫度傳感器
片上溫度傳感器和ADC用于測(cè)量MPU-60X0芯片溫度。 ADC的讀數(shù)可以從FIFO或傳感器數(shù)據(jù)寄存器讀取。
十二、偏壓和LDO
偏壓和LDO部分產(chǎn)生MPU-60X0所需的內(nèi)部電源和參考電壓和電流。 其兩個(gè)輸入是一個(gè)2.375至3.46V的未調(diào)整VDD和一個(gè)1.71V至VDD(僅MPU-6050)的VLOGIC邏輯參考電源電壓。 在REGOUT,LDO輸出被一個(gè)電容旁路。
十三、電荷泵
板載電荷泵產(chǎn)生MEMS振蕩器所需的高電壓。 其輸出在CPOUT旁邊被一個(gè)電容旁路。