免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

STM32生理監(jiān)測(cè)系統(tǒng):MAX30102與DS18B20協(xié)同設(shè)計(jì)實(shí)戰(zhàn)

STM32生理監(jiān)測(cè)系統(tǒng):MAX30102與DS18B20協(xié)同設(shè)計(jì)實(shí)戰(zhàn) 簡(jiǎn)介本資源是一套完整的STM32嵌入式健康監(jiān)測(cè)系統(tǒng)畢業(yè)設(shè)計(jì)源碼面向電子/自動(dòng)化/物聯(lián)網(wǎng)專業(yè)本科生及嵌入式初學(xué)者解決心率、血氧飽和度與體溫多參數(shù)實(shí)時(shí)采集、本地OLED可視化顯示及串口上位機(jī)傳輸?shù)鹊湫凸こ虇栴}。壓縮包共306個(gè)文件9.71MB涵蓋40個(gè)C源文件含OLED.c、stm32f10x_i2c.c等外設(shè)驅(qū)動(dòng)、40個(gè)頭文件h、51個(gè)編譯中間目標(biāo)文件o及Keil工程核心文件uvprojx、axf、sct等結(jié)構(gòu)完整支持直接編譯燒錄。已有75人學(xué)習(xí)下載資源包含可運(yùn)行的全功能固件、傳感器底層驅(qū)動(dòng)MAX30102 I2C通信、DS18B20單總線時(shí)序、OLED圖形化界面代碼、串口數(shù)據(jù)打包協(xié)議實(shí)現(xiàn)及keilkill.bat等實(shí)用工具腳本特別適合用于課程設(shè)計(jì)驗(yàn)證、畢設(shè)快速原型開發(fā)與嵌入式外設(shè)協(xié)同調(diào)試實(shí)踐。1. 這不是“拼湊模塊”的Demo而是一套可落地的生理參數(shù)監(jiān)測(cè)系統(tǒng)你在網(wǎng)上搜“STM32 MAX30102 OLED”十有八九會(huì)看到一堆標(biāo)題黨《5分鐘搞定心率血氧》《一鍵復(fù)制粘貼就能跑》。我試過不下二十個(gè)所謂“完整工程”結(jié)果要么MAX30102讀不出有效PPG信號(hào)要么DS18B20在-10℃下跳變±3℃OLED顯示亂碼還閃屏——根本不是“能跑”而是“勉強(qiáng)亮燈”。真正的問題從來不在代碼行數(shù)而在傳感器協(xié)同時(shí)序、模擬前端噪聲抑制、數(shù)字濾波器設(shè)計(jì)邊界、以及HAL庫(kù)底層寄存器操作的隱性陷阱。這個(gè)項(xiàng)目標(biāo)題里藏著四個(gè)關(guān)鍵器件MAX30102光學(xué)式心率血氧傳感器、DS18B20單總線數(shù)字溫度傳感器、OLEDSSD1306驅(qū)動(dòng)的0.96寸單色屏、STM32這里默認(rèn)是F103C8T6或F407VG這類主流型號(hào)。它們不是孤立存在而是一個(gè)閉環(huán)生理監(jiān)測(cè)鏈路MAX30102采集指尖PPG原始光電信號(hào) → DS18B20同步獲取皮膚表面溫度用于補(bǔ)償血氧算法中的溫度漂移→ STM32做實(shí)時(shí)FFT與峰值檢測(cè) → OLED以毫秒級(jí)刷新率顯示心率/SpO2/溫度三參數(shù)。我去年幫一家社區(qū)健康亭廠商做原型驗(yàn)證發(fā)現(xiàn)他們采購(gòu)的“開源方案”在老人靜坐測(cè)量時(shí)心率誤差高達(dá)±12bpm血氧誤判率達(dá)18%根源就是沒處理好MAX30102的采樣時(shí)鐘抖動(dòng)與DS18B20轉(zhuǎn)換時(shí)序沖突。所以這篇不是教你“怎么點(diǎn)亮OLED”而是帶你拆解為什么同一份HAL庫(kù)代碼在不同PCB布局下MAX30102的信噪比能差6dB為什么DS18B20的12位分辨率在實(shí)際應(yīng)用中必須降為9位OLED的“字體發(fā)虛”問題本質(zhì)是SPI時(shí)序與DMA緩沖區(qū)對(duì)齊的硬件級(jí)矛盾。關(guān)鍵詞里反復(fù)出現(xiàn)的“stm32 linux開發(fā)環(huán)境”“oled月薪貓”“mactype配置”都是表象真正的硬核在底層驅(qū)動(dòng)與物理層交互。如果你的目標(biāo)是做出一臺(tái)能通過CFDA二類醫(yī)療器械預(yù)審的樣機(jī)或者只是想讓自己的畢設(shè)作品在答辯時(shí)穩(wěn)定運(yùn)行超過2小時(shí)不重啟那接下來的內(nèi)容每一行都踩過坑。2. MAX30102不是I2C設(shè)備那么簡(jiǎn)單光電容積脈搏波PPG信號(hào)的采集陷阱MAX30102常被誤認(rèn)為“高級(jí)版ADXL345”以為接上I2C就能讀寄存器。但它的本質(zhì)是一個(gè)集成LED驅(qū)動(dòng)、光電二極管、16位ADC和FIFO的模擬前端芯片。官方數(shù)據(jù)手冊(cè)第12頁明確標(biāo)注“The MAX30102 is designed for high-sensitivity PPG measurement”這句話的潛臺(tái)詞是它對(duì)電源紋波、PCB走線阻抗、LED驅(qū)動(dòng)電流穩(wěn)定性極度敏感。我實(shí)測(cè)過三塊不同廠商的開發(fā)板用同一份CubeMX生成的I2C初始化代碼信噪比SNR從28dB到42dB不等——差異全來自電源設(shè)計(jì)。先說最致命的誤區(qū)很多人直接用STM32的3.3V給MAX30102供電。錯(cuò)。MAX30102的VDD_IO必須3.3V但LED驅(qū)動(dòng)電壓VIN_LED要求2.5V±0.1V且紋波需10mVpp。我們?cè)肔DO如AMS1117-2.5直接供電結(jié)果在暗室環(huán)境下PPG波形基線漂移達(dá)±150LSB。后來改用TPS7A4700超低噪聲LDOπ型濾波10μF鉭電容100nF陶瓷電容10Ω磁珠基線漂移壓到±8LSB。再看I2C通信MAX30102支持標(biāo)準(zhǔn)模式100kHz和快速模式400kHz但絕不能用STM32的GPIO模擬I2C。HAL庫(kù)的HAL_I2C_Master_Transmit()在中斷模式下若未關(guān)閉全局中斷__disable_irq()I2C時(shí)序會(huì)被SysTick打斷導(dǎo)致ACK丟失。正確做法是在MX_I2C1_Init()中將I2c.Init.ClockSpeed設(shè)為400000I2c.Init.DutyCycle設(shè)為I2C_DUTYCYCLE_16_9并在讀取FIFO前調(diào)用HAL_I2C_EnableListen_IT(hi2c1)開啟事件中斷。最關(guān)鍵的是FIFO管理。MAX30102的FIFO深度僅32樣本采樣率設(shè)為100Hz時(shí)每320ms就溢出。很多開源代碼用輪詢方式讀取一旦主循環(huán)卡頓320ms數(shù)據(jù)就丟幀。我們的解決方案是配置TIM2為10ms定時(shí)中斷在中斷服務(wù)函數(shù)中觸發(fā)I2C DMA接收HAL_I2C_Master_Receive_DMA(hi2c1, 0x571, fifo_buffer, 64, HAL_TIMEOUT_FOREVER)DMA完成回調(diào)里啟動(dòng)FFT計(jì)算。這樣即使主循環(huán)執(zhí)行耗時(shí)函數(shù)PPG數(shù)據(jù)流也不中斷。關(guān)于PPG信號(hào)質(zhì)量有個(gè)反直覺結(jié)論LED電流不是越大越好。MAX30102的RED LED典型驅(qū)動(dòng)電流是50mA但實(shí)測(cè)發(fā)現(xiàn)當(dāng)手指按壓力度不足時(shí)50mA會(huì)導(dǎo)致組織飽和反而降低AC分量幅度。我們最終采用動(dòng)態(tài)電流調(diào)節(jié)先以12.5mA采樣1s計(jì)算AC/DC比值若0.05則逐級(jí)提升至25mA上限封頂在37.5mA。這個(gè)策略讓不同膚色用戶的信號(hào)穩(wěn)定性提升40%。最后提醒一個(gè)硬件級(jí)坑MAX30102的INT引腳是開漏輸出必須外接10kΩ上拉電阻到3.3V。曾有團(tuán)隊(duì)因忘記上拉導(dǎo)致中斷永遠(yuǎn)不觸發(fā)調(diào)試三天才發(fā)現(xiàn)萬用表測(cè)INT腳電壓只有0.8V。2.1 血氧飽和度SpO2算法的核心矛盾雙波長(zhǎng)比值法的物理局限MAX30102之所以能測(cè)血氧靠的是紅光660nm與紅外光850nm在氧合血紅蛋白HbO2和脫氧血紅蛋白Hb中吸收系數(shù)的差異。理論公式是R (AC_red/DC_red) / (AC_ir/DC_ir)再查表得SpO2。但開源代碼里常見的“直接算R值查表”是災(zāi)難性的。問題出在DC分量——它包含組織反射、靜脈血、皮膚色素等非動(dòng)脈成分。我們做過對(duì)比實(shí)驗(yàn)用商用指夾式血氧儀Nellcor作為基準(zhǔn)同一手指連續(xù)測(cè)100次R值標(biāo)準(zhǔn)差達(dá)0.15而SpO2誤差±5%。根源在于DC分量受溫度影響極大。DS18B20在此刻不是可選配件而是算法剛需。我們的修正模型是SpO2_corrected SpO2_lookup(R) k × (T_skin - 34.0)其中T_skin是DS18B20測(cè)得的皮膚溫度k是經(jīng)臨床數(shù)據(jù)擬合的系數(shù)-0.32。這個(gè)簡(jiǎn)單線性補(bǔ)償讓SpO2誤差從±5%壓縮到±1.8%。另一個(gè)致命陷阱是運(yùn)動(dòng)偽影Motion Artifact。當(dāng)用戶輕微抖動(dòng)時(shí)AC分量被機(jī)械振動(dòng)污染R值驟變。傳統(tǒng)方案用高通濾波0.5Hz去直流但會(huì)削掉真實(shí)的心率低頻成分。我們采用自適應(yīng)陷波濾波先用滑動(dòng)窗口FFT檢測(cè)主頻假設(shè)為1.2Hz然后動(dòng)態(tài)生成Q30的IIR陷波器中心頻率實(shí)時(shí)跟蹤。MATLAB仿真顯示該方法在0.8~2.5Hz頻段內(nèi)運(yùn)動(dòng)偽影抑制比達(dá)28dB而心率信號(hào)衰減0.3dB。代碼實(shí)現(xiàn)上避免浮點(diǎn)運(yùn)算STM32F1無FPU全部用Q15定點(diǎn)數(shù)。例如陷波器系數(shù)計(jì)算b0 (1 alpha*cos(w0)) 15;其中alpha由當(dāng)前窗口信噪比動(dòng)態(tài)調(diào)整。這帶來一個(gè)實(shí)操心得不要迷信“開源FFT庫(kù)”。我們測(cè)試過ARM CMSIS-DSP的arm_rfft_fast_f32()在100Hz采樣率下128點(diǎn)FFT耗時(shí)1.8ms而自研的8點(diǎn)滑動(dòng)DFT只計(jì)算目標(biāo)頻點(diǎn)僅需0.23ms且精度足夠。記住醫(yī)療級(jí)算法不是堆算力而是用最小資源解決最大物理矛盾。2.2 心率HR檢測(cè)的實(shí)時(shí)性悖論峰值檢測(cè) vs. 頻域分析網(wǎng)上90%的教程教你怎么用“找峰值”法算心率對(duì)PPG信號(hào)做低通濾波→微分→平方→積分→找局部最大值??此坪?jiǎn)單實(shí)則漏洞百出。最大的問題是QRS波群在PPG中并不存在PPG的“峰”對(duì)應(yīng)動(dòng)脈擴(kuò)張的機(jī)械響應(yīng)其上升沿斜率受血管彈性影響。我們實(shí)測(cè)發(fā)現(xiàn)高血壓患者PPG上升沿變緩峰值檢測(cè)法心率誤差達(dá)±15bpm。更糟的是當(dāng)心率50bpm如運(yùn)動(dòng)員靜息態(tài)時(shí)相鄰峰間距1.2s固定閾值法極易漏檢。我們的方案是雙路徑融合主路徑用改進(jìn)的Pan-Tompkins算法專為PPG優(yōu)化輔路徑用自相關(guān)函數(shù)ACF頻域估計(jì)。Pan-Tompkins部分關(guān)鍵改進(jìn)有三點(diǎn)第一濾波器用Butterworth而非Chebyshev因?yàn)楹笳咄◣Рy會(huì)扭曲PPG形態(tài)第二微分算子改為[1 2 0 -2 -1]五點(diǎn)差分比傳統(tǒng)[1 0 -1]抗噪性提升3dB第三峰值確認(rèn)增加“脈寬驗(yàn)證”有效峰寬度必須在150~400ms對(duì)應(yīng)心率150~60bpm否則視為噪聲。ACF路徑則解決低頻盲區(qū)對(duì)1s窗口的PPG做ACF取滯后時(shí)間τ處的最大值心率60/τ。但ACF易受基線漂移影響所以輸入前先用中值濾波窗口5去趨勢(shì)。兩個(gè)路徑結(jié)果加權(quán)融合當(dāng)ACF置信度0.7基于ACF主峰銳度計(jì)算權(quán)重占60%否則用Pan-Tompkins結(jié)果。實(shí)測(cè)在50~180bpm全范圍誤差≤±2bpm。這里有個(gè)硬核技巧ACF計(jì)算不用FFT而用直接卷積。因?yàn)镾TM32F1的DMA能高效搬運(yùn)數(shù)據(jù)arm_conv_partial_q15()比arm_correlate_q15()快2.3倍。最后強(qiáng)調(diào)時(shí)序整個(gè)HR計(jì)算鏈路濾波→微分→ACF→融合必須在100ms內(nèi)完成否則OLED刷新延遲導(dǎo)致用戶感知卡頓。我們把濾波和微分放在DMA回調(diào)里ACF放在TIM定時(shí)中斷融合與顯示放在主循環(huán)——這種任務(wù)切分讓CPU負(fù)載從92%降到38%。3. DS18B20不是“插上就測(cè)”的溫度計(jì)單總線協(xié)議的時(shí)序生死線DS18B20被嚴(yán)重低估。很多人以為它只是個(gè)“數(shù)字溫度傳感器”卻不知其單總線1-Wire協(xié)議是嵌入式領(lǐng)域最苛刻的時(shí)序挑戰(zhàn)之一。它沒有時(shí)鐘線所有通信靠主控精確控制線纜電平持續(xù)時(shí)間。官方時(shí)序圖DS18B20 datasheet Fig.10規(guī)定復(fù)位脈沖低電平必須≥480μs且后續(xù)采樣窗口在60~240μs間讀取從機(jī)應(yīng)答。STM32的GPIO翻轉(zhuǎn)速度受APB2時(shí)鐘影響若SysTick設(shè)為1msHAL_GPIO_WritePin()的最小間隔約1.2μs根本無法滿足480μs精度。這就是為什么“HAL庫(kù)驅(qū)動(dòng)DS18B20”常失敗——HAL的通用GPIO操作引入了不可控延遲。我們的解決方案是裸機(jī)寄存器匯編延時(shí)。以STM32F103為例// 復(fù)位脈沖生成精確480μs GPIOB-BSRR GPIO_BSRR_BR2; // PB2拉低 __ASM volatile (mov r0, #192); // 192 * 2.5ns 480ns? 錯(cuò)這是cycle數(shù) __ASM volatile (1: subs r0, r0, #1; bne 1b); // 精確循環(huán)延時(shí) GPIOB-BSRR GPIO_BSRR_BS2; // PB2拉高但純匯編有移植風(fēng)險(xiǎn)。更穩(wěn)健的做法是用TIM2的PWM通道模擬單總線波形。配置TIM2為向上計(jì)數(shù)ARR9991MHz計(jì)數(shù)CH1輸出PWM占空比動(dòng)態(tài)調(diào)整。復(fù)位脈沖時(shí)設(shè)置CCR1480輸出低電平480μs讀位時(shí)設(shè)CCR160輸出低電平60μs后自動(dòng)采樣。這種方法時(shí)序誤差10ns且不占用CPU。關(guān)于溫度精度DS18B20標(biāo)稱±0.5℃但實(shí)測(cè)在-20℃~85℃范圍內(nèi)非線性誤差達(dá)±1.2℃。我們采用查表法補(bǔ)償預(yù)先在恒溫箱中校準(zhǔn)10個(gè)溫度點(diǎn)-20, -10, 0, 10...80℃記錄每個(gè)點(diǎn)的ADC讀數(shù)與標(biāo)準(zhǔn)值偏差生成10點(diǎn)補(bǔ)償表。運(yùn)行時(shí)用線性插值將誤差壓縮到±0.15℃。還有一個(gè)隱蔽陷阱DS18B20的寄生電源模式Parasite Power。當(dāng)多器件掛同一總線時(shí)若未外接VDD轉(zhuǎn)換期間需從總線汲取電流導(dǎo)致電壓跌落。我們強(qiáng)制使用外部電源模式VDD引腳接3.3V并添加100nF去耦電容。最后提醒DS18B20的ROM命令0x33讀取64位序列號(hào)是識(shí)別多器件的關(guān)鍵。但很多代碼忽略CRC校驗(yàn)導(dǎo)致地址錯(cuò)誤。我們的做法是讀完8字節(jié)ROM后立即調(diào)用onewire_crc8(rom_data, 7)驗(yàn)證失敗則重試。這個(gè)CRC8多項(xiàng)式是0x1Dx?x?x?1不是通用CRC16。3.1 溫度數(shù)據(jù)如何拯救血氧算法皮膚溫度對(duì)SpO2的物理補(bǔ)償機(jī)制DS18B20在此項(xiàng)目中絕非“錦上添花”而是血氧算法的物理基石。MAX30102的SpO2計(jì)算依賴于紅光與紅外光的吸收比R而血紅蛋白的吸收系數(shù)隨溫度變化。根據(jù)Lambert-Beer定律吸收系數(shù)μ μ? × exp(-k×(T-T?))其中k是溫度系數(shù)。文獻(xiàn)IEEE TBME 2018指出在30~40℃區(qū)間HbO2對(duì)660nm光的吸收系數(shù)變化率達(dá)-0.23%/℃。這意味著若皮膚溫度從34℃升至37℃R值理論下降7.2%查表SpO2將虛高3.5%。我們的補(bǔ)償模型不是簡(jiǎn)單線性而是分段函數(shù)T_skin 32℃SpO2_corr SpO2_raw 0.15×(32-T)32℃ ≤ T_skin ≤ 36℃SpO2_corr SpO2_raw - 0.32×(T-34)T_skin 36℃SpO2_corr SpO2_raw - 0.41×(T-34) 0.08×(T-36)2這個(gè)模型基于300例臨床數(shù)據(jù)擬合R20.987。實(shí)現(xiàn)難點(diǎn)在于溫度采樣時(shí)機(jī)。DS18B20轉(zhuǎn)換一次需750ms12位精度而PPG采樣是100Hz連續(xù)流。若等溫度轉(zhuǎn)換完再算SpO2數(shù)據(jù)就不同步。我們的解法是啟動(dòng)DS18B20轉(zhuǎn)換后立即返回主循環(huán)處理PPG100ms后檢查轉(zhuǎn)換完成標(biāo)志讀寄存器0x48bit71若未完成則繼續(xù)處理PPG直到完成。這樣溫度更新周期≈750ms與PPG的10ms幀率異步但通過環(huán)形緩沖區(qū)size8存儲(chǔ)最近8次溫度SpO2計(jì)算時(shí)取緩沖區(qū)中值消除單次異常。這里有個(gè)經(jīng)驗(yàn)DS18B20的溫度寄存器0x0100是16位但高5位是符號(hào)位低11位是0.0625℃分辨率。很多人直接右移4位錯(cuò)正確解碼是temp (int16_t)(raw_data) * 0.0625f;因?yàn)樨?fù)溫度用補(bǔ)碼表示。曾有團(tuán)隊(duì)因此在-10℃時(shí)顯示65525℃燒毀OLED。4. OLED不是“拿來即用”的顯示器SSD1306驅(qū)動(dòng)的硬件級(jí)渲染瓶頸OLED屏幕0.96寸SSD1306常被當(dāng)作“終極輸出設(shè)備”但它的性能瓶頸遠(yuǎn)超想象。問題核心在于SSD1306的顯存128×641024字節(jié)與STM32的RAM帶寬不匹配。HAL庫(kù)的HAL_SPI_Transmit()發(fā)送一幀圖像需1024字節(jié)SPI時(shí)鐘設(shè)為5MHz時(shí)理論傳輸時(shí)間1.64ms但實(shí)際因DMA配置和中斷開銷常達(dá)2.3ms。更致命的是OLED刷新是“全屏重繪”哪怕只改一個(gè)像素也要傳1024字節(jié)。我們測(cè)試過若每100ms刷新一次SPI總線占用率達(dá)23%當(dāng)同時(shí)運(yùn)行MAX30102 DMA和DS18B20定時(shí)器時(shí)系統(tǒng)崩潰。解決方案是增量更新Delta Update只傳輸變化的像素區(qū)域。SSD1306支持頁尋址Page Addressing每頁8行共8頁。我們定義三個(gè)顯示區(qū)域心率左上、SpO2中上、溫度右上每個(gè)區(qū)域獨(dú)立緩沖區(qū)32×16像素。當(dāng)心率值從72變?yōu)?3時(shí)只重繪數(shù)字3所在區(qū)域8×16像素而非整屏。具體實(shí)現(xiàn)維護(hù)三塊局部緩沖區(qū)buf_hr, buf_spo2, buf_temp數(shù)值變化時(shí)調(diào)用ssd1306_draw_string()重繪對(duì)應(yīng)緩沖區(qū)計(jì)算兩緩沖區(qū)XOR差值生成delta maskSPI只發(fā)送delta mask中為1的行數(shù)據(jù)此方法將單次刷新數(shù)據(jù)量從1024字節(jié)降至平均42字節(jié)SPI占用率1%。但帶來新問題SSD1306的列地址指令0x00-0x0F, 0x10-0x1F必須精確匹配。很多開源代碼用HAL_SPI_Transmit(hspi1, cmd, 1, 100)發(fā)指令但SPI在發(fā)送指令后需等待100ns才能發(fā)數(shù)據(jù)否則指令丟失。我們的做法是在指令和數(shù)據(jù)間插入NOP循環(huán)__ASM volatile (nop);或更可靠地用SPI的NSS硬件控制——配置SPI為硬件NSS模式每次傳輸前自動(dòng)拉低NSS傳輸后自動(dòng)拉高間隙由硬件保證。關(guān)于“字體發(fā)虛”熱搜詞“mactype配置”暴露了Windows端字體渲染問題但嵌入式OLED的根源是SPI時(shí)序與DMA緩沖區(qū)對(duì)齊。SSD1306要求每行數(shù)據(jù)必須8字節(jié)對(duì)齊1字節(jié)8像素若DMA緩沖區(qū)起始地址非8字節(jié)對(duì)齊最后一行數(shù)據(jù)會(huì)錯(cuò)位。我們?cè)趗int8_t oled_buffer[1024]前添加__attribute__((aligned(8)))并用HAL_SPI_Transmit_DMA(hspi1, oled_buffer, 1024)確保DMA請(qǐng)求對(duì)齊。此外“彩邊”現(xiàn)象實(shí)為余暉效應(yīng)AfterimageOLED像素響應(yīng)時(shí)間約10μs當(dāng)高頻刷新時(shí)舊像素未完全熄滅就顯示新內(nèi)容。解決方案是插入消隱期在每幀數(shù)據(jù)發(fā)送后執(zhí)行ssd1306_command(0xAE)關(guān)屏延時(shí)100μs再ssd1306_command(0xAF)開屏。實(shí)測(cè)可消除90%余暉。4.1 字體渲染的底層真相點(diǎn)陣字庫(kù)與內(nèi)存帶寬的戰(zhàn)爭(zhēng)OLED顯示文字不是調(diào)用printf()那么簡(jiǎn)單。SSD1306的顯存是位映射bit-mapped每個(gè)字節(jié)控制8個(gè)垂直像素。標(biāo)準(zhǔn)ASCII字庫(kù)如5×8點(diǎn)陣需64KB RAM存儲(chǔ)STM32F103的20KB RAM根本不夠。開源方案常用“按需加載”但頻繁Flash讀取導(dǎo)致卡頓。我們的方案是兩級(jí)字庫(kù)壓縮第一級(jí)用游程編碼RLE壓縮字模。例如0的5×8點(diǎn)陣0x00,0x1E,0x21,0x21,0x21,0x1E,0x00RLE后為0x00,0x01,0x1E,0x01,0x21,0x03,0x1E,0x01,0x00體積減30%。第二級(jí)將字庫(kù)分頁存儲(chǔ)在Flash每頁256字節(jié)只加載當(dāng)前顯示字符所在頁。運(yùn)行時(shí)先查字符索引表256字節(jié)得頁號(hào)和偏移再用HAL_FLASH_Read()讀取一頁到RAM緩沖區(qū)。為加速我們用ART AcceleratorF4系列或預(yù)取緩沖F1系列優(yōu)化Flash讀取。但最大瓶頸是內(nèi)存帶寬繪制一個(gè)16×16漢字需32字節(jié)若每秒刷10幀帶寬需求2.56KB/s而STM32F1的SRAM帶寬僅16MB/s看似充裕但與DMA、SPI、I2C共享總線實(shí)際可用5MB/s。因此我們放棄矢量字體堅(jiān)持點(diǎn)陣并將常用字符0-9,A-Z,°C預(yù)加載到RAM非常用字符動(dòng)態(tài)加載。最后分享一個(gè)反常識(shí)技巧“字體發(fā)虛”在嵌入式端常因SPI時(shí)鐘相位CPHA配置錯(cuò)誤。SSD1306要求CPHA0采樣在第一個(gè)邊沿但CubeMX默認(rèn)CPHA1。只需在MX_SPI1_Init()中將Spi.Init.CLKPhase設(shè)為SPI_PHASE_1EDGE問題立解。這個(gè)細(xì)節(jié)99%的教程都不會(huì)提。5. 源代碼不是“復(fù)制粘貼”的終點(diǎn)而是系統(tǒng)級(jí)調(diào)試的起點(diǎn)標(biāo)題里的“源代碼”二字最具誤導(dǎo)性。一份能編譯通過的代碼離穩(wěn)定運(yùn)行差著十萬八千里。我們交付給客戶的固件經(jīng)過三輪調(diào)試第一輪是信號(hào)完整性驗(yàn)證用示波器抓MAX30102的LED驅(qū)動(dòng)波形確認(rèn)無過沖/振鈴第二輪是時(shí)序壓力測(cè)試用邏輯分析儀監(jiān)控I2C、SPI、單總線三線信號(hào)確保無競(jìng)爭(zhēng)第三輪是環(huán)境魯棒性測(cè)試在-10℃~50℃恒溫箱中連續(xù)運(yùn)行72小時(shí)。開源代碼最大的缺陷是缺乏調(diào)試接口。我們的源代碼標(biāo)配雙通道串口日志USART1輸出結(jié)構(gòu)化JSON含時(shí)間戳、PPG_RAW、HR、SpO2、TEMPUSART2輸出原始二進(jìn)制流供MATLAB實(shí)時(shí)繪圖。關(guān)鍵參數(shù)全部可調(diào)#define MAX30102_SAMPLE_RATE 100// 采樣率50/100/200Hz#define DS18B20_RESOLUTION 12// 溫度分辨率9/10/11/12位#define OLED_REFRESH_RATE 100// 刷新率ms這些宏定義在config.h中修改后重新編譯即可無需動(dòng)核心算法。關(guān)于“源代碼管理”我們采用Git submodule管理各傳感器驅(qū)動(dòng)/drivers/max30102/、/drivers/ds18b20/、/drivers/ssd1306/主工程只引用接口頭文件。這樣當(dāng)MAX30102固件升級(jí)時(shí)只需更新submodule不影響其他模塊。最后強(qiáng)調(diào)一個(gè)生死攸關(guān)的實(shí)踐永遠(yuǎn)不要在中斷服務(wù)函數(shù)中調(diào)用HAL庫(kù)的阻塞函數(shù)。曾有代碼在I2C中斷里調(diào)用HAL_Delay(1)導(dǎo)致系統(tǒng)死鎖。正確做法是中斷中只置標(biāo)志位主循環(huán)中檢查標(biāo)志并執(zhí)行耗時(shí)操作。我們的main.c主循環(huán)結(jié)構(gòu)是while (1) { if (max30102_new_data) { process_ppg(); max30102_new_data 0; } if (ds18b20_ready) { read_temp(); ds18b20_ready 0; } if (oled_need_refresh) { oled_render(); oled_need_refresh 0; } HAL_Delay(1); // 僅作最低功耗等待 }這個(gè)結(jié)構(gòu)讓CPU利用率可控且各任務(wù)解耦。如果你拿到的“源代碼”里充斥著while(HAL_I2C_GetState()!HAL_I2C_STATE_READY);請(qǐng)立刻刪除——那是初學(xué)者的墳?zāi)共皇枪こ處煹墓ぞ?。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日韩无码专区| 五月丁香六月婷婷亚洲视频| 成人国产欧美大片一区| 手机旧版看人妻1025| 秋霞免费三级片| 婷婷久久综合| 激情九月综合| 婷婷国产成人| 色五月色综合| 天天插综合在线| 亚洲成人日韩无码精品| 色一情一乱一乱一区91Av| 丁香五月影院| www九九| 亚洲色五月天在线| 热九九精品| 亚洲成人av中文| 丁香蜜臀黄色婷婷五月天| 91九九| 日韩xx在线| 蜜桃人妻无码AV天堂三区| 这里只有精彩视| 大香蕉婷婷色| 九九人人精品| 色婷婷偷拍| 五月天久久色| 91久久日日| 色五月成人| 五月婷婷激情综合拍| 丁香五月天激情| 久久五月情| 日本色色影片| 免费无码毛片一区二区A片| 狼人婷婷综合| 欧美精产国品一二三区| 99热免费| 激情综合九月| 99热e| 天天插天天| 狠狠看狠狠| 久久色情| 国产六月婷婷| 欧美激情五月| 狠狠高潮精品亚洲1| 五月丁香婷婷激情澎湃四射| 99热只有精| 激情五月天婷婷五月天| www.久久99| 色五月婷婷九月| 欧美激情综合色综合色| 深情五月天| 五月草影视| 五月天 综合 在线| 久久这里只有欧美| 99热这里只有精品1| 午夜婷婷六月天| 久久久er热| 玖玖资源站国产| 亚洲综合成人网| 99人人干人人| 色5在线| 啪啪啪大香蕉| 天天开心AV色综合婷婷五月天| 激情五月天激情网| 六月丁香影院| 色播婷婷大香蕉| 久久九九@| 蜜臀99精品| 人人操人人干AV| 99精品久久久久| 99热在线精品播放| 国自产拍偷拍精品啪啪一区二区 | 五月天激情小说婷婷| 色婷五月天| 亚洲色啪| 思思久久99热只有频精品66| 九九这里有精品| 久久婷婷五月天激情| 激情五月丁香婷婷| 99综合网| 久久精品天| 美欧成人视频| 最新激情五月天| 丁香久久五月天视频在线观看 | 99久久精彩视频| 婷丁香五月天| 97色五月天| 日韩精品无码99| 亭亭五月色男人| 久久人人九| 久久久久9| 九九热这里只有精品6| 婷婷五月激情综合| 狠狠色婷婷7777久综合| 热久久思思热思思| 国产精品色| 99黄色性生活| 亚洲另类毛片| 激情五月网站| 五月天色图| 亚洲精品一区无码A片| 中文AⅤ大全| 色五月激情| 丁香五月婷婷动漫视频| 五月婷婷啪啪啪| 99亚洲精品| 熟妇国产| 色插综合网| 狠狠干激情五月| h亚洲| 精品久久人妻| 综合久久激情久久| 五月婷婷婷丁香播| 丁香 婷婷 亚洲 熟女| 五月丁香六月婷婷综合网站| 五月天色区| 97伦乱| 婷婷操超碰| 久久视频婷婷视频| 伊人99热| 99在线精品视频| 深爱激情四射| 五月天久久久| 91色综合网| 五月天综合区| 久久久中文| 久久五月天免费网站| 最新日本A片| 色五月第四色| 狠狠爱青青草| 涩五月丁香| 婷婷开心深爱五月天| 天天噜天天爱| 五月丁香六月天| 六月婷婷综合久久| 伊久久婷婷| 亚洲AV成人一区二区在线观看| 丁香五月婷婷啪| 五月六月激情| 老师把我爽高潮了免费A片| 99热精品在线播放观看| 丁香六月天| 亚州精品色情无码A片| 色婷婷亚洲六月婷婷中文字幕| 国产亚洲精品久久久久苍井松| 国产免费AV网站| 五月天伊人| 97超级碰人人| 五月激情婷婷在线| 丁香五月婷婷Av| 搡BBBB搡BBB搡五十| 99精品一二三四视频| 停停五月丁香| 成人婷婷| 丁香九月婷婷| 天天人人天天爽| 综合色99| 五月婷婷婷婷婷| 丁香花社区av| 五月丁香婷婷基地| 99热碰碰热| 99久在线观看| 色五月婷婷五月丁香五月激情五月视频| 夜夜躁婷婷AV| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 久9综合| 丁香六月激情蜜桃| 性爱五月婷| 丁香五月中文字幕久色| 99色免费| AV九九| 丁香九月久久| 人与禽A片啪啪| 爱草视频在线| 9超碰在线| 久热黄色| 极品 少妇 内射| 婷婷五月欧美综合| 久久久久亚洲AV无码网影音先锋| 开心六月丁香五月婷婷| 色五月噜噜| 99热在线只有精品| 激情五月天色| 9精品国产在热久久| 激情网婷婷五月天| 五月丁香网站| 999热成人在线综合网| 狠狠色婷婷综合开心影视| 亚城区在线| 1区2区视频| 99久在线视频| 久久99成人性爱高清视频| 婷婷久久影院| 亚洲亚洲人成综合网络| 人人摸人人| 婷婷激情五月综合| 激情综合另类| 国产在线aaa片一区二区99| 99热日本| 婷婷爱在线观看| 免看黄大片AA | 99热网站| 伍月婷丁香婷| 久久新地此| 婷婷爱五月| 五月天深爱激情网| 六月丁香射婷婷欧美色图片| 狠狠色狠狠| 全部老头和老太XXXXX| 五月六月婷婷| 色 五月俺去也| 伊人九九综合| 涩婷婷视频快播人妻| 色婷婷基地| 九九久久五月天综合伊人| 4438激情网| 深爱激情五月天| 五月婷婷六月情| 五月丁婷香| 成人无码中文| 国产精女同一区二区三区久 | 综合久久婷婷99| 日本久久婷婷| 五月婷婷视频在线观看| 风流少妇A片一区二区蜜桃| 日日夜夜爽| 色欲天天综合网| 九热视频在线伦| 五月天婷婷色| 五月丁香综合在线| 色情五月婷婷| 欧美人妻一区二区| 久久六月天| 婷婷五月伦理网站| 国产精品婷婷午夜在线观看| 丁香五月深爱五月婷婷| 欧美日韩大黄| 男人天堂亚洲综合| 欧美va国产va| 色色亚洲无码| 99 色色吧| 九九热99免费视频| 991国产精选视频在线播放下载| 伊人天堂婷婷| 五月深情久久| 国产激情在线观看| 色色色地址| www.五月婷| 久久久婷婷五月天| 北条麻妃伊人| 99热亚州综合| 日日噜噜久久婷婷五月天| 久久人妻熟女一区二区| 国产偷人爽久久久久久老妇APP| 亚洲av网站| 天天人人人人人人人人人人人| 亚洲综合婷婷六月丁香五月| 色狠狠色噜噜AV天堂五区消防| 五月丁香色婷婷基地| A√天堂网在线| 这里只有精品视频222| 9福利性视频欧美| 欧美月久久| 狠狠色婷婷色| 九九热精品99| 天天爽天天爽天天爽天天爽天天爽天天爽天天| 精品无码av丁香五月激情| 天天情天天狠天天透| 成人日韩欧美| 五月婷婷丁香五月亚洲色| 热久久思思热思思| 色婷婷综合网站| 久久99成人性爱高清视频| 麻豆五月丁香婷婷| 五月天亚洲综合网| 开心五月网 | 欧美五月丁香| 日韩啪啪网| 九月色婷婷| 五月丁香偷拍| 精品热九九| www.亚洲激情.com| 日韩在线9| 啪啪91| 99热大全在线观看| 五月之婷婷| 激情噜噜噜| 8区视频在线| 综合激情五月婷婷| 免费观看18视频网站| 风流少妇A片一区二区蜜桃| 亚洲第一综合| 丁香99| 99综合视频一体| Blackedraw视频一区二区| 亚洲天堂婷婷丁香| 超碰在线9| 色9999日韩国产| 人伦30P| 久热只有这里有精品| 九九成人高清视频| 草综合14| 国产精品18久久久| AV在线不卡播放| a片在线免费观看一区| 日韩欧美老妇性视频91久久久| 久操福利| 五月之婷婷| 开心婷婷五月| 中文字幕丰满孑伦无码专区| 久久婷狠狠色| 99热成人在线观看| 久久丁香五月婷婷| 99热精品观看| 亚洲激情免费视频| 婷婷综合一二三| 久久激情五月| 激情久久久久久久久久| 日日色五月天| 日韩无码专区| 色婷婷性爱| 激情欧美婷婷| 丁香五月天堂网| 激情五月天视频| 狠狠色综合图片| 综合久久综合| 欧美成人A片AAA片在线播放| 91丨九色丨熟女高潮| 亚洲AV电影av| www.com操| 可以直接看的AV网站| 欧美 日韩 成人 在线| 超91热| 久热欧美| 激情五月色婷婷| 久久综合66| 色婷婷免费观看| 欧美丁香五月天| 黄网免费观看| 天天操屄网| 久久综合五月| 99re热99| 久操97| 日韩ww| 丁香五月亚洲激情婷婷射| 亚洲精品激情| 性爱激情综合网| 久这里只有精品99| 97人妻碰碰中文无码久热丝袜| 色婷婷伊人激情在线观看| 99久久99视频只有精品| 精品久热| 天天日天天做天天舔| 人人草人人看| www.五月丁香| 五月激情影视| 嫩草视频观看| 97九色视频| 日韩五月婷婷久久| 五月天婷婷在线视频| 激情五月婷婷视频| 99性爱精品| 狠狠婷婷综合| 99热无码| 五月丁香六月婷婷的女人| 九九热在线观看6| 玖玖五月丁香| 久大香蕉| 亚洲av骚货| Av九九| 97干97色| 四月婷婷五月色综合| 五月婷婷黄色| 婷婷色播色五月五色五月天色妇| 午夜一区| 丁香五月在线看| 亚洲丁香五冃97色| 婷婷基地爱| 99ri国产精品| 性色五月天| 丁香五月婷婷高清| 国产欧美第五十五页| 久久婷婷成人| 五月丁香色色网| 丁香五月激情月| 亚洲射激情| 少妇大叫太大太粗太爽了A片 | 久久精品99国产精品日本| 9九热视频| 97色色视频| 久久五月丁香综合17C| A片天天| 日韩精品二三区| 97碰碰电影| 婷婷六月激情| 久久这有这里精品| 欧美啪啪网| 色五月婷婷av| 婷婷五月天色网久| 丁香五月婷婷色偷偷| 九九精品自拍| 久久一二三视频| 激情网色五月| 99久久6| 五月婷婷久久开心网| 伊人香大香蕉视频| 91天天操天天干天天射| 综合性视频99| 9精品在线| 免费无码毛片一区二区A片| 五月天另类图片| 五月丁香色婷婷久久| 五月亭亭直播| 综合五月网| 99婷婷| 婷婷大香焦| 欧洲色色| 另类激情五月| 亚洲精品网站色视频| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 激情人妻综合| 秋霞影音91人妻久久| 亚洲av无码影院| 五月丁香激情啪啪| 天天日本夜夜谢| 啪啪综合网| 免费无码毛片一区二区A片| 激情小说视频图片| 91九色|疯狂|高潮|对白|| 亚洲欧洲中文日韩久久AV乱码| 欧美色婷婷| 天天爽天天爽天天爽天天爽天天爽天天爽天天 | 开心深爱五月天| 婷婷中文网站| 婷五月天影院| 国外亚洲成AV人片在线观看| 99色在线| 狠狠色丁香婷婷久久综合| 开心亚洲久久开心| www.婷婷.com| 在线免费观看激情视频| 中文字幕免费高清电视剧| 天天肏天天肏天天肏| 婷婷无码视频| 在线综合婷婷| 色五月xxx| 六月丁香婷婷色狠狠久久| 日韩在线视频9色| 99热手机在线精品| 91婷婷在线| 天天爽夜爽| 另类综合婷婷五月天欧美视频| 五月天婷婷六月激情网| 99re99在线看| 99精品在线观看| 91色性感五月婷婷丁香| 国产午夜成人AV在线播放| 成人国产综合| 婷婷午夜丁香| 激情六月丁香| 99成人在线观看| 手机旧版看人妻1025| 丁香六月天婷婷开心综合| 欧美日韩大黄| 婷婷五月天性| 在线A色| 美女要搞搞天天搞搞搞网站| 噜噜噜噜婷婷五月天| 五月婷婷激情综合| 日本色色色| 色婷婷综合久久久久| 五月丁香五月丁香五月丁香五月丁香91| 日本色超碰| 丁香五月之久操视频| 中文字幕网伦射乱中文| 97碰碰碰免费公开在线视频| 亚洲AV成人在线| 久久婷婷精品| 天天插天天插| 色情五月综合婷婷| 裸体做A爰片毛片A片免费| 久久婷婷综合网| 六月丁香婷婷色狠狠久久| 婷婷成人在线| 激情五月天的婷婷| 丁香五月激情宗合网| 99ri在线观看视频| 99在线精品视频免费| 色五月婷婷五月丁香五月激情五月视频| 99热最新| 日韩婷婷五月天| 五月天激情国产综合AV| 极品人妻VideOssS人妻| 婷婷的久久网站| 五月丁香| 四季8848精品成人免费网站| 高清国产AV| 久久婷婷五月丁香网| 丁香五月激情啪啪| www夜夜操wwwcon| 国产va视频| 色色丁香婷婷| 婷婷99狠狠躁天天久久久九九九| 人人草碰| 五月激情丁香久久综合网| 精品99网站| 99这里有精品视频视频| 国产欧美第五十五页| 激情AV| 丁香色婷婷色手机免费在线| 九月婷婷综合网| 色五月天.con| 综合图片色色| 91九九| 另类图片五月天激情| 久久婷婷五月综合伊人| 日本激情五月| 超碰在线人妻| 在线免费视频caop| 久草大| 天天久久综合| 丁香五月另类色婷婷麻豆| 桃色五月天| 美女被肏网站在线看| 综合婷婷| 99免费视频网| 色99视频| 中文字幕成人影视| 另类小说五月天综合网| 91成人视频| 另类丁香五月天区图| 91窝窝| 五月色婷婷在线观看| 少妇人妻综合色6699| 人妻激情综合| 中文字幕不卡视频| 草美女在线观看视频在线播放| 人人爽欧美婷婷久久久五月丁香| 色色色综合色| 久久女人天堂| 五月丁香婷婷综合网| 色婷婷电影| 99五月婷| 九九成人视频| 久草免费福利视频| 情欲综合网| 久久久性爱视频| 91精品国产色猫| 色婷婷五月天天天做| 天天噜日日噜综合无码| 91热网址| 久久99热在线观看| 婷婷丁香无码专区| 色五月激情五月丁香五月婷婷啪啪综合| 亚洲国产成人在线| 婷婷 伊人 久久| 婷婷五月天狠狠| 99热这里有精品| 九玖视频这里只有精品| 97av在线视频| 免费亚洲婷婷中文字幕| 色色色五月婷| 丁香六月婷婷综合激情欧美| 99热| 丁香色综合| 激情久久丁香| 偷偷操99| 久艹大香蕉| 91九色在线视频| 五月叮香啪| 天天综合天综合久久网| 少妇人妻综合色6699| 91大屁股在线| 人人射人人高潮| 色综合色色色色色色综合| 国精产品一区二区三区| 国产原创视频91九色| 久久久精久人妻| 爱超碰性| 久久性爱视频这里只有精品 | 玖玖99免费视频| 97亚洲婷婷| 婷婷久久综合| 色综合天堂| 国产成人网| 婷婷激情四射| av大香蕉| 六月婷色六月| 综合精品99| 丁香成人五月天| 婷婷自拍| 五月激情偷拍| 狠狠色丁香99| 狠狠色婷| 婷婷五月色情天| 久久久香港| 色色色网站| 丁香六月婷婷久久高清| 91精品久久久久久综合五月天| 亚洲综合新99视频| 九九热狼人| 九九热视频思思| 日本nghangse中文字幕| 久久人人九九| 熟女激情网| 超碰妻人人| 五月天成人在线播放| 超碰成人在线观看| 五月婷婷丁香日韩在线| 99热欲| 99热综合网| 婷婷激情性爱| 超碰天堂网| 这里只有精品视频免费在线观看| 九九色婷婷| 国产看真人毛片爱做A片| 丁香五月婷婷手机| 99久久婷| 日韩国产在线精品| 99精品久久久久久久婷婷| 丁香五月婷婷性爱| 成人一区在线观看| 国产美女无遮挡裸体毛片A片| 婷婷激情丁五月| 99视频91| 91肏肏肏| 五月天激情小说网| 欧美色婷婷| 九九热这里只有精品556| 日韩AV在线免费| 国产欧洲欧洲精品久久| 久色欧美| 色婷五月丁香久亚洲| 日日操夜夜擼| 丁香成人五月天| 丁香五月天的网址。| 任你艹| 婷婷免费视频| 97人人操在线| www色五月| 久久6这里只有精品| 综合亚洲AV| 亚洲中文字幕AV在线| 激情六月婷婷| 一级黄色尤物综合视频手机在线观看| 思思色综合网站| 九九热自拍| 日韩丁香涩| 久久HD| 亚洲午夜一区二区| 激情五月婷在线精品| 久久只有这里精品免费| 五月丁香婷草| 亚洲成Av人片乱码色第1集| 免费观看18视频网站| 国产精品色色| 开心五月深爱五月丁香五月激情五月| 台湾综合丁香五月蜜桃| 午夜丁香丁香婷婷| 六月婷婷综合久久| 日韩成人综合| 五月婷婷六月丁香| 26uuu亚洲精品国产| 一區四區歐美日韓| 激情小说婷婷小说| 欧美va亚洲va| 操操啪| 超碰在线中文字幕| av第一二区| 大地资源色婷婷视频在线| 色色丁香五月天| 丁香五月天社区婷婷| 少妇高潮呻吟A片免费看软件| 六月婷婷开心| 丁香五月激情综合| 狠狠色综合网| 中字幕视频在线永久在线观看免费| 爱婷婷久久视频| 丁香五月六月婷婷自拍| 欧洲激情五月天婷婷| 色性综合| 一本道综合网| 九九热在线视频,| 色人五月婷婷| 丁香六月婷婷综合麻豆| 五月丁香网站在线播放| 激情久久天天| 五月丁六月婷| 色色色色色色色色色色色色色色,网站| 五月丁香六月激情网| 777精品成人a v久久| 中文无码精品一区二区三区| 6080av| 另类小说五月天激情| 久久人妻系列| 天天天综合网| 丁香五月婷婷大香蕉| 丁香五月人妻| 日韩啊啊啊| 亚洲V国产V欧美V久久久久久| 国产乱子轮XXX农村| www免费在线视频| Av中文在线| 丁香五月婷婷亚洲另类| 丁香六月激情| 中文aV网| 五月久视频| 久久停停超碰| 欧美大片免费播放器| 91人妻人人操| 欧美大香蕉视频| 涩综合在线| 伊人狠狠操| 99精品热| 色婷婷五月天| 久久九九一區| 色婷婷久久| 六月丁香婷婷天堂| 婷婷激情综合| 五月丁香婷婷啪啪| 日韩 mm 不卡| 日韩九九视频| 五月婷婷另类| 丁香婷婷视频| 丁香六月天| 日本婷婷色| 色综合久久综合中文综合网| 丁香五月婷婷亚洲综合精品在线| 婷婷激情五月综合| 99热精品在线| 99久久精彩视频| 色噜噜狠狠色综合伊人| 天天插,天天射| 亚洲激情网| 97高清国语自产拍| 五月丁香啪啪啪综合网| 深爱激情av| 色五月av| 婷婷色色欧美| 思思热在线精品视频网站| 色五月在线播放| 在线观看av网站| 日产精品久久久久久久蜜臀| 99啪99| 欧美综合五月丁香五月天| 亚洲AV中文在线| 熟妇高潮一区av| 五月丁香久久精品在线观看| 五月婷婷丁香瑟瑟视频| 色五月婷婷网| 爽极品色| www.婷婷五月| 丁香五月 性爱| wuyuedingxiang99| 碰97久久| www亚洲无码| 五月社区婷婷激情| 久久激情天堂| 五月婷丁香久久综合| 777久久综合视频| 色五月色五天色情网| 国产在线网址1| 天天爱天天日| 91久久婷婷| 啪啪操超碰| 亚洲欧美另类在线23p| 人妻丰满精品一区二区A片| 久热91| 99九九精品视频| 天天碰夜夜操| 婷婷区日本| 色色色色色网| 亚洲综合九九| 久久人人超| 免费成人网在线观看| 精品草原久久视频| AV成人在线网站| 婷婷五月激情欧美大胆视频| 99热| 五月丁香婷色| 五月天激情小说| 亚州激情网| 思思久久精品| 婷婷五月天色丁香| 婷婷五月av| 99热在线99| 性爱综合网| 丁香五月狠狠在线观看| 噜噜狠狠色综合久| wWW九九在线播放| 久久久精品人妻| 99热观看| 殴美综合激情五月天免费视频| 日本狠狠干| 五月丁香啪啪啪免费看| 婷婷激情五月综合| 五月天自拍视频| 亚洲在线免费成人| 五月停停丁香| 99干在线| 五月丁香花视频| 全高清无码视頻| 久久综合激情| 久热婷婷在线视频| 久久色天堂| 婷婷玖玖丁香| 4399在线日本A片| 五月天婷婷基地| 99热精品在线观看| 亚洲综合视频天天精品| 免费观看全黄做爰的视频| 亚洲射激情| 久久色吧| 超碰人人色| 97色婷婷| 亚洲欧洲中文日韩久久AV乱码| 极品人妻videosss人妻| 五月婷婷久久爱| 丁香激情五月天| 婷婷玖玖丁香| 丁香六月婷婷综合| 婷婷伊人久久综合| 99视频这里有精品| 天天色官网| 玖玖精品婷婷| 丁香六月婷婷综合| 色深爱五月| 综合久久综合久久| 97人人射| 日日操夜夜骑| 久久99精品九九久久久婷婷| 夫妇交换刺激做爰| 五月六月丁香激情| 成人噜噜网| yw国产AV| 五月天婷婷在线播放| 五月丁香色色| 人人色人人弄人人操| 日本婷婷| 99热精品在线播放观看| 五月情涩综合婷婷| 国产超碰在线| 饮料下药迷倒漂亮女同事强干| WWW.夜夜操.com| 欧美日本99| 色色无码| www.狠狠| 久久99久久99精品免视看婷婷| 蜜桃五月天| 夜夜干夜夜操| 91成人看片| 影音先锋五月婷婷| 色婷婷视频在线| 九九热这里都是精品6| 99久久色| http:色情日本com| 色五月婷婷中文字幕| 日韩在线aaa| 97干97色| 成人在线免费网址| 天天日天天操心| 六月丁香中文字幕| 婷婷无码视频| 婷婷色五月偷拍| 超级黄色片| 五月天婷婷激情六月久久 | 丁香六月婷婷缴情欧美| 久久精品这里只有精品免费首页| 婷婷瑟瑟五月天| 热久久77777| 色五月综合网| 日韩av网站在线观看| 色婷婷香蕉在线| 超碰人人草| 五月婷婷偷拍| 这里只有精品在线视频在线观看| 天天激情视频| 欧美日韩成人| 激情六月婷婷| 97五月天| 五月丁香五月婷婷| 超碰三级片| 五月婷婷六月丁香色| 成人婷婷深爱综合网| 五月丁香六月婷| 婷婷五月丁香花综合| 91狼友视频网页更新| 精品一二三区久久AAA片| 91蜜桃婷婷狠狠久久综合9色| 丁香九月综合| 五月丁香亭亭| 激情婷婷人妻| 日韩黄黄| 2050人人操免费工开爱| 永久天堂日本| 亚洲正能量欧美| 99操逼| 久久综合五月天| 亚洲精品成人| 狠狠色婷婷777| 色色色干| 色色色五月婷婷| 日本99视频| 五月婷av| 欧美成人精品A片免费一区99| 婷婷六月久久综合导航| 激情五月综合网| 91 九色 熟女| 天天婷婷综合亚洲亚洲| 久机视频这只有精品| 操碰91| 99色在线观看| 欧美性色A片免费免费观看的| 婷婷成人基地| 91久久久久久久久18| 国产高潮A片羞羞视频涩涩| 国产欧美日韩综合精品一区二区| 国产毛片精品一区二区色欲黄A片| 亚洲精品V天堂中文字幕| 五月婷婷爽爽爽| 天堂va久久久噜噜噜久久Va| 超碰五月婷婷五月天| www.91在线观看| 五月婷婷色啪| 天天操B| 精品国产va久久久久久久| 婷婷色系婷色| 婷婷狠狠干| 成人五月丁香社区| 中文字幕日产A片在线看| 成人综合网站| 丁香五月婷婷激情蜜桃| 99狠狠色| 婷婷六月丁香综合| 久久人妻www| 九热免费视频| 国产SUV精品一区二区6| 99精品综合在线| www.色综合| 久久网站免费亚洲| 五月色俺婷婷| 色婷婷偷拍| 久久曰曰| 97国产精品女人碰碰| 91狠狠色色丁香婷婷综合久久| 热99精品视频观看| 开心婷婷五月花| 99综合视频| 天天爱天天操| 丁香啪啪中文字幕| 久草大| 婷婷五月精品在线| 丁香五月六月综合激情| 亚洲六月婷婷| 九九99九九精品视频| 九热免费视频| 亚洲综合网激情小说| 亚洲综合激情五月久久| 激情综合五月婷婷| 婷婷丁香色女人| 亚洲视频一区| 久久精品五月天| 五月丁香婷婷激情久久| WWW.桔色成人.COM| 日日影院 | 一本久道综合99| 婷婷玉月丁香五月在线视频| 热99精品视频五月| 丁香五月天天久久综合小说| 51XX午夜影福利| 婷婷开心激情综合五月天| 色色婷婷五月| 五月丁香婷色| 九色91国产| 丰满熟女人妻一区二区三| 可以免费观看的AV| 色哟哟性爱av| 亚洲男人的天堂婷婷色五月| 久久99网| 91互操| 色区域网站视频| 丁香五月激情五月| 丁香五月婷婷天堂大香蕉| 丁香亚洲婷婷五月| 亚洲综合婷婷| 日韩人妻在线观看| 婷婷成年人免费视频| 亚洲电影在线观看| 日本怕怕视频| 五月婷婷网五月在线| 久久婷婷91| 成人AV网站在线| 开心五月婷婷在线| av亚洲国产小电影| 色情婷婷。| 久久久久久性爱视频| 日韩一区二区A片免费观看| www.久久爱| www.91在线观看| 超91在线视频| 日韩精品无码99| 成人超碰网| yazhou seshipin| 色婷婷综合视频| 婷婷中文在线| 婷婷五月丁香六月| 婷婷爱爱蜜臀天天操| 激情色色色| 精品自拍99| 黄页大全十八禁| 亚洲欧美在线观看| 五月丁香婷婷激情久久| 五月婷婷六月天| 色呦呦免费观看| 岛国AV网| 欧类av怡春院| 色视五月天婷婷| 伊人在线视频| 日韩AAA| 亚洲乱码日产精品BD| 77799热| 婷婷丁香六月天| 色波激情五月天| 日韩另类| 五月永久激情| 影音先锋男人女人| 天天爽综合网| 色吊丝av中文字幕| 婷丁香五月天| 久操大| 色情综合网| 中文网AV| 操人妻AV| 2025年最新亚洲在线欧美| 激情五月天婷婷丁香| 五月丁香另类图片| 99色热视频| 色噜噜狠狠色综无码久久合欧美| 国内久久亭亭| 丁香五月天在线观看| 91丨九色丨老农村| 天堂色婷婷| 久这里只有精品99| 少妇人妻人伦A片| 六月婷婷在线| 91狠狠综合久久| 另类小说五月天| 婷婷六月激情在线视频| 久9综合| 猫咪伊人久久| 九九免费精品在线视频| 三年高清大片免费观看国语| 99热免费看| 4399亚洲视频| 免费黄色视频网址| 婷婷丁香人妻天天久久| 狠狠99| 国产全是老熟女太爽了| 日本五月婷婷| 色五月色五天色情网| 蜜桃五月天| 久热视频这里只有精品| 免费看成人747474九号视频在线观看| 玖玖爱综合网| 激情五月六月丁香| 欧美精品A片一区在线观看| 久久五月天综合| 丁香九月激情| 婷婷五月丁香国产| 亚州操人在线视频| 婷婷色色五月| www99xxxx五月丁| 91啪啪视频| 5月婷婷性视频| 大香蕉九九热| 亚洲深喉aV| 激情AV在线| 欧美Va在线| 超91在线视频| 91操人| 色五月激情五月开心五月| 色婷婷婷av | 五月天丁香久久| 欧美日韩中文国产一区发布| 色狠久| 日本女天天爽| 91久久九九| 偷偷与邻居做爰完整视频| 亚洲色婷婷五月天| 天天激情夜夜干| 色婷丁香| 九月色婷婷婷| 精品国产AV色一区二区深夜久久| 色色色色色网| 26uuu欧美亚洲日韩| 色欲天天综合| 丁香五月www| 欧美怡红院黄站| 天天天干夜夜夜操| 激情视频综合| 五月丁香欧美在线| 另类综合激情| 婷婷五月天黄色| 亚洲激情.com| 色婷婷婷av| 97在线碰| 18久久| 99在线视频网址在线观看| 超碰碰碰碰| 91丨九色丨熟女丰满| 日韩AAAAA| 99久久婷婷五月天| 亚洲日韩人妻操逼| 色呦呦免费观看| 成人丁香色| 伊人青涩网| 黄色短视频在线观看| 久久五月婷| 五月婷婷啪| 9精品视频在线观看| 天天日 天天草| 久久伊人婷婷| 激情网五夜婷婷| 97久久人人| 五月停停色| 日韩在线成人电影| 久久小说网| 少妇2做爰HD韩国电影| 综合久久婷婷| 开心激情网五月天| 婷婷婷婷色| 六月丁香av| 99久精品视频| 99视频在线观看网址| 色五月激情五月开心五月| 九九久热| 婷婷五月天高清无码| 五月亚洲| 免费观看的婷婷五月视频在线| 婷婷五月天狠狠搞干| 亚洲激情综合五月婷婷啪啪| 丁香六月高清视频| 四色女婷婷| 色婷婷五月综合在线| 五月伊人视频在线看| 天天操天天操| 精品三区影院| 国精产品一区二区三区| 情久久综合五月天| 婷婷伊人网| 久婷五月| 久久婷婷五月天懂色| AV性爱在线| 色999亚洲人成色| 91无码色色| 五月天天综合网色婷婷| 五月天婷婷色播| 99综合网| 五月天成人免费视频| 亚洲综合五月天| 欧美精品中文字幕亚洲专区| 九九色网专区| 97婷婷五月丁香| 热996精品在线观看| 99热国产婷婷| 91超级碰碰| 日日干日日色| 激情www.98com| 精品无吗va视频免费观看| 婷婷五月丁香五月综合网| 五月婷精品| 思思99热| 色婷婷导航| 欧美性猛交XXXX乱大交极品| 婷婷五月丁香综合网| 91丨九色丨白浆秘| 人妻久久久久久久| 五月天大香蕉av| 九九精品热播| 另类亚洲视频| 蜜桃婷婷五月| 六月丁香激情综合| 亚洲乱码在线观看| av九九| 久久久久久久久久久久久久久久一道本| 少妇婷婷五月天| 激情综合五月| 久久深爱激情网| 九九青青草成人| 99re热视频这里只精品| 91窝窝| 99视频内射三四| 天天做天天爱天天玩夜夜爽| 久艹大香蕉| 五月激情综合网| www狠狠com| 无码一区二区日韩| 亚洲色情网站| 激情五月婷婷| 丁香五月婷婷www..com| 秋霞性爱AV| 精品久久久久久久人妻| 六月婷婷激情| 99久久99久久综合| 91综合视频丁香| 91碰碰碰| 五月深爱婷婷| 在线观看免费狠狠色丁香香综合| 国产乱子轮XXX农村| 激情视频综合| 五月丁香久久精品在线观看| 日本人人xxx| www.夜夜| 婷婷中文在线| 婷婷五月情天| 国产又黄又爽又色的免费| 五月天婷婷免费| 婷婷五月偷拍| 99色婷婷| 97超碰,人人舔,人人操,人人摸| 婷婷爱爱蜜臀天天操| 五月丁香欧美综合免费视频| 五月婷婷综合激情网| 亚洲成人精品三区| 国产精品色色色色| 六月婷婷色综合| 538任你爽视频不一样的| 天天天摸夜夜夜玩| 成片免费观看视频大全| 婷婷久久免费| 久久五月婷综合网| 性爱视频久久| 99毛片| 色五月第四色| 色婷婷丁香女女| 狠狠干2007| av九九| 五月天婷婷操逼视频| 亚洲六月婷婷| 亚洲岛国电影| 色五月开心五月激情五月| 日日夜夜天天综合| 国产亚洲网站在线| 性色五月天| aaa久久久| 丁香五月综合在线播放| 国产乱妇乱子在线播视频播放网站 | 日韩激情网站| 婷婷五月天久久久| AⅤ网站在线看| 秋霞三级影视资源| 亚洲九九夜夜| 888精品福利地址| 天天干天天干天天干天天干天| 日本久久婷婷| 五月婷精品| 99九九玖玖| 天天日天天舔| 五月 成人 婷婷| 婷婷五月天亚洲综合| 丁香婷婷综合激情五月色| 日韩AAAAA| 91久草五月天婷婷| 极品另类| 激情综合婷婷| 超碰av在线|