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

ARTICLE DETAIL

資訊詳情

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

STM32+MRAM替代SPI Flash:工業(yè)頻繁寫入存儲方案詳解

STM32+MRAM替代SPI Flash:工業(yè)頻繁寫入存儲方案詳解 前幾年接了塊返修的產(chǎn)線控制板現(xiàn)象很典型客戶說參數(shù)存不住有時候開機數(shù)據(jù)是上次的有時候直接恢復(fù)成出廠默認值。板子主控就是STM32F446ZE程序里用一顆SPI NOR Flash存配方參數(shù)邏輯不復(fù)雜——上電讀、掉電寫??蓡栴}恰恰出在那個掉電寫上一天通斷幾十次每次都擦寫同一個扇區(qū)Flash的壽命很快見了底。后來我把方案換成了Everspin的MR25H40CDF一顆4Mbit的SPI接口MRAM和STM32F446ZE的SPI外設(shè)直接對接硬件改動極小但存儲層的壽命問題一下就消失了。這篇文章就圍繞這個組合展開MR25H40CDF為什么適合工業(yè)現(xiàn)場頻繁寫入的場景它和STM32F446ZE怎么搭配驅(qū)動怎么寫實測表現(xiàn)怎么樣以及我在實際部署里踩過的各種坑。如果你正在評估MRAM方案、準備做參數(shù)存儲或工況記錄器或者只是單純想給嵌入式硬件知識補一塊拼圖這篇應(yīng)該能直接省去你翻手冊和反復(fù)試錯的時間。1. 存儲選型背后的賬Flash的擦寫壽命扛不住工業(yè)現(xiàn)場1.1 一次真實的數(shù)據(jù)丟失排查先還原一下那臺設(shè)備的排查過程。板卡回來后我先量供電3.3V正常晶振正常SPI時鐘也有輸出。用示波器抓CS、SCK、MOSI看起來讀寫邏輯都在跑但讀回來的數(shù)據(jù)和寫入時對不上而且出錯的地址每次都不一樣。后來我把SPI Flash單獨拆下來用編程器全片讀取發(fā)現(xiàn)好幾個扇區(qū)的狀態(tài)標志位已經(jīng)異常部分頁編程后回讀就出錯。這顆Flash規(guī)格書上寫的是十萬次擦寫壽命而設(shè)備一天開關(guān)機幾十次、每次掉電都要寫一小段運行計數(shù)和參數(shù)滿打滿算一年下來同一個扇區(qū)就被擦寫了上萬次再加上程序里沒有做磨損均衡用一年出頭就接近壽命極限了。這其實是工業(yè)設(shè)備里很常見的隱性故障靜態(tài)壽命指標看著夠動態(tài)寫入頻率算一算就露餡了。我當時還考慮過改固件加磨損均衡但產(chǎn)品已經(jīng)鋪出去了現(xiàn)場幾千塊板子要遠程升級代價太大。最后決定在硬件層面換存儲介質(zhì)選型條件很明確SPI接口、掉電不丟、能扛高頻次寫入、容量不小于256KB。1.2 MRAM到底改了存儲機制的哪個環(huán)節(jié)MRAM的全稱是磁阻式隨機存取存儲器Magnetoresistive RAM核心存儲單元是磁性隧道結(jié)MTJ。每個bit存的是自由層磁化方向——一個方向代表0反方向代表1讀取時通過隧道磁阻效應(yīng)感知電阻高低。Flash和EEPROM存儲的是電荷寫入時要么需要先擦后寫Flash要么寫一個字節(jié)就要走一遍電荷泵EEPROM。電荷存久了會漏寫入大量電荷還會損耗氧化層壽命天然有限。MRAM不存電荷它存的是磁矩方向?qū)懭刖褪欠D(zhuǎn)自由層的磁化方向相當于讓一個指南針指到新位置。這個翻轉(zhuǎn)過程不消耗存儲介質(zhì)本身所以擦寫壽命可以做到10的14次方量級而且寫入不需要先擦除直接覆蓋寫掉電后磁矩方向也不會憑空消失。用大白話理解Flash像一塊黑板寫新內(nèi)容之前必須先擦掉舊內(nèi)容而且黑板擦多了表面會壞MRAM像一排磁吸標簽?zāi)阒恍枰褬撕灧瓊€面翻幾十億次標簽本身也不會磨損。1.3 工業(yè)存儲方案對比MRAM并非唯一答案如果你在做選型我建議先把下面這張表看明白別一聽MRAM永不壞就無腦下單。MRAM貴而且貴得有理但很多場合其實用不上。特性MR25H40CDFMRAM常見SPI NOR FlashSPI EEPROM典型容量4Mbit512KB1Mbit~64Mbit16Kbit~2Mbit寫入方式字節(jié)/多字節(jié)直接覆蓋寫頁編程塊擦除字節(jié)寫但耗時較長擦寫壽命大于10^14次約10^5次/扇區(qū)約10^6次/字節(jié)寫入前是否需擦除不需要必須不需要掉電保持數(shù)據(jù)保持能力強常溫約20年常溫約100年成本偏高低中等選型邏輯分三種情況只存配置文件一年改幾次那普通SPI Flash完全夠用別浪費錢。需要頻繁記錄數(shù)據(jù)比如每秒寫一條工況記錄那Flash即便做磨損均衡也很痛苦EEPROM容量又太小MRAM是單芯片方案里最省心的。需要快速隨機改寫大塊數(shù)據(jù)同時要求掉電不丟MRAM幾乎是唯一不需要軟件做復(fù)雜均衡策略的選項。我當時的核心需求就是高頻次、小數(shù)據(jù)量、持續(xù)多年跑MR25H40CDF的512KB容量又足夠我在里面做環(huán)形日志所以選它很自然。STM32F446ZE的SPI外設(shè)跑40MHz時鐘沒有壓力整張板子的BOM改動也就是把一顆Flash換成一顆MRAM引腳兼容性稍作調(diào)整就行。2. MR25H40CDF與STM32F446ZE的硬件配合時鐘居然會超規(guī)格2.1 電氣連接與上電時序MR25H40CDF是標準SOIC-8封裝和常見SPI Flash的供電、地、SPI四線基本一致。我在STM32F446ZE上默認用SPI1引腳分配如下STM32F446ZE引腳復(fù)用/模式MR25H40CDF引腳PA4GPIO輸出軟件NSSCS#PA5SPI1_SCKSCKPA6SPI1_MISOSOPA7SPI1_MOSISI3.3V—VDDGND—VSS注意MR25H40CDF的工作電壓是2.7V到3.6V和STM32F446ZE的3.3V供電域直接共用沒問題。VDD到GND之間要放一個0.1uF的去耦電容盡量靠近芯片引腳。原理圖上如果MRAM芯片有HOLD#和WP#引腳這兩個腳不能懸空分別用10k電阻上拉到3.3V。很多人在這一步偷懶結(jié)果現(xiàn)場出現(xiàn)莫名其妙的通信凍結(jié)或?qū)懕Wo后面第五章我會專門講。還有一個容易被忽略的上電時序問題MRAM內(nèi)部有上電復(fù)位邏輯主控剛上電的那幾百微秒里芯片可能還沒準備好接收SPI命令。我的做法是在驅(qū)動初始化函數(shù)里先延時10ms再發(fā)起第一次訪問。這個延時既照顧MRAM上電穩(wěn)定也覆蓋STM32F446ZE的復(fù)位和外設(shè)時鐘穩(wěn)定時間保守但可靠。2.2 SPI時鐘的超標陷阱這里要重點說一個很多人踩過的坑SPI時鐘頻率配置。MR25H40CDF手冊明確最大SCK是40MHz3.3V供電時但STM32F446ZE的主頻是180MHzAPB2總線默認90MHz。如果你在CubeMX里隨手把SPI1分頻設(shè)為2分頻SPI時鐘就是90/245MHz——超規(guī)格了。超2MHz聽起來不多但工業(yè)現(xiàn)場不是實驗室溫度升高、線纜變長、信號完整性變差之后45MHz的時序余量會進一步縮小。我之前調(diào)試時用40MHz跑沒問題換成另一批板子就偶發(fā)讀回0xFF最后查到是時鐘配置問題。要解決有兩種思路保守方案SPI1分頻設(shè)為4得到22.5MHz。對MRAM這種命令開銷很小的器件來說22.5MHz和40MHz的實際吞吐差距大約只有一倍記錄類應(yīng)用完全夠用。滿速方案把STM32F446ZE的系統(tǒng)主頻從180MHz降到160MHz此時APB280MHzSPI1設(shè)2分頻SPI時鐘正好40MHz。損失11%的CPU性能換SPI滿速對大多數(shù)數(shù)據(jù)采集類場景是劃算的。如果你的系統(tǒng)因為算法跑分必須鎖在180MHz那就老老實實選22.5MHz不要賭超頻。MR25H40CDF在實驗室里跑45MHz大概率也能工作但工業(yè)產(chǎn)品要的是所有樣本、全溫度范圍、全生命周期都穩(wěn)定超規(guī)格就意味著交付風(fēng)險。2.3 PCB布局上的三條建議這塊板子后來改版時我在PCB布局上做了三件事SPI四條信號線遠離電機驅(qū)動、繼電器、開關(guān)電源的電感走線尤其SCK和MOSI。MRAM寫入動作是通過電流翻轉(zhuǎn)磁矩實現(xiàn)的強干擾環(huán)境下如果時鐘沿被毛刺污染命令解析就會錯位。每根SPI線上串聯(lián)33歐姆電阻靠近MCU端放置。這能抑制振鈴尤其是在線纜長度超過10cm的場景下效果比單純調(diào)低SPI時鐘更明顯。MRAM的VDD腳除了0.1uF退耦電容我再加了一顆4.7uF鉭電容。雖然這顆芯片本身功耗不高但STM32F446ZE在SPI傳輸時電平翻轉(zhuǎn)速度快電源紋波會通過VDD耦合到MRAM內(nèi)部參考電路加大電容后讀寫數(shù)據(jù)穩(wěn)定性有明顯改善。3. 驅(qū)動代碼SPI讀寫MRAM的三板斧與三個坑3.1 先認指令沒有擦除概念的SPI存儲MR25H40CDF的指令集和常見SPI Flash很接近如果你寫過W25Q系列上手基本無痛。核心指令如下指令名操作碼說明WREN0x06寫使能WRDI0x04寫禁止RDSR0x05讀狀態(tài)寄存器WRSR0x01寫狀態(tài)寄存器READ0x03讀數(shù)據(jù)WRITE0x02寫數(shù)據(jù)最大的區(qū)別就是MRAM沒有頁編程、沒有扇區(qū)擦除、沒有狀態(tài)寄存器里的BSY位。寫任何地址直接發(fā)WRITE指令寫完拉高CS就算完成不需要等待內(nèi)部擦寫完成。地址字段方面MR25H40雖然是4Mbit容量但指令格式使用的是24位地址字段其中只有低19位有效A23到A19填0。如果你的批次手冊寫明地址字段是2字節(jié)部分早期Everspin型號確實如此把地址發(fā)送次數(shù)改成2次即可這也是移植驅(qū)動時第一個要核對的地方。3.2 驅(qū)動代碼骨架下面是用STM32 HAL庫寫的驅(qū)動骨架。我習(xí)慣把CS用普通GPIO控制而不是SPI外設(shè)的硬件NSS原因后面會說。#define MRAM_CMD_WREN 0x06 #define MRAM_CMD_WRDI 0x04 #define MRAM_CMD_RDSR 0x05 #define MRAM_CMD_WRSR 0x01 #define MRAM_CMD_READ 0x03 #define MRAM_CMD_WRITE 0x02 #define MRAM_CS_LOW() HAL_GPIO_WritePin(MRAM_CS_GPIO_Port, MRAM_CS_Pin, GPIO_PIN_RESET) #define MRAM_CS_HIGH() HAL_GPIO_WritePin(MRAM_CS_GPIO_Port, MRAM_CS_Pin, GPIO_PIN_SET) static void mram_delay_us(uint32_t us) { // 簡易阻塞延時也可以用定時器微秒延時替代 for (volatile uint32_t i 0; i us * 40; i) {} } static uint8_t mram_read_status(void) { uint8_t cmd MRAM_CMD_RDSR; uint8_t st 0xFF; MRAM_CS_LOW(); HAL_SPI_Transmit(hspi1, cmd, 1, 10); HAL_SPI_Receive(hspi1, st, 1, 10); MRAM_CS_HIGH(); return st; } static void mram_write_enable(void) { uint8_t cmd MRAM_CMD_WREN; MRAM_CS_LOW(); HAL_SPI_Transmit(hspi1, cmd, 1, 10); MRAM_CS_HIGH(); mram_delay_us(5); // 讓W(xué)REN指令在CS高電平后可靠鎖存 } static void mram_send_addr(uint32_t addr) { uint8_t buf[4] { (addr 16) 0xFF, (addr 8) 0xFF, addr 0xFF, 0 }; // 上面buf[3]是湊數(shù)實際發(fā)送前3字節(jié)即可 HAL_SPI_Transmit(hspi1, buf, 3, 10); } void mram_write_bytes(uint32_t addr, const uint8_t *data, uint32_t len) { uint8_t cmd; if (addr len 512 * 1024) return; mram_write_enable(); cmd MRAM_CMD_WRITE; MRAM_CS_LOW(); HAL_SPI_Transmit(hspi1, cmd, 1, 10); mram_send_addr(addr); HAL_SPI_Transmit(hspi1, (uint8_t *)data, len, 1000); MRAM_CS_HIGH(); mram_delay_us(1); // 留出極短的內(nèi)部穩(wěn)定時間下一筆操作前CS已拉高 } void mram_read_bytes(uint32_t addr, uint8_t *buf, uint32_t len) { uint8_t cmd MRAM_CMD_READ; if (addr len 512 * 1024) return; MRAM_CS_LOW(); HAL_SPI_Transmit(hspi1, cmd, 1, 10); mram_send_addr(addr); HAL_SPI_Receive(hspi1, buf, len, 1000); MRAM_CS_HIGH(); }這里有一個和Flash驅(qū)動很不一樣的地方Flash寫之前要等BSY位清0MRAM不需要。我在驅(qū)動里保留了寫完之后的一個微秒級延遲純粹是為了讓CS拉高沿之前所有數(shù)據(jù)字節(jié)都已穩(wěn)定送入芯片這個習(xí)慣在多字節(jié)連續(xù)寫時能明顯減少偶發(fā)丟幀。3.3 CS/NSS管理的工程細節(jié)為什么我堅持用GPIO控制CS而不是STM32的NSS硬件腳三個原因第一MRAM命令執(zhí)行要求CS在整個命令序列期間穩(wěn)定拉低如果硬件NSS配合不當在SPI FIFO空、時鐘暫停時NSS的自動翻轉(zhuǎn)可能會把MRAM的命令狀態(tài)機打斷。第二硬件NSS在多從設(shè)備掛同一SPI總線時很難管理而GPIO方式可以任意擴展到掛Flash、掛SD卡、掛傳感器只要在切換CS之前確保上一個設(shè)備的CS已經(jīng)拉高總線就是干凈的。第三代碼調(diào)試方便。GPIO控制的CS在邏輯分析儀上一眼就能看出哪個階段拉低了、哪個階段拉高了排查問題比黑盒的硬件NSS直觀得多。另外寫使能指令和寫數(shù)據(jù)指令之間CS必須有一次拉高。這是MRAM和Flash的一致要求。我看到過不少剛接觸MRAM的工程師把WREN和WRITE連在一個CS低段里發(fā)結(jié)果寫入完全無效。我在上面代碼里特意把mram_write_enable()里的CS拉高和下一次CS拉低之間留了5us就是為了保證這一點。4. 實測數(shù)據(jù)讀得快、寫得穩(wěn)、掉電不丟4.1 吞吐性能實測我們在自己的測試板上把MR25H40CDF用40MHz SPI時鐘接在STM32F446ZE上連續(xù)讀寫512字節(jié)塊做了一組測試操作耗時備注讀512字節(jié)約120us含CS切換和地址發(fā)送寫512字節(jié)約130us含WREN和CS切換寫1字節(jié)約8us純軟件調(diào)用開銷占比更大讀1字節(jié)約7us同上換算下來40MHz時鐘下寫512字節(jié)的吞吐量大約4MB/s。對于工況記錄、參數(shù)備份這類應(yīng)用完全夠用。我拿同樣場景對比過一顆常見的16Mbit串行Flash讀速度差不多但寫512字節(jié)需要先擦除一個4KB扇區(qū)再頁編程四次總耗時接近10ms是MRAM的七十多倍。這就是兩者在頻繁寫入場景下最本質(zhì)的差距。如果你用22.5MHz的SPI時鐘讀寫512字節(jié)大概會到200us左右也遠快于Flash的擦寫路徑。所以在速度上MRAM比Flash更適合高頻小包寫入這一點實測下來非常明顯。4.2 掉電與數(shù)據(jù)保持實測掉電測試我做了兩組。第一組是正常寫數(shù)據(jù)等寫完拉高CS后立刻斷電再上電讀回全部正確。第二組是人為在SPI傳輸過程中切斷電源模擬最惡劣情況重新上電后發(fā)現(xiàn)已經(jīng)完整進入芯片的數(shù)據(jù)段保持住了沒有出現(xiàn)整個扇區(qū)全毀的情況。這和Flash掉電損壞不太一樣。Flash在擦除過程中掉電整個扇區(qū)可能處于半擦狀態(tài)恢復(fù)過來往往是大面積的0xFF或亂碼。MRAM的寫入是每個bit獨立翻轉(zhuǎn)磁矩不會有擦除一半這種中間態(tài)所以掉電破壞范圍通常局限于正在傳輸?shù)哪且恍《螖?shù)據(jù)。但別高興太早。雖然硬件層面不容易全盤損壞但在傳輸中途掉電這一幀數(shù)據(jù)可能只有前幾個字節(jié)寫進去了。所以我在應(yīng)用層做了一件事每條記錄都帶長度、序列號和CRC16讀回來先校驗校驗不過就丟棄或標記為異常。MRAM省了擦除的麻煩但數(shù)據(jù)完整性校驗還是得靠軟件來兜底。4.3 長期寫入后的磨損表現(xiàn)MR25H40CDF的擦寫壽命標稱大于10的14次方次這是什么概念假設(shè)你每秒寫一次一年約3153萬次10的14次方次可以連續(xù)寫3萬多年。相比之下一顆Flash如果每秒寫同一個扇區(qū)一次十萬次壽命撐不過28小時。就算打個折按10的11次方次算也能寫三十年。在工業(yè)設(shè)備普遍設(shè)計壽命5到10年的背景下MRAM的磨損基本可以忽略不計不用再做磨損均衡。這讓代碼結(jié)構(gòu)變得異常簡單不需要建立塊的擦除隊列不需要維護磨損表直接把整個容量當成一個大數(shù)組用就行。5. 工業(yè)現(xiàn)場的幾個隱藏坑版本、HOLD#、掉電競態(tài)5.1 溫度等級和絲印別選錯MR25H40CDF這個后綴里的C在Everspin的命名規(guī)則里通常表示商業(yè)級溫度范圍0到70攝氏度。很多工業(yè)設(shè)備機箱夏天就能到60度如果板卡靠近發(fā)熱源芯片表面溫度很容易超過70度這時候商業(yè)級版本就在超范圍工作。選型時一定要確認物料編碼對應(yīng)的溫度等級。工業(yè)級版本一般為-40到85攝氏度或者更寬價格會有差異但相比整機返修成本這點差價根本不值一提。我自己的習(xí)慣是在BOM表里把溫度等級寫進型號備注防止采購替換成商業(yè)級版本。另外到貨后抽測幾顆在高溫箱里跑到85度連續(xù)讀寫確認絲印和實際規(guī)格一致再批量上線。5.2 HOLD#與WP#不接就是給偶發(fā)故障留門這是我在第一版板子上踩過的實坑。MR25H40CDF的8腳封裝如果帶HOLD#這個引腳一旦被拉低SPI通信會暫停在當時的電平狀態(tài)SCK繼續(xù)翻轉(zhuǎn)也沒用。如果板子上這個腳懸空遇到上電時序異常、外部干擾或者MCU的IO口誤配置HOLD#就可能被噪聲拉到低電平結(jié)果就是通信偶發(fā)卡死復(fù)位后才能恢復(fù)。WP#腳同理。WP#拉低時如果狀態(tài)寄存器啟用了塊保護寫操作會被直接忽略。雖然我們初始化時序里一般會把狀態(tài)寄存器清0但懸空的WP#一旦受到干擾配合WRSR帶入的意外位可能出現(xiàn)寫操作完全無響應(yīng)但讀正常的詭異現(xiàn)象。所以我的方法是HOLD#和WP#都接10k電阻上拉到3.3V并且在原理圖評審時明確標注此腳不可懸空。如果你手頭的封裝確實沒有這兩個腳那也要以數(shù)據(jù)手冊的引腳定義為準確認后再決定。5.3 傳輸競態(tài)與中斷打斷STM32F446ZE的SPI1支持DMA我最初圖省事直接把大塊數(shù)據(jù)讀寫放在中斷回調(diào)里做。結(jié)果發(fā)現(xiàn)一個競態(tài)當MRAM正在通過DMA傳輸時如果高優(yōu)先級中斷比如定時器中斷打斷而驅(qū)動代碼又沒有處理重入MRAM的片選可能被意外拉高或者SPI外設(shè)的FIFO被新的傳輸請求破壞。這里我的建議是分情況處理小數(shù)據(jù)量比如幾個字節(jié)的狀態(tài)記錄直接阻塞傳輸不需要DMA簡單可靠。大塊數(shù)據(jù)比如512字節(jié)日志導(dǎo)出用DMA傳輸?shù)珎鬏斊陂g關(guān)閉可能打斷SPI的外設(shè)中斷或者在SPI驅(qū)動層加上互斥鎖。不要在定時器中斷里寫MRAM。定時器中斷的頻率往往不固定掉電瞬間可能正好撞上寫操作引入的不可控因素太多。掉電保存那點數(shù)據(jù)在主循環(huán)里處理就夠。5.4 數(shù)據(jù)完整性別把不掉電當成不會丟幀MRAM不丟電荷但SPI傳輸本身有出錯的可能。我在前面提到的試驗里即使在正常上電狀態(tài)下連續(xù)10萬次寫入里偶爾也會讀回一個壞幀——大概率是線纜干擾或接觸不良造成的。如果不在應(yīng)用層做校驗壞幀會被當成真實數(shù)據(jù)存下來等到下次讀取時才會暴露。這也是我在第六章的日志設(shè)計里堅持要加CRC和序列號的原因。MRAM只是把存儲介質(zhì)的可靠性提升到了接近極限但總線、電源、軟件這整條鏈路仍然需要常規(guī)的容錯手段這一點希望每個讀者都記住。6. 完整用例把STM32F446ZEMR25H40CDF做成工況記錄器6.1 存儲布局設(shè)計最后用一個完整的應(yīng)用例子收尾。假設(shè)要做一個工業(yè)設(shè)備工況記錄器每秒鐘記錄一次通道數(shù)據(jù)到MRAM掉電不丟上電后能讀出最近的N條記錄。我的存儲劃分是區(qū)域地址范圍用途日志頭部0x00000 ~ 0x000FFmagic、當前寫指針、版本號記錄區(qū)0x00100 ~ 0x7FFFF環(huán)形存放記錄幀每條記錄幀設(shè)計為24字節(jié)#pragma pack(push,1) typedef struct { uint32_t seq; // 流水號判斷連續(xù)性 uint32_t timestamp_ms; // 毫秒時間戳 float ch0; // 通道0采樣值 float ch1; // 通道1采樣值 uint16_t status; // 設(shè)備狀態(tài)字 uint16_t crc16; // 對前面22字節(jié)的CRC16校驗 } env_record_t; #pragma pack(pop)環(huán)形日志的基本思想是頭部記錄的數(shù)據(jù)寫指針指向下一個要寫入的槽位每寫一條記錄就把指針加1超過總槽位數(shù)就回卷到頭。這樣最多保留最近約2萬余條記錄相當于5到6個小時的連續(xù)工況足夠現(xiàn)場分析問題了。6.2 關(guān)鍵代碼走讀寫入邏輯非常簡潔#define LOG_MAGIC 0x4D52414D #define LOG_HEAD_ADDR 0x00000000 #define LOG_DATA_BASE 0x00000100 #define LOG_SLOT_CNT ((512 * 1024 - 0x100) / sizeof(env_record_t)) static void log_append(const env_record_t *rec) { log_head_t head; mram_read_bytes(LOG_HEAD_ADDR, (uint8_t *)head, sizeof(head)); if (head.magic ! LOG_MAGIC) { head.magic LOG_MAGIC; head.idx 0; } uint32_t slot_addr LOG_DATA_BASE head.idx * sizeof(env_record_t); mram_write_bytes(slot_addr, (const uint8_t *)rec, sizeof(*rec)); head.idx; if (head.idx LOG_SLOT_CNT) head.idx 0; mram_write_bytes(LOG_HEAD_ADDR, (const uint8_t *)head, sizeof(head)); }注意一個關(guān)鍵順序先寫記錄再寫頭部指針。這樣即使寫入記錄后、更新頭部前掉電下次上電讀到的還是舊的寫指針舊的槽位會被下次寫入覆蓋最多丟一條記錄不會產(chǎn)生指針指向半條記錄的情況。MRAM的寫速度本來就快這個順序在工程上非常實用。讀取側(cè)邏輯就是從頭部的idx倒推最近一條記錄逐條回讀并校驗CRC。校驗失敗就跳過并從更早的記錄繼續(xù)保證顯示給用戶的永遠是完整可用的數(shù)據(jù)。6.3 驗證腳本與上線檢查清單這塊板子量產(chǎn)前我要求測試組跑過以下驗證流程你可以直接抄走焊接后先讀RDSR確認狀態(tài)寄存器為0x00確保沒有意外啟用塊保護。全地址寫0xA5、0x5A交替圖案回讀比對這一步能暴露地址線和數(shù)據(jù)線的焊接問題。隨機地址連續(xù)執(zhí)行100萬次單字節(jié)寫回讀抽查監(jiān)控是否出現(xiàn)偶發(fā)壞幀。在寫入過程中用開關(guān)直接切斷電源重復(fù)100次上電后檢查日志頭部和記錄區(qū)的CRC確認黑名單記錄被正確跳過。在高低溫箱里跑-40到85攝氏度循環(huán)同時執(zhí)行通斷電壓力測試重點是觀察SPI時鐘在極限溫度下是否出現(xiàn)誤碼。我自己在實際操作中的體會是MRAM方案真正省心的地方不是永不壞這個宣傳點而是整個存儲層的設(shè)計從圍繞壽命做各種保護變成了直接把NVM當普通RAM用。當你不需要考慮擦除隊列、磨損均衡、掉電半擦狀態(tài)這些事之后代碼邏輯會清爽非常多。當然該做的CRC校驗、上電時序、引腳處理一樣不能少把這些細節(jié)做到位STM32F446ZE加MR25H40CDF這套組合才能在工業(yè)現(xiàn)場安安穩(wěn)穩(wěn)跑上很多年。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
人妻丰满精品一区二区A片| 99爱这里只有精品免费视频| 啪啪91| 97av在线视频| 久热91精品| 99热这里只有精品手机在线观看| 另类激情五月| 97人人看一| 99性爱视频| 五月天婷婷乱论小说| 九九色婷婷| www.wuyuetian啪啪| 91色色色| 超碰国产在线| 99色婷婷视频| 色婷婷电影| 狠狠狠夜夜夜| 天天爽夜夜爽天天爽夜夜爽| 99热这里只有精品23| 色婷婷综合影院| 国产AV一区二区三区日韩| 99久久6| 婷婷五月天受日本法律保护| 五月婷婷无码| 丁香婷婷激情综合五月激情| 亚洲人妻av| 日韩操啪| www.久久婷婷| 久久婷网| 26.uuu丁香五月婷婷| 色五月综合激情网| 九九精品大香蕉| 俺去也五月天婷婷| 五月婷婷深深爱| 婷综合| 欧美色五月| 五月婷婷婷婷| 97在线刺激| 五月婷婷丁香狠狠撸久久| 九九九精品视频免费观看| 欧美日本黄色| 国产成人网址| 婷婷瑟五月天久久综合| 韩国久久少妇视屏| 免费视频99| 亚洲成人va| 99热这里只有精品2024| 色丁香五月综合网| 99re8这里只有精品99re8热视频| 丁香激情五月| 五月天成人综合| av在线免费播放| 久99久在线| 婷婷激情在线| 婷婷五月天成人网| 久久婷婷艹| 色色网站毛片| 国内一级精品| 日韩一区二区三区无码| 激情小说视频图片| 婷婷五月天激情电影| 99视频精品全部观看10| 狠狠操狠狠插| 江苏少妇性BBB搡BBB爽爽爽| 超碰AV成人| 九月丁香八月婷婷久久综合久97| 久久香蕉影院| 婷婷五月综合啪| 操你av| 色婷婷激情视频| 久色资源网| 精品久久99码| 202丰满熟女妇大| 无码人妻精品一区二区蜜桃色欲| 碰久久精品w| 婷婷伊人五月丁香天堂网| 99精品丰满| 久久婷婷桃花五月天| 极品少妇婷婷五月| 婷婷丁香69精华| 桃色伊人在线| 亚洲啪啪啪啪| 色色9 9| www91精品| 人妻人人操| 丁香六月av| 人人草人人爱手机视频看看| 精品乱码久久久久| 99精品高潮| 婷婷免费精品视频| 五月天综合色| 少妇AB又爽又紧无码网站| 精品操逼一区二区| 亚洲色婷婷激情| 婷婷五月天久久| 色色色色色色色色五月先| 日韩另类| 婷婷射综合| 性 色 婷婷| 操射国产日本| 精品9197碰| 五月丁香激情啪啪网| 99九九99九九九视频精彩| 99久久久国产大片区| 色婷婷九月综合| 欧美视频五区| 久久九九精彩| 色五月婷婷丁香五月| 人人操五月天| 久草 天堂| 五月天激情社区| 操碰91| 在线中文AV| 色婷婷狠| 成人在线日韩欧美| 在线视频激情网站| 色五月色五天免费视频| 九月性爱网| 色色网站观看| 丁香色婷婷| 秋霞丝袜啪啪啪| 婷婷五月俺要去| 秋霞成人毛片一级A片| 91夫妻视频| 五月天丁香六月综合| 五月婷婷综合久久| 色都都狠狠色都都色综合色| 五月天社区狠狠| 国产看真人毛片爱做A片| 色欲影香| 久9视频| 亚洲美女高潮久久久久久69| 婷五月天| 俺去也五月| 乱精品一区字幕二区| 五月天操逼网| 99色综合网| 激情五月婷婷丁香综合网| 五月天色婷伊人| 性色婷婷| 人妻久久久久| 成片免费播放| 五月深爱婷婷| 五月婷婷黄色网址| 亚洲欧美国产高清vA在线播放| 操操碰| 婷婷综合色图| 91精品丝袜久久久久久| 色综合天天网| 色99最新网址| 天天爱综合网| 日日噜狠狠| 色久丁香五| 久久这里只有精品视频15| xfplayav在线| 日本全黄一级999| 婷婷五月天成人网站| 美国少妇性做爰| 六月婷婷狠狠色在线观看| 国产精品久久久久久久久久免费| 婷婷五月丁香综合人妻| 丁香五月开心亚洲| 九九99久久| 这里只有精品日韩精品| 天天碰夜夜操| 99热这里只有精品免费| 一起草AV| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | www、丁香五月天| 日本五月婷| 狠狠综合久久综合| 婷婷伊人久久| 亚州日本欧州韩美高青高潮一| 五月婷婷综合在线亚洲视频| 狠狠操天天干| 久久狠狠高潮亚洲精品 天天摸夜夜摸夜夜狠狠摸 | 在线色色| 五月丁香久久激情网| se色婷婷视频| 天堂久久精品| 色婷婷a三区麻| 亚洲区1| www.狠狠操| 丁香五月天.com| 色色色成人网| 夜夜夜夜夜操| 欧美激情Va| 超碰熟女农村在线69| 五月丁香婷婷欧美| 天天 日综合| 五月婷婷 激情按摩| 日韩1区2区| 婷婷精品在线| 婷婷丁香色性爱| 大香蕉综合网| 囯产精品久久欠久久久久久九大| 99这里精品| 丝雨一区二区| 日韩人妻无码专区| 2025天天日爽| 热99只有精品| 99视频精品全部免费看| 97久久五月丁香婷婷| 狠狠草狠狠草| 麻豆雪千夏| 婷婷色五月综合丁香| 99热97美女| 九九热精品| 日本在线va| 欧美激情五月天婷婷| 噜噜五月天综合| 伊人婷婷五月天| 综合久久人妻| 丁香五月婷婷激情视频播放| 婷婷色色狠狠| 丁香五月久久| www99久久| 草了bav视频在线观看| 97热这里精品在线视频| 五月天狠狠| 密臀久久| 婷婷五月综合欧美在线播放| 婷婷五月天av网| 丁香六月青青草| 强辱丰满人妻HD中文字幕| 婷婷五月丁香六月| 欧美激情综合五月色丁香| 色色综合日韩| 久色视频首页| 伊人久久激情图区五月| 思思热天天看| 亚洲1区| 激情五月份婷婷| 亚洲精品无码99热| 亚洲天堂婷婷丁香| 综合色在线| 开心五月深爱五月| 五月丁香网站| 91.www综合| 99热一区| 色色99| 丁香五月婷婷激情网| 亚洲精品国产精品乱码视99| 亚洲激情婷婷| 五月天色五月| 91无码视频| 色爱综合网| 99热这里全是精品| 99爱在线精品视频免费观看| 欧美黄色韩日网| 五月婷婷丁香在线| www激情| 五月婷婷天| 婷婷五月天日本无码| 丁香五月激情综合网激情五月| 婷婷五月小说色综合| 国産精品| 99丁香五月婷| 狠狠干 狠狠操| 99亚洲欧洲| 极品人妻videosss人妻| 五月婷婷综合久久| 日韩啪| 激情爱爱网站| 色五月激情五月开心五月| 色五月天综合网| 99精品综合| 五月天婷婷在线AN| 91919191919久久成人视频| 亚洲欧美综合7777色亭亭| 亚洲网站观看视频| 天堂五月婷婷| 婷婷亚洲日本| 热成人网| 五月天激情小说| 97久久久| 久久六月综合| 99久久66| 这里只有精品1| 狠狠干,狠狠操| 成人国产综合| 欧美五月停| 中文AⅤ大全| 狠狠色噜噜狠狠| 国产av基地| 国产欧美日韩性爱| 色五月婷婷色五月| 天天操天天曰| 久久久久视剧HD| 色婷婷久久综| 精品成人无码A片观看香草视频| 五月丁香激情婷婷综合| 亚洲精品亚洲人成人网| 激情五月天。| 激情五月综合网| 无码激情精品色婷婷久久久久| 人人妻久久妻| 日日干日日| 99热欲| 激情黄色小说色五月| 同性gv国产精品一区二区| 噜噜噜噜噜色| 超碰在线99| 久久亭亭电影| 色婷婷五月基地在线| 激情五月视频在线婷婷| 99操视频| 日韩99视频| 亚洲va日| 久久艹99| 99久久.www| 成人五月天色天堂| www.久久久久久久| 五月婷天堂视频| 国产裸舞福利资源在线视频| 亚洲视频五区| 91丨九色丨国产在线| 一夜福利不卡| 色99在线视频| 婷婷丁香97| 亚洲天堂aaa| 亚洲天堂热| 美欧成人视频| www.99情趣网| 亚洲av综合在线| www.91.com处女在线直播| 五月丁香激情综合久久| 97色精品视频| 这里只有精品久| WWW,五月| 久九色| 夜夜躁爽日| 久久久国产精品黄毛片| 五月天六月丁香| www.99久久久| 91男同| 久久久久久人妻| 欧美激情综合五月色丁香| av在线观看网站| 色五月激情五月天| 吾爱AV导航| 99在这里有精品| 久热无码| 日韩六十路91性交电影| 青草视频在线观看视频 | 激情五月份婷婷| 思思热久久婷婷五月天| 久久九久久| 日日夜夜青青草| 亚洲天堂99| 日韩成人电影AV| 色丁香五月天| 久久久精品视频79| 五月婷久久| 激情欧美婷婷| 欧美丰满熟妇BBB久久久| 欧美狠狠一在草| 六月激情综合| 先锋资源996| 疯狂做受XXXX高潮A片动画| 伍月婷婷免费视频| 欧美大片免费播放器| 婷婷久久午夜网| 丁香五月婷婷基地| 色播五月丁香综合| 丁香深五月婷婷| 五月天婷婷激情综合| 色婷婷五月天无码视频| 色婷婷成人网| 久久99激情| 成人无码精品1区2区3区免费看| 99在线爽| 亚洲成人精品三区| 久99在线视频| 婷婷综合网在线| 全部老头和老太XXXXX| 色狠狠伊人久久五月丁香| 欧洲色区| 久色婷婷200| 超碰色色综合| 三人荫蒂添的好舒服A片| 日韩成人精品一区久久久久| 成人免费网站免费看| 婷婷五月天伊人| 97人人操在线| 久久黄色片| 色婷婷社区| 色偷偷色婷婷| 99ER热精品视频| 五月天成人在线播放丁香| 丁香五月婷婷久久久| 天天干,天天日| 婷婷六月色开| 久久五月婷综合| 五月婷婷丁香五月| 五月丁香网站在线播放| 91精品又长又大又粗又爽又猛| 天天久久狠狠色综合| 热九九在线| 久久女伦| 色五月婷婷亚洲| 91视屏在线观看com.wwwvv| 精品动漫 无码av| 99久久综合网| 婷婷五月天在线观看免费| 色色激情网| 思思久久99热只有频精品66| 9久久久久| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 在线伦子99热| 少妇人妻偷人精品无码视频新浪 | 久久久久99精品成人网站| www色婷婷| 婷婷瑟瑟五月天| 99热偷拍| 69人妻人人澡人人爽久久| 久久婷婷伊人| 欧美啪啪9| 九九婷婷五月天影视| 六月婷久久| 色级停停| 国产又粗又大又爽又黄 | 五月激情天| 99在线观看精品视频| 五月色丁香综合| www,超碰| 激情五月九九九| 欧美性猛交99久久久久99按摩| 婷婷五月天视频免费在线观看| 色婷婷激情小说网| 性韩日色婷婷五月天激情啪啪XXX| 91在线精品一区二区| 婷婷社区五月天| 六月丁香婷婷综合在线| 噜噜色com| 五月婷婷伊人网| 丁香色六月婷婷| 色综啪啪啪啪啪啪| 久久XX日本综合| 五月天婷婷色色| 97久久久久| 开心激情五月天网| 久久视频这里有精品99| 五月婷婷丁香瑟瑟视频| 这里只有精彩亚洲视频推荐| 色婷激情网| 婷婷丁香77777| 97色婷| 九色七七| 人人97碰| 国产操碰| 婷婷久草| 色丁香五月婷婷婷| 色色成人網| 婷婷色网| 六月丁婷婷| 一起草无码视频| 激情五月丁香五月| 五月亭亭六月色| 色综合婷婷| 久久激情五月| 另类五月婷婷| 五月丁香六月婷婷玖玖| 丁香五月激情性色郤| 无码中文一区二区三区| 亚洲综合婷婷五月| 深爱五月日韩| 丁香五月开心亚洲| 色五月婷婷基地| 丁香五月色色| 丁香啪啪| 九九XX视频| 色婷丁香91| 色婷婷yy久| 9一精品视频观看| 免费成人中文字幕| 久久9精品| 色一区高清| 婷婷丁香五月精品| 丁香五月另类小说| 婷婷涩五月| 色中色综合| A片试看120分钟做受视频红杏| 最近中文字幕大全免费版在线 | 亚洲精品**不卡在线播he| 欧美高潮9| 丁香五月综合激情性爱| 99热这里在线精品| 五月天精品综合| 深爱激情五月网| 丁香五月影视| 成人中文网| 噜噜五月天综合| 丁香五月网址| WWW.开心五月天.COM| 操操操AV| 九九热精品视频在线观看| 久久思思热| 五月停亭久久电影| 丁香五月影院| 99成人免费热视频| 亚洲天天操| 激情综合视频| 91精品久久久久久| 天天日天天干天天插天天射| 99精品久久久久久久婷婷| 农村熟妇高潮精品A片| 婷婷色综合网日韩国产| 婷婷亚洲日本| 亚洲综合五月天婷婷| 婷婷伊人| 综合网色综合| 色另类五月天| 五月丁香久久久久| 五月婷婷玖玖综合玖玖爱| 欧美日韩999| 亚洲精品V天堂中文字幕| 99精品视频在线观看| 久久国产高潮白浆免费观看99| 久艹大香蕉| 青青草护士中出内射-欧美电影在线天堂新版| 天天插AV丝袜中| 五月天com| 丁香五月久久社区| 五月永久激情| 亚洲操逼网| 97成人操| 狠狠色丁香99| 丁香桃色网| 99色在线视频观看| 亚洲久热无码| 99网| 亚洲精品网站色视频| 五月天精品视频| 九九热精品| 97干在线观看视频| 婷婷六月天激情| 爱99干99| 色婷婷五月丁香在线观看| 9有码中文| 在线一起草av| 五月婷婷丁香综合网| av九九| 久99久视频| 狠狠狠色激情综合适合| 亚洲综合色婷婷文学| 久久综合热17c| 91丨九色丨国产打屁股| 色欲天天综合| 91丨九色丨熟女| 综合九九久久| www夜夜| 婷婷五月丁香国产| 人人操人人爱丁香五月| 九九婷婷五月天| 婷婷丁香六月影视| 国产69久久久欧美黑人A片| 掩去也综合五月视频| 激情综合婷婷| 99久久99久久综合| 婷婷综合激情| 精品一二三区视频立| 老司机日日夜夜青草| 99ri精品视频在线观看| 五月天另类小说| 91久久综合亚洲鲁鲁五月天| 啊V视频在线观看| 色婷婷69| 亚洲av骚货| 99色综合网| 婷婷激情图片| 婷婷开心青青草| 精品无码久久久久久久久| 色久婷婷网| 免费无码毛片一区二区A片| 婷婷五月天激情综合| 内射人妻视频国内| 婷婷五月天综合中文| 色在线免费观看| 免费观看欧美成人AA片爱我多深| 五月花激情网| www.久久爱| 中文字幕丰满乱孑伦无码专区| 深爱综合网| 青青草蜜臀| 丁香婷婷浪潮AV久久综合| 丁香六月婷婷一区二区三区| 久久新地此| 丁香久久| 热久久视频99| 欧美色色色色色色| 久色视频| 五月婷丁香亚洲| 骚逼视频一区2区| 五月天亭亭俺也| 91尤物九色在线| 99爱爱| 五月丁香婷婷综合网色欲| 超碰97色| 丁香五月天综合| 啪啪激情网站| 久热黄色| 亚洲视频在线观看| 99热这里都是精品| 婷婷丁香午夜综合影视| 色青五月天| 欧美性爱五月天| 久久这里只有欧美| 九九热a| 六月婷欧美丁香综合| 五月丁香亭亭操逼| 色五月色综合| 曰曰久久| 久久九九思思| 丁香六月啪啪| 久久精品视频在这里有| 久久视频66| 欧美精品狠狠色丁香婷婷| 五月丁香性爱| 色综色五月天婷婷| 丁香五月亚洲激情婷婷射| 综合欧美五月婷婷| 婷婷啪啪| 五月精品| www激情网| 日韩亚洲视频| 综合色婷婷| 中字幕视频在线永久在线观看免费 | 内射爽无广熟女亚洲| 婷婷丁香五月色| 五月天六月天| 六月丁香婷婷五月天| 超碰人人妻| 丁香六月啪| 婷婷婷久久久| 岛国AV网| 狠狠干五码| 噜噜色天天开心| 99久久精品亚洲综合| 中文字幕免费高清电视剧| 黄色五月婷婷| 色综合久久88色综合天天99| 五月婷久久在线| 99激情网| 狠狠搞五月天| 97干视频| 婷婷五月天激情电影| 色综合女人99| 九月丁香八月婷婷加勒比| 99热色精品| 五月婷婷与六月丁香图片激情| 毛片色五月| 婷婷五月天日日日干干干| 五月天激情小说| 狼人婷婷综合| 97色婷婷在线观看| 2015超碰| 182TV大香蕉| 婷婷色基地在线看| 久久精彩视频99| 色天使色综合| 国产高清视频91九九九久久久| 99国产在线精品视频| 成人精品视频99在线观看免费| 亚洲五月花| 色狠狠色| 色色色9| 天天肏视频| 亚洲精品无码久久| 亚洲久久激情| 亚洲丁香花色| 日本精品人妻无码77777| 亚洲人妻av伦理| 久久大香蕉| 色色热| 九九亚洲天堂| WWW色色色COM| 九九av在线| 4438激情网| 性爱网五月天| 成人精品一区二区三区四区五区| 五月婷伊人| 五月婷婷之六月丁香| 婷婷激情网五月天| 五月天亭亭俺也| 2017人人操| 五月综合久久| 免费视频WWW在线观看网站| 无码日本精品XXXXXXXXX | 韩日另类| 91操在线| 97婷婷色| 色五月婷婷视频| 草逼大片| 九九热九九| 99久久久99久久91熟女| 九九九九热99超碰| 91久久九久久九久久九久久九久久| 91ncm视频| 开心五月六月婷婷| 激情五月婷婷中文字幕| 丁香五月天电影| 亚洲黄色影视| 婷婷狠狠综合网入口| 极品九九九九九九| 人妻爽爽爽久久久久久久久| 五月婷婷在线观看| 丁香五月久久| 色色9 9| 五月婷婷六月天| 五五月五月| 成人va视频| 天天干,天天日| 激情五月四色| 日本三级日本三级99| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 免费黄网不卡AV| 久9视频免费播放| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | WWW久久久| 影音先锋 萱萱| 激情99热| 五月婷婷亞洲中文| 色五月AV| www.99热这里精品| 精品99爱免费视频在线观看| 久久人人九| 无码 av电影| 色五月琪琪| 大陆肏屄视频| 婷婷亚洲综合| WWW.婷婷五月天.COM| www.五月天婷婷姐姐| 99自拍视频网站| 任你干aa| 有码人妻久久| 九九九色综合| 香蕉伊人综合| 激情色视频| 777精品久无码人妻蜜桃| 超碰AV成人| 婷婷六月天激情影院| 五月天.com| 怡春院久操| 天天日,天天插| 久久久亚洲精品一区二区三区浴池| 噜噜操操| 天天干天天操天天拍| 97很鲁在线视频| 成人午夜无码视频| 色色色五月婷| 激情五月天福利| 99精品无码网站| 激情婷婷丁香| 婷婷综合欧美| 超碰人人色| 婷婷色中文| 噜噜噜噜综合在线| 夜色.cnm| 九九爱激情| 婷婷五月天免费99| 色香五月天| 成人午夜视频精品一区| 99热99网| 亚洲天堂热| 99re热精品在线视频| 婷婷四色五月| 夜夜资源站| 99九无网码| 婷婷五月天丁香社区| 五月开心久久| 国产精品国产| 伊人玖玖婷婷| 六月婷欧美| 色日本综合| 99碰视频| www99在线观看视频| 九月婷婷色色| 51XX午夜影福利| 久久久久亚洲AV无码网影音先锋| 97碰碰在线看视频免费| 日本久久婷婷| 啪啪综合网| 欧美在线视频99| 婷婷亚洲综合| 欧洲亚洲免费视频9| 亚洲中文字幕在线观看| 五月丁香网中文字幕| 亚洲黄色网址| 色噜噜婷婷| 日美三级| 五月天天综合| 久热九九| 超碰v| 综合综合网| 91九色在线观看免费| 丁香五月色网| 国产片天天爽夜夜爽| 99精品偷自拍| 伊人色综在线| 啪啪操超碰| 操一区| 九九视频这里是精品五月| 亚洲视频在线网站| 噜噜狠狠色综无码久久合欧美| 91互操| 亚洲人人操| 日日做夜夜爱| 丁香五婷婷| 丁香六月啪啪| 天干夜夜操| 91日韩在线| 天天揷综合网| 天堂综合久久| 激情网五夜婷婷| 黄色高清无码| 久久99网站| 丁香五月激情视频在线| 伊人婷婷色| 久青草影院| 99热这里只有精品3| 99热最新| www日本熟妇99在线视频| 亚洲色婷婷| 亚洲激情图文小说| 91精品国产色猫| 天天舔天天爽| 婷婷五月天BBw| 操一区| 99福利视频导航| 色婷婷狠狠18禁| 五月天社区狠狠| 大香蕉手机视频| 色九九九综合| 色婷婷久久| 天天操夜夜操| 开心五月深爱五月婷| 五月天色色婷婷| 91 影音先锋| 97久久久久| 五月丁香龟婷婷| 天天草人人摸| 秋霞丝袜啪啪啪| 国产人妻777人伦精品HD| 婷婷射综合| 天天操夜夜爱| 久热2025无码| 亚洲综合无码| 丁香五月 无码| 无码人妻少妇色欲AV一区二区| 五月丁香网站| 99热这里只有精品最新地址获取| 99久热| 丁香五月婷婷激情尤物| 日本波多野结衣视频| 九九亚洲| 伊人久久大香网| 九九这里都是精品| 开心五月丁香婷婷| 五月天丁香啪啪综合| 五月丁香六月婷婷成人| 4399精品一区二区| AV中文网| 另类少妇人与禽zOZZ0性伦| 最新色色五月天| 99精品免费视频| 五月天深爱激情网| 九九一综合精品| 五月天色婷伊人| 久久五月综合| 亚洲精品国产setv| 久久久jd| 99资源在线视频| 91九色无码内射| 十二区无码| 五月婷婷很很色| 国产又爽又猛又粗的视频A片 | 在线观看亚洲视频影院| Aα在线免费观看| 情色五月天 网站| 久久久久久久久月丁| 蜜桃成语时李时珍 免费| 五月婷丁香| 日本va欧美va国产激情| 五月天婷婷无码| 九九这里有精品| 色五月五月婷婷| 丁香婷婷激情| 99综合| 少妇性按摩无码中文A片| 俺去也婷婷| 欧美精品999| 色五月婷婷久久| 激情综合五月丁香| 99re在线播放| 中国女人做爰A片| 99精品国产在热久久| 99国产精品久久久久久久久久久| 搡BBBB搡BBB搡18| 99热免费| 国产日产亚系列精品版优势| 日韩人妻AV在线| 99操九九网| 色九九中文字幕| 久久这里只有精品视频15| www.9色色色| 婷婷色基地在线看| 超碰色色综合| 丁香丁婷五月激情| 激情六月五月婷婷综合网| a v色婷婷| 五月婷婷开心丁香| 婷婷五月天国产在线播放| 激情五月婷| 亚洲精品婷婷| 六月成人网| 九月停停| 人人操97| 另类图片激情五月天| 五月情涩综合婷婷| 午夜婷婷久久 | 五月婷婷开心亚洲无| 少妇激情五月婷婷| 99亚洲无码| 婷婷色在线视频| 精品人妻久久久久久| 中文字幕按摩做爰| 丁香五月婷婷综合激情啪啪啪| 日韩精品99久久| 日本在线视频播放91| 天天草人人摸| 六月婷婷激情小说网| 桃色五月天| 99熟女| 婷婷五月天丁香久久| 99精品在线观看视频| 色9色| 婷香五月激情视频| 国产性爱亚洲是图| 亚洲AV无码成人电影| 91视频一起草| 青娱乐美女福利视频美臀| 久久激情网| 五月丁香激情啪啪| 国产在线自| 亚洲激情免费久久| 丁香成人五月天| 九九色婷婷| 中文字幕高清av| 狠狠色丁香五月婷巨| 综合激情深爱| 99热这里只有精品5| 日本一区二区三区精品视频| 91九色在线| 最新亚洲色色网| 色婷| 996re热精品视频| 人人干天天舔| 一起草无码| 色婷婷激情五月天丁香| 亚洲av成人在线| 色婷婷激情视频| 五月婷婷综合网| 亚洲成人综合网在线免费观看| 激情婷婷丁香五月天小说| 五月开心色| 9色91视频| 91色久| 六月激情婷婷| 九九热青草| 色欲人妻综合aaaaaaaa网| 美女五月狠狠| 色婷青青| 色色色综合视频| 激情五月综合网最新| 久久丁香网| 欧美婷婷五月无砖| 色播五月| 91seav| 久久婷婷五月综合色丁香| 色一色综合| 五月天丁香啪啪综合| 99色网站| 六月婷婷最新网址| A网在线欧洲| 精品国产乱码久久久久夜深人妻| 97狠狠色| 婷婷五月天堂| 婷久久久| 天天天摸夜夜夜玩| 老师的粉嫩小又紧水又多A片视频 粉嫩AV久久一区二区三区 | 久久机热这里只有精品免费视频| 五月婷婷影| 99在线视频女女视频| 丁香激情五月少妇| 久热re视频在线观看网站| 日韩欧美四五区| 另类小说五月天| 九九热这里只有精品5| 五月婷婷色影院| 六月激情网| 26uuu欧美日本| 婷婷六月久久| 色欲久久久久| 婷婷97C| 婷婷色基地| 99婷婷色| 精品久久这里热66| 91pornav在线| 激情五月婷黄版| 久激情| 天天爱天天狠天天透| 婷婷九月丁香天堂丁香天堂| 久久这里只有精品8| 久久人视频| 五月天综合影院| 超级碰碰碰久久网站视频| 99热这里全是精品| 69人妻人人澡人人爽久久| 66成人网| 欧美婷婷丁香五月社区| 二色av| 做爱夜夜干天天操| 夜精品无码A片一区二区蜜桃| 热99热| 婷婷99综合| 色色网站免费| 婷婷丁香五月天影院| 五月丁香999| 五月天婷婷日日爱| 女人被躁到高潮嗷嗷叫小| 激情综合色| 五月亭亭色| 99啪啪视频| 九九这里有精品视频| 天天激情站| 久色资源| 亚洲成人综合在线| 天天爽夜夜操| 婷婷五月天男人影院色色网| 視频福利乱色| 久久婷婷成人综合色怡春院| 丁香五月瑟瑟| 婷婷色色丁香| 丁香五月天激情| 五月情四婷婷| 亚洲人成网站999久久久综合| 五月天激情四射网站| 久久99热这里只有精品首| 综合AV网| 久久婷网| 日韩欧美四五区| 51XX嘿嘿午夜无码| 欧美日韩一区二区三区四区| 日韩激情人伦人| 久久婷婷草| 婷婷五月在线观看| 啄木鸟丝袜美女福利视频| 99自拍视频网站| 热91久| 色玖玖导航| 涩涩五| 99久re热| αv中文字幕在线观| 热99免费在线| 亚洲mm色| 九九色综合网| 青青久久五月| 五月丁香久久| 午夜五月天| 婷婷色五月婷婷姐妹| 一区操| 久久大香蕉| 婷婷五月激情的图片| 99re热久久| 另类A片| 97伦色婷婷| 丁香色婷婷| 九艹在线| 久久A区B区| 熟女乱论网| 91porn一起草| 99综合色色色| 开心激情站| 天天爽天天操| 甈你aaaaa| 只有精品在线观看| 亚洲免费观看高清完整版AV线| 一级AV片| 99色精品| 日韩在线9| 五月成人天| 很很干在线视频| 思思99热这里只有精品| av第一二区| 超碰自拍天堂| 亚洲精品又粗又大又爽A片| 日韩亚洲视频| 激情五月天综合网| 五月天婷婷中文字幕在线播放| 激情五月深爱五月观看| 一本色道久久88加勒比—| 激情AV网| 成人精品一区日本无码网| 九九99精品视频在线观看| 天天干天天爽| www.狠狠艹| 99er久久| 伊人久久五月天| 五月花成人网| 这里只有精品,日韩视频| 日本99热| 男人天堂99| 免费国产视频| 97操在线资源| 激情五月婷色| 婷婷五月丁香四射| 99热热热99精品婷婷| 精品色色| www.五月天| 99久久婷婷国产综合| 99久视频| 婷婷五月在线视频| www.婷婷| 日本九九九九| 成人在线视频网| 五月天色五月| 婷婷综合激情| 亚洲丁香花色| 另类少妇人与禽zOZZ0性伦| 久久99综合| 99无码视频| 少妇人妻丰满做爰XXX| 精品一二三区久久AAA片| 少妇大叫太大太粗太爽了A片 | 涩涩涩.com| 五月天婷婷中文字幕在线播放| 丁香丝袜五月| 婷婷色正月| 亚洲无码色| 色色丁香婷婷综合| 亚洲激情AV| 激情五月天丁香| 国外亚洲成AV人片在线观看| 国产AV国片偷人妻麻豆| 在线播放人妻| www久久久久久久| 日本三级网址| 青青草tp| 超黄亚洲瑟瑟网站| 日韩久久这里只有精品| 四月婷婷丁香| 色五月激情综合| 亚洲色婷婷| 精品无码久久久久久久久| 91丨九色丨首页| 五月天婷婷激情网| 99自拍视频网站| 二人电影免费版在线观看| 狠狠色激情综合| 色婷婷小说| 亚洲av网站| 99热| 婷婷激情综合色五月久久91| 日本97在线| 久久这里只有精彩| 五月丁香六月婷婷亚洲| 亚洲激情五月| 婷婷五月天综合在线| 这里只有精品96| 色99免费视频中文| 五月婷婷六月丁香| 亚洲精品性色| 九九热99免费视频| CHINESE熟女老女人HD视频| 无码成人AAAAA毛片AI换脸| 丁香五月情色| WWW.开心五月天.COM| 26uuu成人网| 色婷婷五月天在线观看| 丁香五月天堂婷婷| 久久人人九九| 五月天四色房丁香| 天天综合 99久久婷婷| WWW,五月天| jiujiuxiangjiaowang| 91婷婷| 有码一区二区三区| 中文无码婷婷| 六月五月婷婷| 日本www五月婷婷| 日日色综合| 91色噜噜狠狠狠狠色综合| 俺去也五月| 婷婷丁香六月| 久久嘟嘟丁香| 激情六月五月婷婷综合网| 婷婷深爱五月天| 中文字幕无码人妻少妇免费视频| 婷婷丁香五月天大香蕉| 色噜噜伊人| 夜色综合网| 极品精品一区二区三区在线| 26uuu精品一区二区| 天天成人综合视频| 色色色色网| 91xxxx九色| 激情五月婷婷伊人| 久久丁香五月婷婷| 色婷婷五月天无码视频| 情婷婷五月天在线| 99久热在线精品| 亚洲人成网站999综合| 99色精品视频| 猫咪伊人久久| 色亭亭丁香五月天| 日本色婷婷久久99精品91| 欧美色99| 91 久热| 夜夜天天久久婷婷| 天天狠天天叉| 91人人澡人人爽人人看| 伊人五月成人| 四川BBB搡BBB爽爽视频| 爱射综合| 性色婷婷| av成人在线播放| 五月婷婷久| 综合aV在线| 日本五月婷婷久久久六月丁香| 97婷婷色| 伊人久久大香蕉网| 久热这里只有| 极品少妇婷婷五月| 九色色| 狠狠色综合五月人人| 五月天六月丁香| 在线观看中文字幕| 色色五月天丁香婷婷| 丁香婷婷五月天在线视频| 色五月婷婷丁香凹凸| 好好干av| 强辱丰满人妻HD中文字幕| 一根材五月婷成人| 丁香六月婷婷久久综合| 噜一噜免费视频| 亚洲色婷婷| 开心 五月 综合| 国产激情视频在线观看| 五月天婷婷色在线视频免费观看| 玖玖爱伊人| 伊人网大香| 色综合综合色| 丁香五月婷婷黑人妻黄色电影院| 六月婷久久| 日本熟妇精品99| 99色婷婷视频| 只有精品视频在线观看| 五月天综合久久| 丁香五月婷婷啪| 免费看欧美成人A片无码| 色五月丁香总合网| 性做久久久久久久免费看| 激情图片婷婷| 伊人九九68| 综合激情视频|