99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

SD卡日志記錄中斷?從緩沖區(qū)、電源到FAT文件系統(tǒng)的根治指南

SD卡日志記錄中斷?從緩沖區(qū)、電源到FAT文件系統(tǒng)的根治指南 SD卡數(shù)據(jù)記錄這種活兒看起來簡單不就是開個(gè)文件、寫數(shù)據(jù)、關(guān)文件嘛。但真正在野外跑起來十個(gè)項(xiàng)目里有八個(gè)會(huì)栽在同一個(gè)坑上設(shè)備剛上電時(shí)一切正常日志一條條往里寫看著很順利??蛇^了幾分鐘、幾小時(shí)最多撐不過一天日志就悄悄停了。你翻SD卡前半段數(shù)據(jù)好好的后半段什么都沒有連個(gè)報(bào)錯(cuò)殘留都沒有。要是重啟一下設(shè)備它又能正常記錄一段時(shí)間然后再次沉默。這種“只記錄短時(shí)間”的問題我這些年修過不知道多少次從Arduino級(jí)別的小記錄儀到工業(yè)級(jí)的采集盒子都遇到過。今天把排查思路和根因一次性講透。先說個(gè)反直覺的結(jié)論大部分“記錄中斷”根本不是SD卡壞了也不是程序邏輯里寫文件那行代碼出了問題。真正的原因是系統(tǒng)某個(gè)環(huán)節(jié)被堵死、被餓死、或者被電壓波動(dòng)打了個(gè)措手不及。只是這些問題全都暴露在“SD卡寫入”這一步上所以看起來像是卡的錯(cuò)。你要是不把思路從“寫文件”上挪開光盯著SD卡換卡、換格式化工具問題永遠(yuǎn)復(fù)現(xiàn)、永遠(yuǎn)修不好。下面對(duì)標(biāo)我實(shí)際踩過的場景按“現(xiàn)象 - 根因 - 驗(yàn)證 - 根治”的順序拆開講順帶附上可以直接抄作業(yè)的排查流程。1. 先還原現(xiàn)場短時(shí)記錄背后的三類典型表象排查之前先搞清楚你到底面對(duì)的是哪種“停”。同樣是記錄中斷表象不同指向的根因完全不同。我最怕收到的問題描述就是“它停了”沒別的了。你一定要去把SD卡拿回來看文件系統(tǒng)實(shí)際長什么樣這會(huì)直接砍掉一半的排查分支。1.1 表象A文件系統(tǒng)完好日志戛然而止最常見的一種。SD卡插到電腦上文件系統(tǒng)能正常識(shí)別目錄結(jié)構(gòu)也沒壞就是最后一個(gè)文件寫到某個(gè)時(shí)間點(diǎn)之后不再增長。文件大小停在幾十KB、幾MB打開看末尾是完整的半行數(shù)據(jù)沒有亂碼沒有截?cái)嗪圹E。這種表象往往指向邏輯層面的停止——程序還在跑或者已經(jīng)死了但無論如何都沒有再執(zhí)行寫入操作。常見原因包括緩沖區(qū)寫滿后主循環(huán)被阻塞系統(tǒng)進(jìn)入死鎖或看門狗復(fù)位。采樣線程崩了或者FIFO隊(duì)列滿了之后寫入線程被暫停又沒有恢復(fù)機(jī)制。文件打開失敗后錯(cuò)誤處理分支里有個(gè)while(1)死循環(huán)代碼就停在那了。判斷方法很簡單看最后一條數(shù)據(jù)的時(shí)間戳和程序預(yù)期行為是否對(duì)齊。如果最后一條數(shù)據(jù)正好卡在某個(gè)整點(diǎn)、某個(gè)采集周期邊界大概率是軟件邏輯問題而不是硬件問題。1.2 表象B文件損壞、目錄亂碼、卡上出現(xiàn)碎片文件SD卡拔下來插電腦系統(tǒng)提示需要格式化或者目錄里出現(xiàn)一堆“.$$$”臨時(shí)文件、文件名變成亂碼、文件大小為0。這種屬于寫入過程中突然掉電或復(fù)位FAT表沒來得及更新。注意一個(gè)容易被忽略的細(xì)節(jié)SD卡寫入不是直接改扇區(qū)而是先寫數(shù)據(jù)區(qū)再寫FAT表。如果中途斷電數(shù)據(jù)區(qū)可能已經(jīng)寫進(jìn)去了但FAT表沒更新表現(xiàn)出來就是文件大小不對(duì)、數(shù)據(jù)在但文件打不開、或者殘留一堆臨時(shí)文件。這種情況在電池供電的設(shè)備上尤其常見。電池電壓隨著放電逐漸下降當(dāng)電壓跌到SD卡或主控的最低工作電壓附近時(shí)系統(tǒng)會(huì)處于一種“半死不活”的狀態(tài)——主控還在運(yùn)行SD卡卻開始丟響應(yīng)程序反復(fù)重試最終卡死或復(fù)位。復(fù)位瞬間如果正好在寫FAT表文件系統(tǒng)就爛了。1.3 表象CSD卡“消失”必須重新插拔才能恢復(fù)這種最詭異程序還在跑指示燈還閃著但SD卡就是讀不到、寫不進(jìn)。你通過串口打印調(diào)試信息會(huì)看到類似“card init failed”或者“write timeout”的錯(cuò)誤。重啟程序沒用必須物理斷電或者把卡拔出來重新插進(jìn)去才能重新初始化。這種往往是SD卡進(jìn)入了保護(hù)狀態(tài)或者電氣連接出現(xiàn)異常。常見原因SPI模式下SD卡被錯(cuò)誤的電平信號(hào)干擾進(jìn)入休眠或錯(cuò)誤狀態(tài)。電源紋波過大導(dǎo)致卡內(nèi)部邏輯混亂但主控還能撐住。卡座接觸不良振動(dòng)環(huán)境下偶發(fā)性斷路。更隱蔽的情況你的程序在檢測到寫錯(cuò)誤后沒有做重新初始化而是直接放棄之后所有寫入嘗試都走錯(cuò)誤分支表現(xiàn)為“卡消失了”。這三種表象經(jīng)?;旌铣霈F(xiàn)。比如先有電壓波動(dòng)導(dǎo)致寫失敗程序處理不當(dāng)又引發(fā)邏輯死循環(huán)最后表現(xiàn)出來既是B又是A。所以拿到卡之后先做一件最基礎(chǔ)的事把卡掛到電腦上用磁盤檢查工具掃一遍然后直接看卡里日志文件的十六進(jìn)制末尾記錄它“死在哪個(gè)操作上”。2. 緩沖區(qū)與寫入速度的失衡數(shù)據(jù)記錄中斷的第一大元兇2.1 緩沖區(qū)為什么會(huì)滿采樣率與寫入速率的靜態(tài)計(jì)算很多記錄中斷根源就是一句話采樣速率 寫入速率緩沖區(qū)被填滿沒有退路。在MCU環(huán)境下SD卡的寫入速度遠(yuǎn)低于你想象的數(shù)字。以常見的SPI模式SD卡為例實(shí)測連續(xù)寫入速度不計(jì)文件系統(tǒng)和磨損均衡大致在SPI時(shí)鐘20MHz單塊寫入大約500~700 KB/sSPI時(shí)鐘10MHz單塊寫入大約250~350 KB/s如果用的是FatFs 寫小文件 每寫一次就flush一次速度可能掉到幾十KB/s甚至更低。而你如果以較高的采樣率在采集數(shù)據(jù)比如每通道1kHz、雙通道、每個(gè)樣本2字節(jié)那一秒就是4KB看起來不多但如果你的采集任務(wù)里還有波形計(jì)算、浮點(diǎn)運(yùn)算、顯示刷新、無線發(fā)送主控能留給SD卡的時(shí)間遠(yuǎn)沒有你以為的那么多。我遇到過最典型的案例一個(gè)設(shè)備采集加速度計(jì)數(shù)據(jù)采樣率2kHz每個(gè)樣本6字節(jié)理論上每秒12KBSD卡完全扛得住。但程序用的是單緩沖主循環(huán)里先采集一批數(shù)據(jù)然后調(diào)用f_write寫入。f_write內(nèi)部要先查FatFs的狀態(tài)、移動(dòng)文件指針、搬數(shù)據(jù)到內(nèi)部扇區(qū)緩沖實(shí)際耗時(shí)可能高達(dá)幾十毫秒。在寫入期間中斷照常觸發(fā)采集數(shù)據(jù)往哪放只能放同一個(gè)緩沖區(qū)。緩沖區(qū)被覆蓋數(shù)據(jù)丟了程序卻完全不知道。然后系統(tǒng)繼續(xù)運(yùn)行表現(xiàn)就是日志文件有數(shù)據(jù)但數(shù)據(jù)中間缺了一大段看著像“記錄了一段時(shí)間就停了”。如果你用的緩沖區(qū)是固定數(shù)組沒有做“滿了就丟棄”或“滿了就覆蓋”的策略那緩沖區(qū)寫滿后唯一的下場就是寫指針覆蓋讀指針或者主循環(huán)阻塞等待緩沖區(qū)空出來——而緩沖區(qū)永遠(yuǎn)不會(huì)空因?yàn)閷懭刖€程也被卡住了。2.2 致命習(xí)慣只在緩沖區(qū)滿時(shí)才一次性寫入新手最常犯的錯(cuò)誤是采集數(shù)據(jù)放到緩沖區(qū)等緩沖區(qū)滿了才一次性寫SD卡。這個(gè)設(shè)計(jì)貌似合理緩沖區(qū)大小設(shè)成512的整數(shù)倍一次寫入正好一個(gè)扇區(qū)效率最高。但問題在于緩沖區(qū)滿之前的那段時(shí)間如果采集線程一直在填寫入線程沒有機(jī)會(huì)介入。具體來說假設(shè)緩沖區(qū)是4KB采集速率是2KB/s那么2秒后緩沖區(qū)滿了。這時(shí)候觸發(fā)f_write寫入4KB數(shù)據(jù)。在寫入期間采集線程繼續(xù)運(yùn)行又產(chǎn)生了新數(shù)據(jù)。新數(shù)據(jù)往哪放緩沖區(qū)還是那4KB已經(jīng)被寫入線程鎖住或者正在被讀取。要么丟數(shù)據(jù)要么阻塞采集線程要么雙線程共享緩沖區(qū)互相踩踏。解決思路只有兩個(gè)方向雙緩沖交替寫入采集線程寫B(tài)uffer A滿了之后切換Buffer B同時(shí)把Buffer A交給SD卡寫入。寫入期間采集線程繼續(xù)用Buffer B互不干擾。環(huán)形緩沖 丟舊保新或丟新保舊寫入線程持續(xù)工作緩沖區(qū)始終留有余量滿了就覆蓋最舊的數(shù)據(jù)。這兩個(gè)方案不只是實(shí)現(xiàn)差異背后的可靠性模型完全不同。雙緩沖在數(shù)據(jù)完整性上更好但對(duì)時(shí)序要求高你必須在緩沖區(qū)切換間隙完成所有寫入環(huán)形緩沖在實(shí)現(xiàn)上更簡單但必須有明確的數(shù)據(jù)丟失策略并且要在日志里標(biāo)記丟了多少數(shù)據(jù)否則后續(xù)分析數(shù)據(jù)時(shí)會(huì)被誤導(dǎo)。2.3 寫入完成時(shí)間是個(gè)系統(tǒng)性殺手很多人只算平均寫入速度忘了算最壞寫入時(shí)間。SD卡的寫入速度不是恒定的實(shí)際測試中blocking write單次512字節(jié)的耗時(shí)可能從幾毫秒到幾百毫秒不等。特別是在跨FAT簇邊界時(shí)需要額外讀改寫FAT表文件系統(tǒng)碎片化之后寫入前需要查找空閑簇劣質(zhì)卡或老卡的擦除操作特別慢卡接近滿時(shí)閃存內(nèi)部GC垃圾回收占用大量時(shí)間。如果你在主循環(huán)里同步調(diào)用f_write那f_write最壞耗時(shí)幾百毫秒意味著你的系統(tǒng)每寫一筆數(shù)據(jù)就“卡頓”幾百毫秒。采樣線程如果在這段時(shí)間里被阻塞就會(huì)丟數(shù)據(jù)如果采樣靠中斷中斷服務(wù)程序里塞了采集邏輯那直接就是中斷丟失數(shù)據(jù)采不全。所以凡是采樣率超過1kHz、單次寫入數(shù)據(jù)量超過512字節(jié)的場景我強(qiáng)烈建議用RTOS 任務(wù)間隊(duì)列或者狀態(tài)機(jī) 環(huán)形緩沖來解耦采集和寫入。采集任務(wù)只負(fù)責(zé)往隊(duì)列里丟數(shù)據(jù)寫入任務(wù)在空閑時(shí)批量取數(shù)據(jù)、批量寫SD卡。這樣SD卡寫入再怎么慢都不影響采集時(shí)序。從實(shí)操上看我常用的一個(gè)判斷公式是緩沖區(qū)大小字節(jié) / 采樣速率字節(jié)每秒 最長可容忍寫入阻塞時(shí)間秒只要這個(gè)值小于SD卡最壞寫入耗時(shí)一定會(huì)出問題。你把這個(gè)值算出來很多“只記錄幾分鐘”的謎團(tuán)當(dāng)場就解開了。3. 電源與電氣問題SD卡在關(guān)鍵時(shí)刻“掉線”的真實(shí)原因3.1 電流尖峰與電壓跌落數(shù)據(jù)量越大越明顯SD卡寫入時(shí)電流不是恒定的峰值電流出現(xiàn)在擦除和編程階段特別是在寫滿一個(gè)塊、需要搬移數(shù)據(jù)的時(shí)候。瞬時(shí)電流可以達(dá)到100mA甚至更高如果供電鏈路阻抗大電壓會(huì)被瞬間拉低。MCU數(shù)據(jù)記錄設(shè)備大多是3.3V供電很多直接用AMS1117之類的LDO從5V或鋰電池降壓。LDO的響應(yīng)速度有限如果輸入電壓本身有波動(dòng)或者輸出端沒有足夠的鉭電容/陶瓷電容做去耦SD卡寫入瞬間的電壓跌落很容易超過100mV。什么概念SD卡規(guī)范要求供電電壓范圍2.7V~3.6V。如果你的LDO輸出標(biāo)稱3.3V紋波50mVSD卡寫入時(shí)再跌200mV就到了3.05V??雌饋磉€在范圍內(nèi)但加上電源軌上的高頻噪聲就可能跌破2.7V的瞬間閾值卡就復(fù)位了。最要命的是這種復(fù)位不一定整個(gè)系統(tǒng)都復(fù)位。MCU可能在2.7V以上仍然正常工作但SD卡已經(jīng)悄悄重啟了。SD卡重啟后需要重新走一遍初始化流程而你的程序并不知道這件事繼續(xù)按原樣發(fā)寫命令SD卡不響應(yīng)程序超時(shí)、報(bào)錯(cuò)、退出。退出后如果沒做好重試邏輯記錄就停了。外部表現(xiàn)就是日志寫了半小時(shí)然后沒了但LED還在閃MCU也沒死。3.2 線纜與卡座隱藏的串聯(lián)電阻我在實(shí)測試驗(yàn)中發(fā)現(xiàn)很多“只在短時(shí)間記錄”的問題根源在卡座接觸電阻上。SD卡座的彈簧觸片用久了會(huì)氧化接觸電阻從幾十毫歐漲到幾百毫歐甚至1歐姆。如果設(shè)備還有振動(dòng)接觸電阻還會(huì)間歇性跳變。當(dāng)寫入電流達(dá)到100mA時(shí)1歐姆的接觸電阻會(huì)產(chǎn)生100mV壓降。再加上線纜、PCB走線的阻抗SD卡實(shí)際拿到的電壓比主控低得多。很多人習(xí)慣把SD卡電源直接接到主控3.3V網(wǎng)絡(luò)的末端中間經(jīng)過一段細(xì)長走線SD卡寫入時(shí)電壓被拉到閾值以下卡復(fù)位記錄中斷。用示波器一測寫得正歡的時(shí)候電源波形上有一個(gè)明顯的下陷問題當(dāng)場現(xiàn)行。如果你的設(shè)備在野外跑還要考慮溫度。氧化層在低溫下阻抗更高冬天更容易出問題。所以我后來做記錄儀設(shè)計(jì)SD卡電源都會(huì)單獨(dú)走線并且在卡座旁邊加一個(gè)100uF的鉭電容 0.1uF陶瓷電容做局部去耦減小電源跌落幅度。3.3 SPI模式下的信號(hào)完整性與上拉電阻用SPI模式驅(qū)動(dòng)SD卡信號(hào)完整性要求其實(shí)不低。SD卡SPI模式有四個(gè)信號(hào)SCK、MOSI、MISO、CS。每條線都需要上拉電阻通常10kΩ到100kΩ。但如果上拉電阻缺失或者走線太長信號(hào)上升沿變緩高速SPI下就會(huì)出現(xiàn)間歇性通信錯(cuò)誤。特別典型的坑是CS信號(hào)沒拉好。如果CS懸空或上拉太弱SD卡可能進(jìn)入未選中狀態(tài)然后所有寫命令都得不到響應(yīng)。有的程序在寫失敗后重試幾次然后又失敗最后直接關(guān)閉文件退出。這樣的問題在辦公室調(diào)試時(shí)可能一天都不出現(xiàn)到了現(xiàn)場因?yàn)榫€纜更長、環(huán)境電磁干擾更強(qiáng)就開始“記錄一段時(shí)間就斷”。我建議SPI時(shí)鐘先降到2MHz以下做穩(wěn)定性測試。如果在4MHz下不穩(wěn)定、2MHz下穩(wěn)定那基本就是信號(hào)完整性問題而不是SD卡本身的問題。通過降速來確定是不是電氣層面的問題非常直接有效。3.4 實(shí)測驗(yàn)證方法示波器是唯一靠譜的裁判排查電源問題時(shí)不用跟我爭論理論直接測用示波器同時(shí)看SD卡VCC和GND用電流探頭或串聯(lián)采樣電阻看寫入電流讓設(shè)備按最高速率寫入數(shù)據(jù)持續(xù)跑幾分鐘到幾十分鐘觀察每次寫入時(shí)VCC的下陷幅度和恢復(fù)時(shí)間把數(shù)字萬用表設(shè)置成最小/最大記錄模式掛在VCC上跑一個(gè)完整的寫入循環(huán)。如果VCC下陷超過100mV或者觀測到低于2.7V的瞬態(tài)恭喜你找到根因了。如果波形很干凈電壓紋波小于30mV那再往邏輯層面查。有一類特殊情況SD卡和無線模塊共用電源。藍(lán)牙/WiFi/4G模塊發(fā)射瞬間電流可以達(dá)到幾百毫安甚至安培級(jí)直接把電壓拉下去。這種“記錄斷”往往和無線發(fā)送的時(shí)間點(diǎn)高度相關(guān)。你在日志里比對(duì)一下時(shí)間戳如果中斷時(shí)刻恰好和無線發(fā)送時(shí)間吻合那就不要懷疑SD卡了先給無線模塊單獨(dú)供電或者加電源時(shí)序控制。4. FAT文件系統(tǒng)邊界4GB/2GB的硬限制與簇表異常4.1 FAT16和FAT32的單文件大小上限很多人不知道SD卡日志記錄還有一個(gè)非常隱蔽的“定時(shí)炸彈”——FAT文件系統(tǒng)的單文件大小限制。FAT16格式的卷單文件最大2GBFAT32格式的卷單文件最大4GB超過之后f_write會(huì)返回錯(cuò)誤大多數(shù)代碼庫不會(huì)正確處理這個(gè)錯(cuò)誤程序就停了或者文件指針回繞覆蓋已有數(shù)據(jù)。如果設(shè)備采樣率不高2GB可能夠跑很久。但如果你做的是高采樣率記錄儀比如一個(gè)16位、4通道、10kHz的采集系統(tǒng)每秒就是80KB一小時(shí)約288MB。FAT32的4GB上限大約只能撐14個(gè)小時(shí)。FAT16的2GB上限更是撐不到7個(gè)小時(shí)。更麻煩的是很多SD卡出廠時(shí)格式化成FAT32但簇大小是64KB這種格式能支持大文件但小文件寫入性能極差跨簇邊界時(shí)頻繁更新FAT表寫入速度可能掉到幾KB/s。在長時(shí)間記錄場景下我的做法是不用單文件無限增長而是設(shè)計(jì)輪轉(zhuǎn)日志——數(shù)據(jù)寫到一定大小比如512MB就關(guān)閉文件新建一個(gè)帶序號(hào)的新文件在文件名里編碼時(shí)間戳比如LOG_20250101_120000.bin程序啟動(dòng)時(shí)掃描已存在的日志文件按時(shí)間戳順序?qū)懕苊飧采w舊數(shù)據(jù)。這樣既繞開了單文件大小限制又方便事后按時(shí)間段快速定位數(shù)據(jù)。如果你非要單文件連續(xù)寫至少要先算清預(yù)計(jì)最大記錄時(shí)長并確保目標(biāo)文件系統(tǒng)格式支持。4.2 簇表異常與斷電寫入FAT文件系統(tǒng)是日志型文件系統(tǒng)的反面教材它在寫數(shù)據(jù)時(shí)并不保證一致性。斷電時(shí)具體會(huì)發(fā)生什么程序請(qǐng)求寫4KB數(shù)據(jù)FatFs先更新FAT表標(biāo)記數(shù)據(jù)要占用的簇。然后寫數(shù)據(jù)到簇對(duì)應(yīng)的扇區(qū)。最后更新目錄項(xiàng)更新文件大小。如果第2步寫完第3步?jīng)]執(zhí)行文件大小就沒更新數(shù)據(jù)雖然寫在卡里但文件系統(tǒng)不認(rèn)。如果第2步剛寫完FAT表還沒來得及更新數(shù)據(jù)就是徹底的孤兒扇區(qū)目錄項(xiàng)還在舊狀態(tài)過一段時(shí)間會(huì)被新的寫入覆蓋掉。在電池供電的SD卡記錄設(shè)備里這是一個(gè)非常常見的“記錄了一段時(shí)間后文件損壞”的原因。解決辦法不是靠軟件能做到的只能從設(shè)計(jì)上減少暴露窗口增加一個(gè)掉電檢測電路比如比較器檢測電源電壓低于閾值時(shí)觸發(fā)MCU的緊急中斷把正在緩沖的數(shù)據(jù)和FAT表狀態(tài)刷到卡里然后安全關(guān)閉所有文件。如果沒有掉電檢測那就老老實(shí)實(shí)做輪轉(zhuǎn)文件并且控制每次寫入的數(shù)據(jù)量讓FAT表更新的頻率降低。注意不要頻繁調(diào)用f_sync或者f_flush。每寫一個(gè)扇區(qū)就flush一次雖然安全性提高但寫入速度和閃存壽命都會(huì)顯著下降。我一般設(shè)置一個(gè)合理的同步間隔比如每寫256KB同步一次或者每5秒同步一次根據(jù)數(shù)據(jù)的重要程度和系統(tǒng)掉電頻率來權(quán)衡。4.3 格式化工具與SD卡初始化細(xì)節(jié)標(biāo)題下面帶了幾個(gè)熱搜詞“sd card formatter”“sd memory card formatter”。說明很多人在卡出問題后第一反應(yīng)是重新格式化。這方向沒錯(cuò)但要注意格式化的參數(shù)。SD卡官方推薦的格式化工具會(huì)按照SD卡的實(shí)際能力設(shè)置默認(rèn)格式和扇區(qū)大小比操作系統(tǒng)自帶的格式化更可靠。但有一點(diǎn)很重要不要在卡上建立多個(gè)分區(qū)SD卡日志記錄場景只用一個(gè)分區(qū)就夠了。多個(gè)分區(qū)在MCU環(huán)境下處理容易出問題部分FatFs移植代碼不支持多分區(qū)或者會(huì)默認(rèn)訪問錯(cuò)誤的分區(qū)號(hào)。另外有一個(gè)細(xì)節(jié)容易忽略SD卡可能存在“邏輯保護(hù)”卡上的撥桿Lock開關(guān)如果撥到鎖定位置寫入時(shí)卡會(huì)返回錯(cuò)誤。這個(gè)開關(guān)是一個(gè)機(jī)械觸點(diǎn)在振動(dòng)環(huán)境下可能松動(dòng)導(dǎo)致寫一半突然變只讀。這種問題非常無厘頭但確實(shí)發(fā)生過。調(diào)試的時(shí)候先檢查這個(gè)開關(guān)別一上來就去改代碼。還有如果你用的是工業(yè)級(jí)或者三防SD卡它們有的支持“寫保護(hù)”命令即使沒有機(jī)械開關(guān)也可能拒絕寫入。這種卡拿回來先讀一下CSD寄存器的寫保護(hù)位省得后面排查半天。5. 完整排查鏈路從串口日志到波形測量的定位方法論很多朋友反映這些問題太難定位。其實(shí)不難按順序執(zhí)行下面這套排查鏈路大概率能在半天內(nèi)鎖定根因而不需要靠猜。5.1 第一步在日志里標(biāo)記“最后存活時(shí)刻”先別急著改硬件先把你手頭的設(shè)備接上串口調(diào)試線打開所有調(diào)試輸出。在程序的關(guān)鍵節(jié)點(diǎn)加上日志輸出每次成功打開文件的時(shí)間每次f_write返回的字節(jié)數(shù)和耗時(shí)每次f_sync調(diào)用的返回碼初始化失敗、寫失敗、重試的次數(shù)。然后反復(fù)運(yùn)行設(shè)備直到問題復(fù)現(xiàn)。注意看串口輸出的最后一條日志是什么。這一條日志會(huì)直接告訴你問題發(fā)生的上下文如果最后一條是“write timeout”說明卡沒響應(yīng)要查電源和信號(hào)如果最后一條是“file open failed”說明文件系統(tǒng)已經(jīng)掛了如果最后一條什么都不是串口也沒輸出那大概率是MCU死了或者進(jìn)入異常狀態(tài)。這一步不需要任何額外工具但能砍掉一半的排查路徑。90%的人跳過了這一步直接去換卡純屬浪費(fèi)生命。5.2 第二步跑一個(gè)寫入壓力測試隔離硬件問題如果串口日志看不出明確結(jié)論就做一次純粹的SD卡壓測。寫一段小程序不要采集任何傳感器數(shù)據(jù)直接全速往SD卡寫入固定大小的塊持續(xù)跑1小時(shí)同時(shí)用示波器監(jiān)視SD卡VCC和SCK線上的信號(hào)。如果壓測期間出問題說明問題在硬件鏈路或SD卡本身和你的業(yè)務(wù)邏輯無關(guān)。如果壓測穩(wěn)定說明問題出在數(shù)據(jù)采集/緩沖/任務(wù)調(diào)度層業(yè)務(wù)邏輯中的某個(gè)環(huán)節(jié)導(dǎo)致SD卡寫入被餓死或者被阻塞。注意壓測時(shí)寫入模式要對(duì)齊實(shí)際場景不要只測順序大塊寫。要復(fù)現(xiàn)你實(shí)際代碼里的寫入模式包括塊大小、寫入頻率、文件打開關(guān)閉頻率。不然壓測結(jié)果對(duì)定位沒有參考價(jià)值。5.3 第三步換卡交叉測試 格式化工具重建如果壓測期間出問題做交叉測試同一張卡換到另一臺(tái)設(shè)備上跑壓測另一張卡換到這臺(tái)設(shè)備上跑壓測新卡先跑官方SD卡格式化工具再跑壓測。注意SD卡速度和可靠性是兩個(gè)維度。當(dāng)前市面上很多所謂“高速卡”在連續(xù)寫入中的表現(xiàn)反而不如一些老舊的工業(yè)卡。有些卡對(duì)SPI模式支持不好或者不支持部分CMD命令。買卡的時(shí)候別只盯著速度等級(jí)優(yōu)先選標(biāo)注了“工業(yè)級(jí)”“寬溫”或者明確支持SPI模式的卡。如果你排查到這一步還沒結(jié)論可以從這幾個(gè)方向繼續(xù)檢查CSD寄存器確認(rèn)SD卡容量和塊大小用邏輯分析儀抓SPI通信看命令響應(yīng)是否正常檢查文件系統(tǒng)格式化參數(shù)是否和代碼假設(shè)一致。5.4 第四步用示波器抓SD卡的“死亡瞬間”這是最后一步也是最硬核的一步。在問題復(fù)現(xiàn)時(shí)刻用示波器同時(shí)抓SD卡VCC對(duì)GND的波形SD卡MISO線上的波形主控IO口上一個(gè)標(biāo)記信號(hào)比如寫失敗中斷時(shí)拉高。如果問題復(fù)現(xiàn)時(shí)VCC出現(xiàn)了明顯的跌落那電源問題實(shí)錘。如果VCC沒問題MISO線上出現(xiàn)異常電平或者長時(shí)間無響應(yīng)那就是SD卡狀態(tài)機(jī)跑飛了。如果一切波形都正常但寫程序就是失敗那就要檢查代碼中是不是有什么邏輯bug比如中斷優(yōu)先級(jí)搞亂了、看門狗誤觸發(fā)、緩沖區(qū)指針越界等。我個(gè)人的經(jīng)驗(yàn)是80%的“只記錄短時(shí)間”問題能在第二步和第三步被鎖定。真正需要示波器出場的主要是電源紋波和信號(hào)完整性這兩類隱蔽問題。6. 架構(gòu)層面的根治方案讓記錄器穩(wěn)定運(yùn)行數(shù)周的設(shè)計(jì)經(jīng)驗(yàn)排查和修復(fù)不是終點(diǎn)。如果項(xiàng)目要長時(shí)間穩(wěn)定運(yùn)行還是得在架構(gòu)上做減法。下面是我現(xiàn)在做SD卡記錄儀默認(rèn)采用的方案按“抗故障優(yōu)先級(jí)”排列。6.1 雙緩沖 任務(wù)解耦讓采集和寫入徹底隔離無論你用不用RTOS都建議把采集和寫入拆成兩條執(zhí)行路徑。采集路徑只負(fù)責(zé)把數(shù)據(jù)丟進(jìn)隊(duì)列寫入路徑只負(fù)責(zé)從隊(duì)列取數(shù)據(jù)、批量寫SD卡。兩條路徑之間用環(huán)形緩沖或消息隊(duì)列連接緩沖區(qū)大小按最壞情況計(jì)算。具體參數(shù)建議環(huán)形緩沖區(qū)大小至少是最大寫塊大小的4倍以上推薦8KB或更大寫入任務(wù)優(yōu)先級(jí)低于采集任務(wù)但高于普通計(jì)算任務(wù)隊(duì)列滿時(shí)策略是丟棄最舊的數(shù)據(jù)并在日志頭部做個(gè)標(biāo)記比如丟了多少字節(jié)。這樣即使SD卡寫入卡頓幾百毫秒采集任務(wù)也不丟一點(diǎn)數(shù)據(jù)只是環(huán)形緩沖暫時(shí)積壓等寫入恢復(fù)后再慢慢消化。6.2 健康監(jiān)控與自動(dòng)恢復(fù)不讓程序“死等”SD卡寫入失敗時(shí)代碼絕對(duì)不能死等重試。推薦實(shí)現(xiàn)一個(gè)“SD卡健康監(jiān)控”模塊檢測到連續(xù)N次寫入失敗比如10次就切換到“故障模式”在故障模式下停止寫入保留數(shù)據(jù)到RAM緩沖區(qū)或鐵電存儲(chǔ)器定期嘗試重新初始化SD卡發(fā)送CMD0、CMD1、CMD8、ACMD41等初始化命令成功后再恢復(fù)寫入如果重試超過閾值記錄錯(cuò)誤狀態(tài)通過其他通道如無線上報(bào)故障??撮T狗要獨(dú)立出來喂狗操作放在主循環(huán)里不要在SD卡寫入中斷里喂狗否則SD卡卡死時(shí)看門狗被錯(cuò)誤喂掉系統(tǒng)永遠(yuǎn)無法復(fù)位。6.3 輪轉(zhuǎn)日志 掉電檢測從根上繞開FAT表異常前面提過輪轉(zhuǎn)日志。這個(gè)設(shè)計(jì)不只是繞開單文件大小限制更大的價(jià)值在于故障隔離。一個(gè)文件壞了不影響其他文件。程序啟動(dòng)時(shí)對(duì)所有文件做完整性檢查損壞的文件自動(dòng)隔離新數(shù)據(jù)繼續(xù)寫入新文件。掉電檢測電路也很關(guān)鍵。簡單方案RESET引腳或ADC引腳接一個(gè)分壓電阻檢測主電源電壓。當(dāng)電壓低于閾值時(shí)觸發(fā)中斷中斷里做兩件事關(guān)閉當(dāng)前文件f_close會(huì)更新FAT表和目錄項(xiàng)把緩沖區(qū)里剩余的數(shù)據(jù)盡量寫出去如果時(shí)間允許。如果電壓跌得太快連寫操作都來不及完成那就只能靠輪轉(zhuǎn)日志兜底至少舊的日志不會(huì)受到太大破壞。6.4 選卡、格式化與使用習(xí)慣的終極大考最后給幾張卡的選擇和基本使用習(xí)慣做個(gè)建議項(xiàng)目建議理由卡的類型工業(yè)級(jí)、寬溫、MLC以上比消費(fèi)級(jí)卡穩(wěn)定不容易在高溫/振動(dòng)下掉速容量大小32GB以下大容量卡在FAT32格式化時(shí)簇大小文件寫入慢32GB以下兼容性最好文件系統(tǒng)FAT32簇大小16KB或32KB平衡寫入速度和空間浪費(fèi)格式化工具官方SD Card Formatter能正確設(shè)置扇區(qū)和文件系統(tǒng)參數(shù)寫入模式批量順序?qū)懕苊忸l繁隨機(jī)小寫減少GC頻率降低寫入耗時(shí)的抖動(dòng)數(shù)據(jù)備份定期導(dǎo)出日志格式化后重用卡長時(shí)間使用后GC碎片化速度會(huì)明顯下降個(gè)人實(shí)際測試中最穩(wěn)定的組合是32GB工業(yè)級(jí)microSD卡FAT32格式簇大小32KBSPI時(shí)鐘10MHz每次寫入2048字節(jié)或4096字節(jié)每寫入256KB做一次同步。這種配置下連續(xù)寫入速度大約300KB/s穩(wěn)定跑一個(gè)月沒出過問題。最后提醒一個(gè)常見誤區(qū)SD卡不是硬盤別拿它當(dāng)隨機(jī)讀寫的存儲(chǔ)介質(zhì)用。它的強(qiáng)項(xiàng)是順序大塊寫。任何頻繁打開關(guān)閉文件、頻繁寫小數(shù)據(jù)量的設(shè)計(jì)都是在跟閃存管理邏輯對(duì)著干最終都會(huì)以“記錄中斷”或者“文件損壞”收?qǐng)觥?
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲综合激情五月| www久久久| 嫩草视频。| 狠狠干综合网| 五月婷婷丁香在线| 亚洲精品色色色| 国产资源在线视频| 丁香五月婷婷社区| 99久久国产宗和精品1上映| 婷婷无码五月天| 玖玖在线视频福利| 狠狠香蕉| 91人人爽狠狠狠| 成人五月丁香花| 日韩在线视频网站| 激情五月天偷拍综合网| 色婷婷色五月天| 五月丁香综合网色欲| 九九热最新地址| 九九伊人网| 色噜久| 激情又色又爽又黄的A片| 亚洲第79页| 天天舔夜夜操www com| 色婷大香蕉| 色色色999| 激情视频综合| 26.uuu丁香五月婷婷| 天天爽夜夜爽天天爽夜夜爽| 91啪级电影| 亚洲在线操| 91精品久| a色婷婷| 激情玖玖sh| 久久只有18视频| 日本在线视频播放91| 亚洲第一视频 久久| 青青.com| 久久综合热17c| 99五月丁香丁| 99热国产这里只有| 丁香亚洲婷婷五月| 思思精品久久艹| 婷婷五月天激情综合| 久久99热网| 久久婷婷五月综合| 99亚洲天堂| 久久精彩视频| 亚洲超碰青涩| 九色激情网| 99精品丰满| 5月丁香综合图区| 人妻无码视频网| 疯狂做受XXXX高潮A片| 日本久久精品| 日本视频久久| 91亚洲免费片| 丁香五月婷婷色| 六月丁香婷婷五月天| www色婷婷| 日本三级中国三级99人妇网站| 久久9视频| 视频这里只有精品| 色五月婷激情| 97色啪| 日本久热| 免费无码毛片一区二区A片| 农村熟妇高潮精品A片| 日本不卡一区二区三区| 97热久久五月婷婷| 天天草婷婷五月| 婷婷五月天影视| 亚洲色综合性| 亚洲精品午夜国产va久久成人| 26uuu最新地址| 99性色| 99在线精品免费视频| 九九九九热99超碰| 色色是色N一| 色色综合日韩| 99久久久久久www| 99精品自拍视频| CHINESE熟女老女人HD视频| 成人中文网| 亚洲精级| 丁香五月天激情婷婷丁香六月| 丁香五月宝贝激情网| 色色日韩无码| 九九视频这里只有精品| 九九精品婷| 97操碰视频| 美女天天艹人人爽| a久久| A久久| 色香蕉婷婷| 六月丁香婷婷综合狠狠爱夜夜爱| 色婷婷亚洲在线| 日本在线va| 亚洲色在线观看| 亚洲第一成人AV| 日韩啪啪视频| 曰曰久久| 婷婷五月丁香色播| 国产日日操夜夜操的肉棒视频| 中文字幕永久免费| 91精品91久久久中77777久久玖玖九九| 26uuu欧美日韩| 激情五月婷婷六月丁香| 成人做爰黄A片免费看直播室男男| 日韩情色在线观看| 99爱精品视频| 丰满少妇猛烈A片免费看观看| 91精品久久久久久久久 | 蜜臀A∨在线水帘洞| 婷婷五月丁香六月天亚洲综合| 久热中文字幕| 亚洲欧洲午夜成人精品av| 森林影视大全,最好看的2019年视频| 丁香六月婷婷久久综合| 操比激情五月| 国产精品成人av在线观看春天| 99久久综合网| 免费亚洲婷婷中文字幕| 91干视频| 超碰成人在线观看| 久久婷婷网| www天堂99| 婷婷伊人无码| 色婷婷丁香五月| 91疯狂操操操操| 五月丁香在线婷婷蜜桃| 亚洲第一成人无码A片| 色噜噜夜夜夜综合网| 五月丁香色婷婷熟女| 五月婷婷无码| 五月天天天开心激情网| 精品人妻伦九区久久AAA片| 激情亚洲婷婷| 日韩成人网址| 在线国产精品色| 婷婷五月天奸女| 五月天婷婷丁香花| 久99久在线| 开心久久网婷婷| 婷婷五月天激情影片| 99色色网| 激情 婷婷 丁香五月天| 人操综合| 婷婷五月激情六月| 成人五月天丁香| 五月婷婷色播| 激情五月开心五月在线视频| 免费看欧美成人A片无码| 国产五月丁香在线| 爱99干99| 99热综合| 五月激情六月丁香| 99er6| 五月婷婷六月激情| 九九久久综合网站| 中文字幕激情综合| 亚洲色网络| 色婷婷五月天激情| 91妻人人爽人人看片| 久久五月天激情视频| 亚洲日韩一页精品发布| 99爱在线免费视频| 激情五月丁香婷婷夜夜操| av在线免费播放| 色一情一乱一乱一区91| 日产精品一线二线三线芒果| 久久99热免费最新版| 91九色成人原创视频| 日本狠狠网| 丁香五月婷婷天堂大香蕉| 丁香五月婷婷五月| 欧美婷婷五月无砖| 亚洲这里只有精品| 欧美性爱5月天天天看| 久久婷婷七月丁香| 婷婷四色五月| 日本在线噜噜| 激情视频网址| www色哟哟| 日本色综合| 99精品在线播放| 啪啪91| 丁香五月综合在线观看| 欧美日韩一a.无| 99视频| 可以观看的AV| 99在线观看这里都是精品| 麻豆AV一区二区三区| 丁香五月天论坛| 91九色国产| 俺也去色| 99久久婷婷国产综合| 五丁香激情综合| www超碰com| 女同激情久久av久久| 丁香综合伊人AV| 激情九九六月激情免费视频| 色婷网站| 国产淫熟妇| 9 大屁股在线视频精品| 国产在线aaa片一区二区99| 热99热9| 一逼色综合| 新激情五月天| 99精品无码| 99成人免费热视频| 精品人妻久久久久久久| 亚州欧美国产久精国产99综合视频| 亚洲六月综合激情久久下卡| 99精品久久| 67194中文字幕| 蜜乳av一级av| 超碰99在线观看| 色婷婷九月| www.91操| 玖玖午夜视频| 色色色色色日韩午夜激情 | 无码AV免费精品一区二区三区| 欧美日韩aaa| 五月婷婷精品视频| 91妻人人爽人人看片| 97人人干人人操| 天天做好综合色| 婷婷五月欧美综合| 26uuu.| 五月天婷婷香蕉狠狠超碰综合| 97干干干丁香| 欧美电影在线观看| 河北真实伦对白精彩脏话| 51XX午夜影福利| 嫩草乱码一区三区四区| 婷婷情色激情| 日本VA视频| 日本九九热| 九九热10| www.狠狠操.com| 大香蕉婷婷| 99热在线精品播放| 婷婷激情性爱| aⅤ79成人片| 伊人五月天97| 国产成人高清| www色五月| 色丁香五月| 六月婷婷最新网址| 色色五月天丁香婷婷| 狠狠综合色网| 色婷婷伊人| 天天操天天曰天天射| 欧美激情-区二区三区| 成人.在线日韩| 丁香五月冃欧美| 人色五月天婷婷| 丁香 婷婷 激情 综合 五月| 色五月无码| 激情另类综合| 我要射综合| 久久五月婷婷开心网| 欧美大奶熟女噜噜噜噜| 色婷婷狠狠色| 天天爽天天| 久色激情| 天天爽夜爽| 99热官网| 665566 无码| 婷婷五月激情基地| 伊人五月综合网| 91啪啪啪啪| 大香蕉七区| 久久久A级视频| 涩涩婷婷五月| 激情综合网,婷婷| 久色中文| 97综合在线| 丁香桃色网| 六月丁香激情综合| 色五月婷婷五月天| 久热久| 日99网站| 色五月婷婷影院| 91vip在线观看| 久久五月婷婷电影| 99re这里只有精品视频了| 国产精品久久久海的味道| 9久久久久| 怡红院视频| 国产精品久久久久久久久久| 久久九九婷婷| 人人色人人摸人人看| 能看的AV网站| 综合久| 丁香婷婷综合激情五月色| 九九婷婷五月天| 91疯狂操操操操| 天天久久人人| 26uuu欧美宗合| 久久综合影院 | 免费操超碰| 亲子乱AV一区二区三区下载| 午夜婷婷六月天| 国产婷婷综合| 五月综合激情网| 91色综合网| 久久综合热17c| 精品久久66| 婷婷丁香五月亚洲| www.yw色| 新伍月婷婷| 可以直接看的av| 热99热久| 6080av| 色哟哟精品| 色色五月婷婷网| www.婷婷亚洲基地| 99热这里只有精品4| 亚洲热视频| 99久免费视频| 狠狠干五月丁香综合网| 98国产精品综合一区二区三区| 97操碰在线视频| 五月天自拍视频| 丁香五月色色| 99五月婷| 噜噜久| 无码人妻少妇色欲AV一区二区| 日韩久综合| 五月天激情小说婷婷基地| 超碰99在线| 9999热精品| 婷婷五月情色| 99国产精品久久久久久久久久久 | 五月天堂婷婷| www色综合亚洲92| 婷婷免费无视频| 婷婷五月丁香六月| 永久思思热在线| 婷婷久久99| 婷婷影院欧美| 久久婷婷亚洲| 超碰9在| 婷婷五月图片小说视频| 日本婷婷色日| 伊人大香蕉综合在线| 色五月五月天| 少妇性按摩无码中文A片| 99熟女| 91九色丨国产丨爆乳| 日韩xx在线| 婷婷五月天激情丁香| 无码少妇高潮喷水A片免费| 五月婷在线| 中美日韩成人在线| aa久久| 激情久久丁香| 久久精品4| 综合激情在线视频| 婷婷丁香社区网| 99热精品无码| 人人干Av| 狠狠爱婷婷丁香| 日日干夜夜干| 99久在线视频| 久久久久婷婷| 99精品无码网站| 无码激情AAAAA片-区区| 天天干天天爽天天爽| 国产av一区二区三区| 五月天小说激情| 亚洲在线免费成人| 色五月婷婷很很操| 婷婷天堂站| 五月天婷婷小说| 狠狠操之狠狠操| 欧美久热| 亚洲精品午夜国产va久久成人| 婷婷丁香五月基地| 99久久6| 五月婷婷久久激情 | 日本高清久久| 婷婷操无码| 玖玖资源站蜜臀| 五月天激情图片网| 丁香五月色| mmm1717.6dbm人人爱人人操| 一区二区你懂的| 色五月婷婷一二| 婷婷伊人中文字幕| www.wuyuetian啪啪| 婷婷五月天伊人网| 久久欧洲久久| 色色综合热| 亚洲乱码在线观看| 丁香综合伊人AV| 日韩精品一区二区刘| 人人操插| 亚州性爱99| 色欲五月婷婷| 91操人人操| 五月婷婷丁香五月 | 狠狠综合区| www.久久| 色情综合网| 色五月成人| 婷婷伊人久久无码色五月| 中文在线视频久1| 男女99免费视频| 色婷婷成人色网| 久热九九| 丁香五月六月综合欧美| 亚洲综合色丁香婷婷六月| 中文字幕五月久久婷婷| 九九99久久精品| 亚洲成人高清在线| 婷婷激情五月综合| 丁香花五月天| 第四色婷婷日本| 超级碰碰一区| 久久艹 五月天| 97天堂| 婷婷五月天黄色小说| 激情婷婷五六月天| www.主妇. com| 涩五月丝袜婷婷| 99这里有精品| 婷婷久久综合| 日韩 中文 欧美| 五月成人综合| 1995年关宝慧版蜘蛛女| 久久五月天精品视频| 久九九热| 亚洲Av成人在线观看| 屁股翘好撅高迎合跪趴| 久热这里| 伊人在线视频| 六月丁香五月天| 丁香婷婷月| 五月丁香六月合| 亚洲综合激情五月天婷婷| h亚洲| 97干资源在线观看| 激情婷婷五月在线合集| 色婷婷91激情小说| 秋霞九九无码| 大操人妻| 97碰 在线视频观看| 国产做爰视频免费播放| 国产精品18久久久| 专区无日本视频高清8| 在线色色| 色婷婷小说| 日韩另类| 啪啪一区| 激情五月成年| 综合在线观看99| 国产精品第一国产精品| 色婷婷丁香女女| 亚洲综合网在线| 亚洲日本韩国| 久婷婷视平| 4438亚洲欧美| 中文字幕综合色| 丁香五月色激情| 色狠狠婷婷| 婷婷色色欧美综合网| 亚洲天堂婷婷丁香| a片在线免费观看一区| 亚洲va久久久噜噜噜久久天堂| 亚洲综合网在线| av中文网| 日本一级大片| 色婷婷狠狠18禁| 成人在线视频网| 成人欧美日韩| 99在线爽| 欧美色色网| 婷婷五月天美女21p| 人人干女人| 国产成人网站在线观看| 九色PORNY9l原创自拍| 大香蕉啪啪啪| Av在线不卡一区| 99ri在线播放| 二人电影免费版在线观看| 色婷婷AV在线观看| 五月天婷婷情色| 亚洲网视屏| 99视频超级精品| 狠狠干在线视频| 91久久婷婷人人澡草| 噜噜国产| 禁欲电影完整版在线播放| 97在线99| 99日在线视频| 五月丁香激情深爱婷婷| 激情五月综合网最新| 日日杆天天| 丁香情色五月| 色色色99| 激情VA视频| 亚洲操逼网| 乱精品一区字幕二区| 超碰在线94| 狠狠搞五月天| 终合激情网| 这里只有精品2| 亚洲综合五月天婷婷| 94干大香蕉| 日本色噜| 久草大| 五月丁香啪| 伊人五月婷| 国産精品| 久久六月天| 九九热精品| 久re在线| 色综合五月婷婷狠狠干| 五月婷婷综合网| 午夜丁香久久久久久| 色玖玖综合网| 激情五月五月婷婷| 淫五月停停| 深爱五月月天| 五月天婷婷綜合院| 婷婷五月精品| 天天免费成年人视频| 激情五月婷黄版| 久热在线中文字幕色999舞 | 色五月大| 99热这里全是精品| 色色婷婷综合| 婷婷五月天激情综合| 伊人婷婷大香蕉| 极品五月天| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 五月丁香淫淫婷婷婷| 国产精品扒开腿做爽爽爽A片唱戏 亚洲爆乳无码精品AAA片蜜桃 | 欧美美女视频| 日日日,com| 婷婷射图| 五月婷婷|欧美| 日本激情综合| 香蕉视频性爱BB做爱| 2015好吊操| 99热亚洲| 久久东京热婷婷五月| 俺去也综合| 亚洲182在线观看| 亚州视频九九99| 婷婷六月综合激情| 91色色色| 天天干天天干天天操| 激情爱爱网站| 五月丁香啪啪综合| 亲子乱AV一区二区三区下载| 97热视频| 狠色综合网| 久久a热| 91爱操| 欧洲亚洲免费视频9| 丁香五月天天| 九九精品综合| 大香蕉啪啪啪| 色婷婷综合网站| 色五月婷婷中文字幕在线观看| 精品久久久999| 日本久久人人| 日日夜夜干| 99色这里| 国产午夜成人AV在线播放| 无码一区二区日韩| 成人做爰高潮A片免费视频| 丁香五月 综合| 丁香六月成人网| 老师的粉嫩小又紧水又多A片视频| 五月花综合网| 天天日天天久久青青| 九九热思思热| 亚洲AV电影美洲AV电影| 五月丁香激情四射| 婷婷五月花免费视频在线| 色情成人五月天| 天天 日综合| 思思干精品| 五月丁香六月激情在线| 五月丁香综合| 亚洲精品字幕| 婷婷社区五月天| 日韩色五月| 天天色粽合合合合合合合| 这里只有精品日韩精品| 超碰啪啪网| 色色狼人综合| 日本特黄aaaaa| 996re热精品视频| 97婷婷狠狠| 涩涩涩,com| 九九热视频精品999| 久色婷婷200| 日本3级片偷拍网站| 婷婷在线播放| 天天爽,夜夜爽| 色五月色五天色情网| 免费无码毛片一区二区A片 | 欧美综合激情| 激情婷婷五月| 婷婷激情五月天亚洲综合| 葵花AV在线| 色噜噜狠狠色综合日日| 久久66成人网站| 亚州色婷婷| 久久黄色片| www.jiujiujiu| 5月婷婷性视频| 激情文学第四色婷婷丁香五月| 99在线精品观看99| 成人丁香| 99视频在线观看视频| 色情五月天丁香社区| 激情内射人妻1区2区3区| 欧美Va日本Va| 5月丁香六月情| 婷婷九月| 五月婷婷五月色| 婷婷开心青青草| www98日本小时间到了| 五月天丁香久久综合| 亚洲中文字幕AV| 婷婷六月久久综合导航| 丁香色啪综合| 亚洲婷婷在线播放十月| 99久精品视频| 超级碰碰一区| 色吧婷婷五月亚洲| 激情五月婷婷综合| 120分钟婬片免费看| 丁香五月天啪啪| 国产精品久久久99视频| 日本色婷婷| 天天日日夜夜爽。| 五月丁香成人| 五月婷婷深深爱爱| 婷婷色中文字幕| 国产色视频网站2| 成人国产欧美大片一区| AAA久久| 欧洲亚洲午夜| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 亚洲成人在线播放| 超碰国产av| 91碰碰碰久久久久| 操操综合网婷婷| 色婷婷五月天| 丁香五月天啪啪| 成人日韩欧美| 最新久久网址| 久久性操| 伊人久久婷婷| 成人av在线电影| 日本丁香久在线| Aα在线免费观看| 丁香五月天AV在线 | 中字幕视频在线永久在线观看免费| 91九色国产| 99热99极品观看| 天天做天天爱天天玩| 五月婷婷性| 99综合一区| 五月丁香六月花| 五月丁香花激情综合网| 天堂草在线观看| 青草激情综合| 国产美女视频久| 色婷婷丁香五月| 色色色婷| 日日噜噜夜夜狠狠久久丁香五月| 夜夜操狠狠操| 亚洲精品又粗又大又爽A片| 成人国产欧美大片一区| 婷婷五月,综合伊人| 国内精品99| 禁片二区| 青青草色在线视频观看| 丁香五月激情六月欧亚激情综合导航| 五月婷婷开心深| 亚洲丁香五月天在线视频| 天天射射夜| 色色哒五月婷婷六月丁香| 五月婷婷69| 91AV婷婷| 成人精品视频99在线观看免费| 嫩草AV久久伊人妇女超级A| 色色网站毛片| 久久思思99| 婷色五月| 深爱五月最新网址| 啪啪操超碰| 婷婷五月天成人| 亚洲人人操BD| 五月天婷婷网站888| 六月婷婷av| 1024日韩| 久久久久久久久久婷婷| 午夜色婷婷| 99热99精品在线观看| 夜夜骑天天操| 五月丁香啪啪网| 丁香婷婷五月综合欧美另类| 色婷婷在线播放| 亚洲五月丁| 丁香五月欧美午夜视频| 色婷婷影院| 伊人久热91| 热热久久精品视频| 色五月av| 九八Av| 久久性操| 五月丁香婷婷俺| 亚洲成人网站在线观看| 五月天丁香久久综合 | 9精品国产在热久久| 中文字幕在线播放视频| 99热国产在线| 操人91| 激情五月婷黄版| 婷婷九月激情网| 91九色国产熟女| 97一区二区| 少妇激情基地| www.夜夜操| 天天射天天插天天干| 九九九九综合| 六月婷婷在线视频| 国产精自产拍久久久久久蜜 | www.久久99| se婷97| 九九视频这里只有精品在线播放| 激情五月天视频| 婷婷噜噜| 搡BBBB搡BBB搡18| 亚洲无码另类| 噜噜在线| 2022久久婷婷| 天天xxxxxx天天日| 亚洲成av人影院| 久久综合激情| 久久视频婷婷| 免费观看高清无码| 丁香五月天无码| 综合色图区| 久久婷婷五月丁香网| 丁香婷婷深情五月亚洲| 国产亚洲AV人片在线| 五月婷婷伊人网| 久久小视频| 亚洲天堂热| www久久艹| 青青操丝袜美腿| 噜噜噜久久亚洲精品国产品91| 午夜无码熟熟妇丰满人妻| 久久最新色色色| 五月天婷婷久久| 日本在线视频播放91| 国产视频婷婷| jiuse91在线| 激情性五月天免费小说视频| 六月丁花香啪啪激情欧美| 丁香五月天天日| 成人国产欧美大片一区| 色婷婷五月六月丁香综合视频| 九九久久网| 久久久网站| 夜夜操夜夜操| 丁香色情五月天| 色婷网| 成人色色综合| 国产做爰视频免费播放| 极品 少妇 内射| 国产乱人偷精品人妻A片| 五月丁香花伦理电影| 天天插天天插| 久久人妻系列| 人妻有码乱操| 夜夜操,天天撸| 99碰在线视频| 人人操97| 亚洲人成网亚洲欧洲无码久久| 丁香在线视频| 天天色伊人| 九色综合网| 国产26uuu| 天天综合色丁香| 91九色国产| 五月天五月色婷婷综合| 国产精品久久久久久妇女6080| 97婷婷丁香五月天激情图片| 成人五月天综合网| 五月激情婷婷丁香天堂| 婷婷月综合| 五月天综合久久| 五五月五月| 色情婷婷久久五月天| 丁香五月婷婷视频| 国产精品成人在线| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 亚洲AV综合在线观看| 亚洲精品网站色视频| 天天射影院| 丁香五月婷婷激情蜜桃| 在线观看亚洲视频影院| 天天干,夜夜爽| 韩国久久少妇视屏| 五月婷婷|欧美| 97色碰| 狠狠干综合网| 五月天婷婷色| 91高潮喷水久久久久久久久| 婷婷五月天久久| 六月婷婷视频| 青996青| 91狠狠色丁香婷婷综合久久精品| 99热这里只有免费| 99日本黄站| 丁香五月天天久久综合小说| 久久精品五月天| 五月色丁香国产在线视频| 久久玖玖综合| 中文中文在线| 五月丁香啪啪综合| 国产一级婬片毛片| 爆乳熟妇一区二区三区爆乳照片| 人妻丰满精品一区二区A片| 天天射影院| 99热综合在线观看| 超碰91人人操| 9色操| 69精品人人人人| 另类激情中文| 99热这里只有精品33| 91seav| 99玖玖视频| 国产乱人偷精品人妻A片| 日本99在线视频| 婷婷五月天成人综合网| 婷婷丁香五月天婷婷| 92久久久| 欧美69久成人做爰视频| 99久久综合| 激情小说婷婷| 激情综合另类| 亚洲国产精品五月天| 日本久久人| 91聚色综合网| 欧美性猛交 XXXX 乱大交| 情色婷婷五月天| 开心五月深爱婷婷| 丁香五月日本| 久久久思思热| a在线观看| 久久婷婷激情四射五月天| 丁香婷婷九月在线| 国产日韩欧美| 思思热这里只有精品| 丁香五月情| www激情| 亚洲 五月 婷婷 成人| 天天日日天天| 日韩无码一区二区三区四区| 亚洲天堂热| 欧美日本黄色| 五月狠狠| 麻豆精品| 婷婷之玖玖| 狠狠色噜噜狠狠狠狠狠色综合久久| 色色国产| 婷婷五月综合在线| 五月天激情综合| 第四色五月天| 亚洲操b| 深爱五月激情| 天天骑天天操| 激情综合网五月激情| 9热视频在线观看| 亭亭色网| 97自拍视频在线| 99热精品在线播放| 色婷婷综合网| 色五月激情网| 婷婷精品| 亚洲亚洲人成综合网络| 99国产精品久久久久久久久久久| 免费看欧美成人A片无码| 成人做爰A片免费看网站找不到了 噼里啪啦在线观看免费完整版视频 | 午夜激情五月天| 婷婷色基地| 九九热在线精品| 99久久网站| 久久综合影院| 婷婷色中文字幕| 婷婷六月丁香五月| 思思热在线| 亚洲精品久久久久久久久久吃药| 天天躁日日躁狠狠躁日日躁2022年5月9日 | 九九视频在线观看| 天天爽天天| 91精品无码| 久久九九免费视频| 九九无码| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 夜夜嗨一区二区三区直播内容 | 99热精品在线在线| 一本色道久久88加勒比| 色yeye欧美| www.婷婷,com| 中文精品久久久久人妻不| 天天爽,天天操。| AV79| 久久精品99久久久久久| 色屌丝中文字幕| 免费视频WWW在线观看网站| 波多野结衣不卡AV| 91在线日本| 他改变了拜占庭| 婷婷精品在线| 精品人妻一区二区| 亚洲这里只有精品| 色五月丁香A欧美com| 色婷婷影| 色色色在线播放| 五月天 另类图片| 五月丁香久人妻中文| 99热精品在线播放| 另类国产欧美视频| 99久re热视频精品98| 亚洲mm色| 五月丁香久人妻中文| 99ER热精品视频| 十区av| 久久婷婷激情五月天一区二区| 这里只有精品在线播放| 五月婷婷成人| 无码激情AAAAA片-区区| www.色情五月天.com| 日日天天天| 久久久久久久久人妻| 夜夜爽天天爽| 久久无意婷婷| 狠狠夜夜五月丁香| 直接看的av| 99热亚洲| 99精品高潮| 丁香伊人激情| 色婷婷欧美| 永久天堂日本| oumeisesewang| 五月天狠狠色| 伊人久久丁香五月91| 99热9999| 久久久精品色| 白人荫道BBWBBB大荫道| 91人人网| 直接看的AV网站| 桃色五月天| 色色激情五月| 色停停五月天| 免费无码毛片一区二区A片 | 五月婷婷啪啪啪啪| 九九九这里只有精品| 这里只有精品在线视频在线观看| 内射爽无广熟女亚洲| 棕合影院色色| 久机视频这只有精品| 99精品国产在热久久| 久久五月视频| 人人操AV| 91人无码久久久久久| 丁香花五月天| 五月婷婷激情综合| 久久 婷婷 五月天| 色噜噜狠狠一区二区三区| 久久色六月| 91热er| 成年人丁香五月| 五月丁香91| 久久婷婷五月天| 熟女国产在线一区二区三区四区| 婷婷五月丁香伊人网| 丁香婷婷人妻综合网| 九九碰九九爱97超| 九九av在线| 色五月丁香婷婷在线观看| 丁香五月婷婷国产av| 五月激情另类| 色五月激情五月| 五月丁香久久网| 九九热精品| 亭亭五月丁香综合欧美| 免费黄色片子| 人妻综合网| www狠狠| 五月停停色色丁香| 婷婷六月天天| 色色五月天网站| 99日在线视频| 黄色AV日韩| 五月天婷婷视频| 91一起操| 婷婷五月情| 五月丁香在线视频观看| 色五月婷婷五月天| 激情文学天天| 久久久99精品免费观看| yazhouzonghesese| 啪啪日热| 玖玖资源站中文| 97婷婷丁香五月天激情图片| 婷婷在线激情| 91人操人人人操人| 色综合久久44| 99热九九这里只有精品| 在线综合网| va婷婷在线| 久久久一级AAA| 五月丁香六月香综合激情| 婷婷丁香精品视频在线观看| 五月天六月婷| 激情图片久久| 久久综合九九| 99这里有精品免费| 天天干天天日蜜臀av| 99精色| 夜夜爱影院| 九九这里都是精品| 色婷婷婷婷成人网| www.第四色99| 国产这里只有精品| 久久婷五月| 国产肥白大熟妇BBBB视频| 亚洲无码九九| 国产.亚洲.欧洲视频在线| 婷婷在线精品| 丁香八月综合激情| 秋霞AV淫| 国产日批视频免费播放| 99视频| 狠狠色噜噜狠狠狠狠综合| 外国碰视频网站97| 国产精品第一国产精品| 性色视频| 成人av免费观看| 影音先锋91在线资源站| 五月婷在线| 人人操Av| 久久天堂色| 狠狠色成人影片| 五月丁六月婷| 超碰com| 色欧美一级| 中文字幕综合| 天天射综合网天天插| 亚洲色图81p| 国产肥白大熟妇BBBB视频| 思思热AV| 思思视频这里是精品| 色色97丁香婷婷五月天| www.婷婷.com| 久久人妻视步| 五月丁香爱婷婷深深| 超碰免费电影| 久久久婷婷婷| 亚洲人人操| 2020久久婷婷五月| 一二区成人电影| 国产日产亚洲系列最新| 激情久久久久久久久| 色五月婷婷激情五月| 激情综合五| 久久免费少妇高潮99精品| 色噜噜综合网| 色丁香六月| 天天拍夜夜撸| 婷婷97碰碰| 丁香五月婷婷国产av| 深爱五月激情| 色久综合| 色婷婷五月天天天干天天操天天爽| 激情丁香婷婷| 美女伊人久久| 亚洲春色奇米影视| 99热只有这里有精品| 激情五月激情综合网| 久色五月婷婷综合| 亚洲性受XXXX五月丁香| 97碰碰视频| av一区二区电影免费在线观看| 开心五月婷婷激情| 久久精品婷婷| 99热这里只有精品8| 五月婷导航| 欧洲日韩一区二区三区| 天天操夜夜爽天天操| 婷婷激情六月综合| 亚洲视频1区| 91九色超碰| 夜夜穞天天穞狠狠穞AV美女按摩| 久色网| www.色综合.com| 免费在线观看欧美激情xx小视频| 色五月婷婷丁香婷婷| 色情·com| 五月开心婷婷极品激情| 久久婷婷网站| 五月天综合激情网| 五月丁香色综合| 99热久久日本| 九九久久污| 激情五月天福利| 操逼电影免费看| 男人大jjc女人免费视频| AA片在线观看视频在线播放| 色情五月丁香| 婷婷综合五月| 天天玩夜夜操| 六月婷婷五月丁香| 五月婷久久| 色色五月天婷婷| 婷婷六月色| 五月婷婷基地| 日本猛少妇色XXXXX猛叫| 久久99精品视频| 婷婷久久五月天| 国外亚洲成AV人片在线观看| 婷色五月| 成人综合网站| 婷婷情色开心五月天99| 色.五月综合网| 玖玖99婷婷| 99网址在线观看| 天堂网亚洲色图| 色综合久久综合| 五月天婷综合| Av九九| 最新热中文字幕| 亚洲熟妇AV综合网五月丁香伊人| 五月天色综合服务平台| 人人看人人草人人摸| 色婷婷色人人射| 中文乱子伦视频| 九九成人| 久热这里只有精品99re| 狼人久草| 成人国产欧美大片一区| 午夜AV网| 百度4399有码精品V在线观看| 色色色97| 天天操天天爱天天日| 开心四月婷婷在线色播播| 伊人五月网| 五月婷婷激情综合av| 超碰在线人妻| 激情婷婷| 日本色99网站| 99久精品视频| 操操操www.com| 五月丁香六月合| 五月亭亭性| 久久丁香| www.金莲av| 久热伊人9| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 丁香五月天BBw| 思思热在线观看| 九九热视频在线观看| 91精选国| 影音先锋一区| 99久久成人| 精品99在线观看| 婷婷大香蕉| www久久久久久| 桃色五月婷婷| 巴基斯坦粉嫩无码视频| 婷婷五月电影院| 丁香婷婷天堂| 综激情网| 丁香五月激情性色郤| 亚洲AV中文在线| 亚洲精品V天堂中文字幕| 高清无码网址| 日本九九九九| 播丁香五月婷婷欧美| 丁香婷婷色情| 亚洲激情视频网| 久久激情天堂| 河北真实伦对白精彩脏话| 婷婷五月精品中文字幕| 爱草视频在线观看| 欧美日韩成人一区二区| 日韩av手机在线观看| 香蕉操亚洲| 丁香五月天啪啪激情综和网 | 美女xx不卡| 婷婷5月天激情综合| 这里只有精品久久| 熟女人妻一区二区三区免费看| 亚洲色色五月天| 日韩精品色| 六月激情综合| 伊人狠狠色婷婷综合丁香一区| www,欧美干干干干干干| WWW.99热| 欧美性交一区二区三区| 色色aⅤ網| 狠狠干婷婷| 九九九九大香蕉| 婷婷开心六月| 97人人草| 亚洲精品国产成人AV在线| 一级性爱视频| 影音先锋高清无码资源网| 丁香五月综合高清在线| 天天做天天爱天天玩| 色婷婷色综合久久精品V| 六月丁香视频网站| 婷婷久月| 97超碰欧美中文字幕| 伊人婷婷五月天av| 超碰在线成人| 一逼色综合| 在线只有精品| 婷婷激情五月天激情小说| 色婷激情网| 嫩草AV久久伊人妇女超级A | 8区视频在线| 青青日韩| 色五月在线观看| 九九热9| 狠狠婷婷爱| 狼人久草| 六月五月丁香五月欧美| 97色色婷婷| 婷婷射丁香| 综合大香蕉| 九色自拍| 婷婷伊人久久| 9久国产精品| 99热久草| 久久99激情| 丁香六月激情| 丁香五月综合无码趴趴| 五月天亚洲色| 日韩AV一区二区三区| 色婷婷狠狠18| 欧美人人超级碰| 五月丁香六月情| 五月天激情图片网| 九九成人视频| 91艹人| 色欲五月婷婷| 99热e| 夜夜爽天天爽| 狠狠久久婷五月综合色| 一本大道伊人AV久久综合|