Max30100 可穿戴光電式的血氧心率傳感器IC 總體描述: Max30100是一款集成的脈搏血氧和心率檢測傳感器。它使用了兩個LED燈,一個用來優(yōu)化光學的光電探測器,和低噪聲模擬信號處理器,用來檢測脈搏的血氧和心率信號。 Max30100的運行電壓在1.8V到3.3V之間,并且可以通過軟件來控制,待機電流極小,可以忽略不計,這樣可以使電源在如何時候都能保持連接狀態(tài)。
應用: - 可穿戴設備;
- 健身設備;
- 醫(yī)療監(jiān)控設備;、
Benefts和功能 集成的LED,照片傳感器和高性能模擬面前端小x 2.8毫米2.8毫米5.6毫米14-Pin光學增強System-in-Package - 超低功耗操作增加電池壽命,可穿戴設備可編程采樣率和當前電力儲蓄超低關閉當前(0.7,typ)
- 先進的功能提高了測量性能的高SNR提供了健壯的運動工件彈性集成環(huán)境光消除高采樣率能力快速數(shù)據(jù)輸出能力
Table1 寄存器圖表及其描述 詳細描述: 1、中斷狀態(tài)寄存器(基地址0x00) 總共有5個中斷狀態(tài),每個中斷狀態(tài)控制都是一樣的:高電平的相關中斷使能,直到中斷被清除,中斷才停止。 無論什么時候,只要中斷寄存器被讀或者中斷寄存器被觸發(fā),中斷都會被清除。例如:如果SpO2傳感器被觸發(fā)當轉(zhuǎn)換完成,讀到FIFO的數(shù)據(jù)寄存器或者中斷引腳的中斷寄存器被清除,中斷狀態(tài)寄存器會被清除,中斷寄存器為0. - 、Bit7:FIFO數(shù)據(jù)填滿了的標志(A_FULL)
在SpO2和心率的模式下,當FIFO的寫指針和讀指針都被減去一時就會被觸發(fā),這也是說明FIFO只有一個數(shù)字沒有填滿。如果FIFO的數(shù)據(jù)在下一個轉(zhuǎn)換之前沒有被讀出,那么FIFO的數(shù)據(jù)就會丟失。 - 、Bit6:片內(nèi)溫度讀標志位(TEMP_RDY)
當內(nèi)部溫度傳感器的數(shù)據(jù)轉(zhuǎn)換完成,這個中斷就會被觸發(fā),此時處理器就可以讀溫度的數(shù)據(jù)寄存器了。 - 、Bit5:心率數(shù)據(jù)完成標志位(HR_RDY)
在心率或者SpO2模式下,當每個數(shù)據(jù)都被搜集后,這個中斷就會被觸發(fā)。一個心率數(shù)據(jù)只是由一個紅外(IR)數(shù)據(jù)組成。當FIFO數(shù)據(jù)寄存器被讀后,這個中斷就會被自動的觸發(fā)。 - 、Bit4:SpO2數(shù)據(jù)完成標志位(SPO2_RDY)
在SpO2的模式下,當每次的數(shù)據(jù)都被轉(zhuǎn)換完成這個中斷就會被觸發(fā)。一個SpO2的數(shù)據(jù)由一個紅外(IR)和一個紅光的點組成。當FIFO數(shù)據(jù)寄存器被讀后,這個中斷就會被自動的觸發(fā)。 省略 在開機或者低功耗狀態(tài)下,當電源電壓在過低鎖定(UVLO)之下或者之上,控制器(IC)開機并且數(shù)據(jù)收集完成,這個中斷就會被觸發(fā)。 2、中斷使能寄存器(基地址0x01) 在MAX30100 IC里,每一個硬件中斷的來源都可以使用軟件寄存器來控制其不使能狀態(tài),除了電源準備完成中斷。開機中斷不能被打斷,因為在MAX30100復位時,默認狀態(tài)下是不使能的。 當中斷使能位被設置成0的時候,相應的中斷在其寄存器中是1(上一個介紹),但是INT引腳不是低電平(相反電平)。(B3:B0設置為0)
3、FIFO寄存器(基地址 0x02—0x05)  ①、FIFO寫指針寄存器(FIFO Write Pointer)(FIFO_WR_PTR基地址 0x02) FIFO寫指針指向MAX30100寫的下一個數(shù)據(jù)或命令的位置。這個指針把每一個數(shù)據(jù)或者命令放進FIFO中。當 MOD[2:0]被設置的時候,也可以通過IIC總線的方式進行改變。 ②、FIFO溢出計數(shù)器寄存器(OVF_COUNTER基地址 0x03) 當FIFO寄存器的數(shù)據(jù)記滿數(shù)據(jù),采樣的數(shù)據(jù)將溢出FIFO寄存器,并且數(shù)據(jù)將會丟失。OVF_COUNTER 會保存溢出的數(shù)據(jù)。保存在0xF中。當所有的數(shù)據(jù)從FIFO中取出,OVF_COUNTER就會被置零。 ③、FIFO 讀指針寄存器(FIFO_RD_PTR基地址 0x04) FIFO讀指針指向處理器通過IIC總線從FIFO通道獲取的下一個數(shù)據(jù)。每次只從FIFO取出一個數(shù)據(jù)。當在讀數(shù)據(jù)的時候,控制器也可以使用這個寄存器來寫命令或者數(shù)據(jù)到FIFO中,如果FIFO的數(shù)據(jù)傳輸出現(xiàn)錯誤,也可以重新從其讀出樣本。 ④、FIFO數(shù)據(jù)寄存器(FIFO_DATA基地址 0x05) 循環(huán)的FIFO是16位的數(shù)據(jù)存儲,能夠存儲16個SPO2通道數(shù)據(jù)(Red 和 IR)。FIFO_DATA寄存器在IIC寄存器的映射下指向從FIFO中讀出的下一個數(shù)據(jù)。FIFO_RD_PTR(FIFO讀數(shù)據(jù)指針)指向這個數(shù)據(jù)。FIFO_DATA寄存器不會自動增加其地址值,因此會反復讀取這個地址的數(shù)據(jù)。每一個樣本是4字節(jié)的數(shù)據(jù),因此得到一個樣本需要讀取4次的FIFO_DATA寄存器。理論上上面的所有寄存器都可以進行讀取或者寫入數(shù)據(jù),但是在實際上,只有FIFO_RD_PTR寄存器才可以進行寫入操作。其他的寄存器的數(shù)據(jù)只能自動增加或者由MAX30100進行填充(填滿)。當開始一個新的SPO2或者心率轉(zhuǎn)換,我們希望FIFO_RD_PTR、OVF_COUNTE、FIFO_WR_PTR寄存器能夠被清零,以確保FIFO是空并且是已知的狀態(tài)。當從IIC讀取MAX30100寄存器時,地址指針寄存器就會自動的增加,那么讀取的字節(jié)就是下一個寄存器發(fā)送的。FIFO_DATA寄存器不是這樣的,他的指針不會增加。在FIFO數(shù)據(jù)寄存器中下一個被發(fā)送的數(shù)據(jù)就是下一個可用的數(shù)據(jù)。
正常情況下,在一個IIC總線數(shù)據(jù)傳輸事件中,因為寄存器地址可用自動增加,所以一次數(shù)據(jù)傳輸可用讀取所有的寄存器。除了FIFO_DATA寄存器,其他的都可以這樣讀取。地址0xFF寄存器的數(shù)據(jù)沒有意義。 - FIFO數(shù)據(jù)結(jié)構(gòu)
FIFO的數(shù)據(jù)存儲器由16個IR和RED的ADC數(shù)據(jù)樣本存儲塊組成。每一個樣本由一個IR字和一個RED字,總共有4個這樣的字節(jié)數(shù)據(jù)組成。因此FIFO數(shù)據(jù)由4*16=64字節(jié)的數(shù)據(jù)組成。 每一個樣本數(shù)據(jù)由一個IR和一個RED數(shù)據(jù)字(2個寄存器)組成,因此每次讀取一個樣本,需要4個IIC字節(jié)數(shù)據(jù)讀一行。當4字節(jié)樣本被讀取完畢,F(xiàn)IFO的讀指針就會自動增加。 在心率模式下,每個樣本的第3和第4字節(jié)會被置0,但是其他的FIFO配置都是一樣的。
從FIFO讀取數(shù)據(jù)的例子,偽代碼: 第一步:得到FIFO_RD_PTR 開始; 發(fā)送器件地址 + 寫 模式 發(fā)送 FIFO_RD_PTR(地址0x04); 再次啟動開始; 發(fā)送器件地址 + 讀 模式 讀 FIFO_WR_PTR (地址0x03); 停止; 主控制器檢查從FIFO中讀取的樣本: NUM_AVAILABLE_SAMPLES = FIFO_WR_PTR – FIFO_RD_PTR(應該考慮到指針包的問題) NUM_SAMPLES_TO_READ = < NUM_AVAILABLE_SAMPLES 第二步:從FIFO讀取 NUM_SAMPLES_TO_READ 的樣本: 開始; 發(fā)送器件地址 + 寫 模式 發(fā)送 FIFO_DATA 地址(0x05); 重新開始; 發(fā)送器件地址 + 寫 模式 for( i = 0 ;i< NUM_SAMPLES_TO_READ;i++) { 讀 FIFO_DATA; 保存 IR[15:8]; 讀 FIFO_DATA; 保存 IR[7:0]; 讀 FIFO_DATA; 保存 R[15:8]; 讀 FIFO_DATA; 保存 R[15:8]; } 停止; 第三步:寫FIFO_RD_PTR寄存器。如果第二步成功了,在FIFO中的FIFO_RD_PTR指針就會指向下一個樣本,那么第三步就不是特別重要了。否則控制器適當?shù)乃⑿翭IFO_RD_PTR寄存器,因此這個樣本就是重新讀取。 開始; 發(fā)送器件地址 + 寫 模式 發(fā)送FIFO_RD_PTR寄存器地址(0x04); 寫FIFO_RD_PTR; 停止; 把這一位置為 1,就會設置成省電模式。當是設置成省電模式時,所有的寄存器都會保存他們當前的值,并且其讀寫功能正常。在這個模式下所有的中斷都是被清除。 當這一位被置為1,所有的配置、閥閾值及數(shù)據(jù)寄存器都會被復位到上電狀態(tài)。唯一的例外是,當溫度數(shù)據(jù)寄存器0x16和0x17沒有被清除時,并且RESET和TEMP_EN都被置1,聲明的情況不會發(fā)生。當復位完成之后RESET位會被自動置為0. 當初始化單次溫度數(shù)據(jù)從溫度傳感器讀出來之后,這一位就會被清除。在SPO2或者心率模式下,和上面一樣。 - Bit6:高分辨率采樣使能SpO2(SPO2_HI_RES_EN)
這位設置為1,SpO2的ADC就會設置成16位采樣,LED脈沖為1.6ms(頻率625Hz) - Bit5:復位,默認設置為0
- Bit4:2 :SpO2采樣率設置
這一位被定義為有效掃描率控制,一個掃描由一個IR脈沖/轉(zhuǎn)換和一個RED轉(zhuǎn)換組成。 采樣率和脈沖寬度是相關的,樣本速率在脈沖寬度的時間內(nèi)設置一個上界。如果用戶選擇的樣本率對于選定的ledpw設置來說太高了,那么可能的最高樣本率將被編入寄存器中。 這些位設置了LED脈沖寬度(IR和紅色具有相同的脈沖寬度),因此間接地設置了每個樣本中ADC的集成時間。ADC的分辨率與集成時間直接相關。 這一位設置紅色LED的電流大。ǖ燃墸 這一位設置紅外LED的電流大。ǖ燃墸。 - 溫度數(shù)據(jù)寄存器(基地址0x16、0x17)
ADC采樣的溫度數(shù)值被分為兩個部分,一個是整數(shù)部分,一個是分數(shù)部分。下面是其計算公式。 整數(shù)部分以二進制補碼的形式存放在整數(shù)寄存器中(0x16) - 溫度小數(shù)數(shù)據(jù)寄存器(基地址0x17)
小數(shù)部分的數(shù)據(jù)以0.0625℃(1/16步進)
以上的Word格式中文翻譯文檔51黑下載地址:
max30100.docx
(807.93 KB, 下載次數(shù): 294)
2018-9-25 20:17 上傳
點擊文件名下載附件
max30100寄存器翻譯 下載積分: 黑幣 -5
|