個人部落格:
qmc5883l
源於honeywell
的hmc5883l
,是一款表面貼裝的整合了訊號處理電路的三軸磁性感測器,應用場景主要包括羅盤、導航、無人機、機械人和手持裝置等一些高精度的場合。
外形如下圖所示:
外觀以下是
qmc5883l
的內部原理圖:
內部原理圖
模組定義:
amr bridge
:三軸磁性感測器
mux:多路復用通道
pga:可程式設計控制的感測器訊號增益放大器
signal conditioning
:進行磁場訊號校正及補償的數字模組
adc:
16位的模數轉換器
i2c:匯流排形式
nvm:用於校正的非易失性儲存器
set/rst driver
:用於初始化磁性感測器的內部驅動
reference
:用於內部偏移的電壓
/電流基準
clock gen.
:內部振盪器,用於內部操作
por:上電復位
temperature sensor
:用於內部精度
/偏移的溫度感測器,也可以用於測量溫度並輸出
qmc5883l
有兩種工作模式:連續測量模式和待命模式。
連續測量模式:
此模式下,磁性感測器連續進行測量並把測量資料置於資料輸出暫存器中。測量資料的偏移和溫度的影響將會自動得到補償。
ø正常情況下的讀順序:
1、檢查
drdy
引腳或輪詢狀態暫存器
(06h)
中drdy
位的狀態
2、讀取測量資料,資料暫存器被讀取的同時,
drdy
和dor被置0
3、資料暫存器一旦被讀取,資料保護將啟動。直到最後乙個資料暫存器
(05h)
被讀取,資料保護才會被解除。其流程圖如下:
正常情況下的讀順序
ø測量時讀取
測量過程中讀取的將是之前測量過並儲存過的資料,並且這一次測量完成後
drdy
將不會被置
「1」,即這一次測量的資料丟失掉了。
測量時讀取
ø資料未讀取
如果第n
個資料被跳過,當前的資料將會被接下來的資料覆蓋掉,此種情形下,
drdy
保持高電平直到資料被讀取,
dor被置
「1」,表示有一串資料丟失,同樣,下一次讀取操作後
dor將被置
資料未讀取
ø資料鎖定直至下次測量結束
只要任意乙個資料暫存器被讀取,所有測量資料將處於被鎖定狀態。如果下一次測量結束後,最後乙個資料暫存器
(05h)
仍未被讀取,資料暫存器將會拒絕新資料更新當前資料的操作,注意看下圖,新資料將會被丟失。此類情形下,
dor將會被置
「1」,直至下下次資料被讀取。
資料鎖定直至下次測量結束
待命模式:
qmc5883l
上電後預設為待命模式。此狀態下,暫存器值將會通過乙個超低功耗的
ldo保持,對任意暫存器的讀寫操作都將會喚醒
i2c匯流排介面。內部時鐘被停止,同時也不會進行磁場測量。
以下是qmc5883l
的暫存器列表:
暫存器列表
00h~05h
是資料暫存器,分別存放的是三軸感測器的x、
y和z軸的值,每兩個暫存器構成乙個軸的高低位元組,表示範圍:
-32768~32768
。06h
是狀態暫存器,當感測器資料已測量完畢並準備好
drdy
位被置「1」
,資料暫存器一旦被讀取,
drdy
位將被置
「0」。
ovl是溢位位,當有任意乙個軸的測量值超過範圍,
ovl將被置
「1」,當下一次測量不超測量範圍時,
ovl將會被置
「0」。當處於連續模式下測量資料被跳過時
dor被置
「1」,而當資料暫存器被讀寫後置
「0」。
07h~08h
存放的是
qmc5883l
內建的溫度感測器的輸出資料。這裡需要注意的是溫度感測器的增益出廠前校正過,但偏移沒有得到補償,所以,溫度感測器測得的相對值是準確的。溫度係數
100 lsb/℃。
09h~0ah
是qmc5883l
的控制暫存器。
09h設定工作模式
(mode)
、資料輸出更新頻率
(odr)
、感測器測量範圍
(rng)
以及過取樣率
(osr)
。0ah
設定中斷使能
(int_enb)
、點翻轉使能
(pol_pnt)
以及軟復位
(soft_rst)
。09h
暫存器的設定如下圖所示:
暫存器設定
int_enb
被置「0」
時,中斷引腳(即
drdy)
將被使能,置
「1」時中斷被禁止。
rol_pnt
被置「0
」時,i2c
匯流排介面將不會自動在
00h~06h
間翻轉,置「
1」時自動翻轉。
soft_rst
被置「1」
時對qmc5883l
進行軟復位,軟復位可以發生於任何模式下的任何時段,軟復位發生後所有暫存器將會被置預設值。
0bh控制
qmc5883l
的設定/
復位時間,推薦值是設定為
0x01
。0dh
是器件標識暫存器,其值為
0xff
。
hive hql文件 HIVE說明文件
sql 查詢功能,可以將sql 語句轉換為 mapreduce 任務進行執行,通過自己的 sql去查詢分析需要的內容,這套 sql簡稱 hive sql,使不熟悉 mapreduce 的使用者很 方便的利用 sql語言查詢,彙總,分析資料。hive 適用性 它與關係型資料庫的 sql略有不同,但支援...
Mantis安裝說明文件
在錯誤追蹤系統中,mantis絕對是個輕量級的工具,無論安裝還是配置或使用,正如它自己的目標中所宣稱的。但是,對乙個中小型的專案來言,功能夠用。mantis是乙個基於php mysql web的開源的錯誤追蹤系統,以下安裝教程假設系統已經安裝好了apache php mysql的執行系統,如何安裝這...
Vue 基礎說明文件
vue是乙個mvvm框架,model view viewmodel 例項出的物件 el 檢視模型,頁面節點 data 所使用的變數,或者初始值 裡面通常放屬性 methods dom渲染完執行,通常是放view中需要響應的函式 解析資料 變數,函式,表示式 一 指令 1,v html v text ...