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

ARTICLE DETAIL

資訊詳情

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

單片機(jī)看門(mén)狗原理詳解:從程序跑飛到獨(dú)立與窗口看門(mén)狗配置

單片機(jī)看門(mén)狗原理詳解:從程序跑飛到獨(dú)立與窗口看門(mén)狗配置 做嵌入式開(kāi)發(fā)的人十有八九都被“程序跑飛”坑過(guò)。代碼明明寫(xiě)得好好的一上電就不按套路走串口亂打、LED亂閃、按鍵失靈最后排查半天發(fā)現(xiàn)是某個(gè)野指針把棧給踩了。這種問(wèn)題靠人盯著根本來(lái)不及所以芯片設(shè)計(jì)者給單片機(jī)配了最后一道防線——WDT看門(mén)狗??撮T(mén)狗這東西說(shuō)透了就是一個(gè)計(jì)數(shù)器它不問(wèn)你的程序現(xiàn)在跑到哪一步、邏輯對(duì)不對(duì)只關(guān)心你有沒(méi)有在規(guī)定時(shí)間內(nèi)“喂它”。沒(méi)喂到它就強(qiáng)制把系統(tǒng)復(fù)位回正常狀態(tài)。本文會(huì)從原理講到選型再結(jié)合具體的配置過(guò)程把獨(dú)立看門(mén)狗、窗口看門(mén)狗這兩種常見(jiàn)形態(tài)一次講明白。想徹底搞懂看門(mén)狗并用好它的話這篇應(yīng)該能幫你省下不少自己翻手冊(cè)折騰的時(shí)間。1. 看門(mén)狗到底解決什么問(wèn)題1.1 從一次“跑飛”事故講起我之前負(fù)責(zé)過(guò)一個(gè)數(shù)據(jù)采集設(shè)備客戶(hù)那邊反饋說(shuō)設(shè)備運(yùn)行幾天后會(huì)偶發(fā)“假死”。癥狀很典型屏幕卡住、網(wǎng)口不通外部通訊輪詢(xún)也沒(méi)響應(yīng)。工程師趕到現(xiàn)場(chǎng)只能斷電重啟重啟后又完全正常。這種問(wèn)題最折磨人因?yàn)楦怕实?、?fù)現(xiàn)難拿萬(wàn)用表量了半天電壓也看不出異常。后來(lái)把故障設(shè)備接上調(diào)試器看寄存器才發(fā)現(xiàn)程序計(jì)數(shù)器已經(jīng)跑到了一片完全不屬于代碼段的空間。再深挖是某個(gè)外設(shè)的中斷服務(wù)函數(shù)里用了未經(jīng)初始化的指針做寫(xiě)操作把棧里保存的返回地址給改了。CPU在執(zhí)行完中斷返回時(shí)直接跳進(jìn)“野區(qū)”卡在那里一動(dòng)不動(dòng)。這種故障靠提高代碼質(zhì)量能降低概率但永遠(yuǎn)無(wú)法降到零。電磁干擾、電源毛刺、棧溢出任何一個(gè)都可能讓飛車(chē)事故重演。看門(mén)狗就是針對(duì)這種“程序邏輯失效但硬件還在運(yùn)行”的狀態(tài)設(shè)計(jì)的。那看門(mén)狗能修復(fù)被改壞的變量嗎不能。它的邏輯簡(jiǎn)單粗暴不喂狗就復(fù)位把系統(tǒng)拉回一個(gè)已知的、可預(yù)期的起點(diǎn)。程序跑飛了往往就不會(huì)再執(zhí)行喂狗操作計(jì)數(shù)器一旦溢出芯片自動(dòng)復(fù)位設(shè)備重新進(jìn)入正常的初始化流程。1.2 看門(mén)狗的核心邏輯不喂就咬把看門(mén)狗想象成一條拴在院子里的狗你的程序就是養(yǎng)狗的人。正常情況下你得隔一段時(shí)間扔塊肉過(guò)去喂狗狗就一直安靜待著。如果你某天忘了喂狗餓壞了就會(huì)掙脫鏈子把院子鬧個(gè)底朝天——對(duì)應(yīng)到單片機(jī)里就是這個(gè)“鬧”的動(dòng)作被設(shè)計(jì)成了復(fù)位或者觸發(fā)中斷。具體到硬件實(shí)現(xiàn)看門(mén)狗模塊核心是一個(gè)遞減計(jì)數(shù)器。計(jì)數(shù)器在每個(gè)時(shí)鐘周期減一減到零就觸發(fā)復(fù)位信號(hào)。程序正常運(yùn)行時(shí)必須在計(jì)數(shù)器減到零之前執(zhí)行一次“喂狗”操作就是把計(jì)數(shù)器重新賦一個(gè)比較大的初始值。只要喂狗間隔小于計(jì)數(shù)器從初始值減到零所需的時(shí)間系統(tǒng)就不會(huì)復(fù)位。一旦代碼跑飛、死循環(huán)、任務(wù)卡死喂狗操作不再被執(zhí)行計(jì)數(shù)器一路減到零復(fù)位信號(hào)就來(lái)了。這里有個(gè)很多人容易誤解的點(diǎn)喂狗本身不保證程序是對(duì)的它只保證程序在“至少能跑到喂狗這一步”。所以喂狗的位置選得好不好直接決定看門(mén)狗是幫你兜底還是給你添亂。2. 看門(mén)狗的分類(lèi)與選型思路2.1 硬件看門(mén)狗與軟件看門(mén)狗按實(shí)現(xiàn)方式看門(mén)狗可以分成硬件看門(mén)狗和軟件看門(mén)狗兩大類(lèi)。硬件看門(mén)狗通常指芯片內(nèi)部集成的獨(dú)立看門(mén)狗外設(shè)模塊或者外部單獨(dú)的看門(mén)狗芯片。它們的共同點(diǎn)是擁有獨(dú)立的時(shí)鐘源和計(jì)數(shù)器不需要CPU干預(yù)也能自己工作。即便主程序的死循環(huán)把中斷全部關(guān)掉只要沒(méi)有喂狗動(dòng)作計(jì)數(shù)器照樣往下減復(fù)位照樣發(fā)生。軟件看門(mén)狗則是用一個(gè)定時(shí)器中斷來(lái)模擬。程序在主循環(huán)里定時(shí)給一個(gè)“軟件計(jì)數(shù)器”清零定時(shí)器中斷里對(duì)這個(gè)變量做檢查如果發(fā)現(xiàn)超時(shí)沒(méi)清零就認(rèn)為主循環(huán)卡死然后執(zhí)行復(fù)位操作。這種做法的優(yōu)點(diǎn)是不占額外的硬件資源幾個(gè)變量加一個(gè)定時(shí)器臨界中斷就能實(shí)現(xiàn)。缺點(diǎn)是它依賴(lài)中斷的正常工作如果代碼把中斷全局關(guān)閉了軟件看門(mén)狗自己也被“餓死”了根本起不到保護(hù)作用。還有外置看門(mén)狗芯片比如經(jīng)典的MAX706、TPS3823這類(lèi)。它們一般有一個(gè)喂狗引腳和復(fù)位輸出引腳程序得在指定時(shí)間內(nèi)翻轉(zhuǎn)喂狗引腳的電平否則芯片輸出復(fù)位信號(hào)。外置看門(mén)狗芯片在可靠性要求高的工業(yè)控制板里仍然很常見(jiàn)因?yàn)榧词箚纹瑱C(jī)內(nèi)部的時(shí)鐘徹底o(hù)ut of spec外部芯片依然能獨(dú)立工作。從選型角度說(shuō)MCU內(nèi)置的獨(dú)立看門(mén)狗已經(jīng)能滿足絕大多數(shù)場(chǎng)景。外置芯片更適合對(duì)可靠性有變態(tài)要求的場(chǎng)景比如車(chē)載控制器、服務(wù)器電源管理或者是MCU本身沒(méi)有內(nèi)置看門(mén)狗的老舊方案。2.2 獨(dú)立看門(mén)狗與窗口看門(mén)狗內(nèi)置硬件看門(mén)狗又分兩種獨(dú)立看門(mén)狗IWDGIndependent Watchdog和窗口看門(mén)狗WWDGWindow Watchdog。這個(gè)“窗口”是理解兩者差異的關(guān)鍵。獨(dú)立看門(mén)狗只有一個(gè)下限喂狗操作必須在計(jì)數(shù)器溢出之前完成早喂晚喂都行只要?jiǎng)e太晚。就像你養(yǎng)狗規(guī)定一天喂一次你早上喂也行晚上喂也行只要在狗餓急眼之前喂就行。獨(dú)立看門(mén)狗實(shí)現(xiàn)簡(jiǎn)單適合作為“最后崩潰保護(hù)”也是用得最多的一種。窗口看門(mén)狗則多了一個(gè)上限它要求喂狗操作必須在一個(gè)時(shí)間窗口內(nèi)完成。喂早了不行喂晚了也不行。還是用養(yǎng)狗類(lèi)比窗口看門(mén)狗規(guī)定你每天只能在下午5點(diǎn)到6點(diǎn)之間喂狗其他時(shí)間喂狗它會(huì)咬你。為什么需要這種限制因?yàn)樗軝z測(cè)到“程序運(yùn)行節(jié)奏異?!?。比如主循環(huán)里某段代碼執(zhí)行太快跳過(guò)了關(guān)鍵路徑提前執(zhí)行到喂狗語(yǔ)句獨(dú)立看門(mén)狗看不出來(lái)窗口看門(mén)狗就能抓出來(lái)。窗口看門(mén)狗常用于對(duì)軟件執(zhí)行時(shí)序有嚴(yán)格要求的場(chǎng)景比如電機(jī)控制、電源管理中的關(guān)鍵巡檢流程。這兩種看門(mén)狗內(nèi)部結(jié)構(gòu)也有差異。獨(dú)立看門(mén)狗通常掛在低速內(nèi)部時(shí)鐘上比如LSI不依賴(lài)主時(shí)鐘主時(shí)鐘掛了它依然在跑。窗口看門(mén)狗一般掛在系統(tǒng)時(shí)鐘上主時(shí)鐘出問(wèn)題時(shí)它也可能跟著失效。2.3 幾種常見(jiàn)實(shí)現(xiàn)方式對(duì)比方案類(lèi)型獨(dú)立性對(duì)時(shí)鐘依賴(lài)適用場(chǎng)景典型缺點(diǎn)MCU內(nèi)置獨(dú)立看門(mén)狗高低速獨(dú)立時(shí)鐘主時(shí)鐘掛了仍有效絕大多數(shù)嵌入式應(yīng)用喂狗窗口不可調(diào)檢測(cè)不到節(jié)奏異常MCU內(nèi)置窗口看門(mén)狗中依賴(lài)系統(tǒng)時(shí)鐘對(duì)執(zhí)行時(shí)序要求高的控制類(lèi)應(yīng)用喂狗時(shí)序配置繁瑣易誤復(fù)位外部看門(mén)狗芯片最高完全獨(dú)立自帶振蕩源車(chē)載、工業(yè)、電源等嚴(yán)苛環(huán)境成本高、占PCB面積、多一個(gè)器件軟件看門(mén)狗低依賴(lài)定時(shí)器和中斷資源受限的項(xiàng)目、無(wú)硬件看門(mén)狗關(guān)中斷即失效只能兜底用選型的時(shí)候別貪心。獨(dú)立看門(mén)狗夠用就別強(qiáng)行上窗口看門(mén)狗后者配置不當(dāng)會(huì)比不裝看門(mén)狗還讓人頭疼。產(chǎn)品應(yīng)用環(huán)境比較惡劣、比如高低溫、強(qiáng)振動(dòng)、強(qiáng)電磁干擾再考慮外置看門(mén)狗芯片也不遲。3. 關(guān)鍵參數(shù)與設(shè)計(jì)要點(diǎn)3.1 超時(shí)時(shí)間怎么計(jì)算獨(dú)立看門(mén)狗的超時(shí)時(shí)間由三個(gè)參數(shù)決定獨(dú)立時(shí)鐘頻率、預(yù)分頻系數(shù)、重載值。公式大概是這樣的T 預(yù)分頻系數(shù) × 重載值 / 獨(dú)立時(shí)鐘頻率以常見(jiàn)的低速內(nèi)部時(shí)鐘32kHz為例。如果我把預(yù)分頻系數(shù)設(shè)置為128重載值設(shè)為4095那么一次完整的倒計(jì)時(shí)時(shí)間就是T 128 × (4095 1) / 32000 16.384秒這里有個(gè)細(xì)節(jié)很多人會(huì)忽略重載值寫(xiě)入后實(shí)際計(jì)數(shù)器往往是從重載值加1開(kāi)始遞減的所以計(jì)算時(shí)要記得把重載值加1。每一款MCU的說(shuō)明可能略有不同以數(shù)據(jù)手冊(cè)為準(zhǔn)但原理一致。超時(shí)時(shí)間該選多大我一般按這個(gè)思路來(lái)先找出軟件里最長(zhǎng)的一次“合法不喂狗時(shí)間”也就是從一次喂狗到下一次喂狗之間最極端的情況比如某次耗時(shí)的加密運(yùn)算、Flash擦寫(xiě)、外部阻塞等待把這個(gè)時(shí)間量出來(lái)或算出來(lái)然后超時(shí)時(shí)間取這個(gè)值的2到4倍。太小了偶發(fā)執(zhí)行慢一點(diǎn)就誤復(fù)位生產(chǎn)線上退貨率上升太大了系統(tǒng)死機(jī)后要等十幾秒才恢復(fù)用戶(hù)早就暴躁了。工業(yè)級(jí)設(shè)備有個(gè)常用的經(jīng)驗(yàn)值主循環(huán)周期在幾毫秒到幾十毫秒的應(yīng)用超時(shí)時(shí)間取1秒左右比較合適。3.2 喂狗位置怎么選喂狗位置是整個(gè)看門(mén)狗設(shè)計(jì)里最需要琢磨的地方。最懶的做法是在主循環(huán)開(kāi)頭喂狗代碼簡(jiǎn)單但只要這個(gè)主循環(huán)本身有邏輯漏洞比如某個(gè)設(shè)備狀態(tài)判斷錯(cuò)誤導(dǎo)致進(jìn)入死循環(huán)喂狗照樣執(zhí)行看門(mén)狗形同虛設(shè)。我覺(jué)得拿“喂狗一定要喂在關(guān)鍵執(zhí)行路徑的尾部”這個(gè)原則來(lái)指導(dǎo)更合理。比如一個(gè)數(shù)據(jù)采集設(shè)備主循環(huán)要做的事情是讀取傳感器數(shù)據(jù)、處理數(shù)據(jù)、寫(xiě)入Flash、上報(bào)上位機(jī)。那么喂狗動(dòng)作應(yīng)該放在“上報(bào)上位機(jī)”完成之后。這樣只要傳感器讀取卡死、Flash寫(xiě)入卡死、通訊流程卡死無(wú)論卡在哪一步CPU都無(wú)法走到最后的喂狗語(yǔ)句看門(mén)狗就會(huì)觸發(fā)復(fù)位。如果把喂狗放在最前面后面哪一步卡住了系統(tǒng)都不會(huì)復(fù)位問(wèn)題就大了。還有一種玩法叫“喂狗任務(wù)管理”。先定義一個(gè)全局變量組記錄每個(gè)關(guān)鍵任務(wù)的運(yùn)行狀態(tài)喂狗前檢查這些狀態(tài)是否都被置位。只有所有關(guān)鍵任務(wù)都按時(shí)跑過(guò)才真正喂狗否則就算主循環(huán)還在轉(zhuǎn)也不喂。這種方案在RTOS環(huán)境的項(xiàng)目里很流行相當(dāng)于給看門(mén)狗加了一層“業(yè)務(wù)判斷”。3.3 中斷處理與復(fù)位方式某些看門(mén)狗模塊會(huì)提供一個(gè)“提前喚醒中斷”功能也就是計(jì)數(shù)器遞減到某個(gè)閾值時(shí)先觸發(fā)一次中斷如果這個(gè)中斷沒(méi)被正確處理再繼續(xù)遞減到零才復(fù)位。這個(gè)中斷特別適合用來(lái)做善后工作保存關(guān)鍵運(yùn)行數(shù)據(jù)到非易失存儲(chǔ)、記錄復(fù)位現(xiàn)場(chǎng)、把輸出設(shè)備切到安全狀態(tài)。注意這個(gè)中斷里千萬(wàn)別做耗時(shí)操作Flash擦寫(xiě)這種少說(shuō)幾十毫秒的活放到這里干基本來(lái)不及還容易造成二次異常。復(fù)位方式也要留意??撮T(mén)狗超時(shí)后的系統(tǒng)復(fù)位可能分為“內(nèi)核復(fù)位”和“系統(tǒng)復(fù)位”。內(nèi)核復(fù)位只復(fù)位CPU內(nèi)核外設(shè)狀態(tài)基本保留系統(tǒng)復(fù)位是整顆芯片回到類(lèi)似剛上電的狀態(tài)。不同MCU的看門(mén)狗復(fù)位行為不一樣如果你的產(chǎn)品需要區(qū)分“看門(mén)狗復(fù)位”和“上電復(fù)位”記得在初始化時(shí)第一時(shí)間讀取復(fù)位狀態(tài)標(biāo)志寄存器并記錄下來(lái)這個(gè)標(biāo)志是排查問(wèn)題的關(guān)鍵線索。4. 實(shí)操以NSUC1612E為例完成看門(mén)狗配置4.1 NSUC1612E看門(mén)狗模塊概況最近我在一個(gè)低功耗物聯(lián)終端項(xiàng)目里用了NSUC1612E這顆國(guó)產(chǎn)MCU它的看門(mén)狗模塊做得比較典型很適合拿來(lái)講配置流程。這顆芯片內(nèi)部集成了獨(dú)立看門(mén)狗和窗口看門(mén)狗獨(dú)立看門(mén)狗掛在獨(dú)立的低速時(shí)鐘上不受主時(shí)鐘影響。配置寄存器有寫(xiě)保護(hù)要解除寫(xiě)保護(hù)才能修改配置。這個(gè)寫(xiě)保護(hù)設(shè)計(jì)我是支持的防止程序跑飛時(shí)順手把看門(mén)狗關(guān)掉那就等于把保安給辭退了。NSUC1612E的獨(dú)立看門(mén)狗涉及幾個(gè)核心寄存器控制寄存器控制使能和工作模式、預(yù)分頻寄存器、重載寄存器、狀態(tài)寄存器。不同廠家的寄存器命名風(fēng)格不一樣有的叫WDT_CR有的叫IWDG_KR但功能結(jié)構(gòu)大同小異??磾?shù)據(jù)手冊(cè)時(shí)先定位這幾個(gè)角色時(shí)鐘來(lái)源是什么、預(yù)分頻在哪配置、重載值往哪個(gè)寄存器寫(xiě)、狀態(tài)標(biāo)志位有哪些。把這幾個(gè)關(guān)鍵點(diǎn)梳理清楚換任何一顆芯片都能快速上手。4.2 初始化流程與代碼骨架我用標(biāo)準(zhǔn)庫(kù)風(fēng)格的代碼來(lái)演示配置流程。具體到NSUC1612E配置步驟和代碼骨架如下void WDT_Init(void) { // 1. 解除寫(xiě)保護(hù)允許修改預(yù)分頻和重載寄存器 WDT_Unlock(); // 2. 設(shè)置預(yù)分頻系數(shù)為128 WDT_SetPrescaler(WDT_PRESCALER_128); // 3. 設(shè)置重載值這里用4095對(duì)應(yīng)超時(shí)時(shí)間約16秒 WDT_SetReload(4095); // 4. 喂一次狗讓計(jì)數(shù)從頭開(kāi)始 WDT_ReloadCounter(); // 5. 啟動(dòng)看門(mén)狗 WDT_Enable(); // 6. 重新使能寫(xiě)保護(hù)防止后續(xù)權(quán)限混亂 WDT_Lock(); } void WDT_Feed(void) { // 每次喂狗其實(shí)就是執(zhí)行重載操作 WDT_ReloadCounter(); }步驟1為什么必須先“解鎖”因?yàn)榭撮T(mén)狗一旦使能正常狀態(tài)下不允許隨意修改配置否則你的程序就是地球人無(wú)法控制自己的飛船。寫(xiě)保護(hù)機(jī)制可以防止程序跑飛后修改看門(mén)狗配置把自己“放生”。這在產(chǎn)品量產(chǎn)調(diào)試中能擋掉相當(dāng)一部分低級(jí)失誤。步驟2和3屬于參數(shù)設(shè)定。預(yù)分頻128和重載值4095對(duì)應(yīng)超時(shí)16秒多一點(diǎn)這個(gè)值對(duì)我的項(xiàng)目來(lái)說(shuō)是合理的設(shè)備主循環(huán)正常周期50毫秒左右即使某個(gè)通訊流程出現(xiàn)超時(shí)重試也能在2到3秒內(nèi)跑完整個(gè)路徑16秒足夠?qū)捲S植粫?huì)讓客戶(hù)等太久。步驟5和6的順序別寫(xiě)反。先使能再上鎖順序反了會(huì)出現(xiàn)寫(xiě)保護(hù)狀態(tài)下仍然能操作寄存器的情況等于白設(shè)了一道鎖。4.3 喂狗策略與任務(wù)集成初始化只是第一步真正決定看門(mén)狗效果的是喂狗策略。我這個(gè)物聯(lián)終端跑的是一個(gè)簡(jiǎn)單的裸機(jī)狀態(tài)機(jī)狀態(tài)切換包括傳感器采集、數(shù)據(jù)加密、NB-IoT模塊發(fā)送、進(jìn)入低功耗休眠。在低功耗模式下MCU會(huì)停掉大部分時(shí)鐘這時(shí)候如果看門(mén)狗還在跑就必須在休眠前做特殊處理否則休眠時(shí)間超過(guò)看門(mén)狗超時(shí)時(shí)間設(shè)備會(huì)被狗咬醒。我的處理方式是進(jìn)入休眠前計(jì)算休眠時(shí)長(zhǎng)如果休眠會(huì)超過(guò)看門(mén)狗的一半超時(shí)時(shí)間就把喂狗任務(wù)交給一個(gè)超低功耗定時(shí)器讓它提前一點(diǎn)醒來(lái)喂狗再睡回去。同時(shí)看門(mén)狗配置成在休眠模式下繼續(xù)計(jì)數(shù)。別忘了考慮這一點(diǎn)很多低功耗項(xiàng)目栽在“休眠期間被看門(mén)狗復(fù)位”這個(gè)坑上。如果項(xiàng)目用了RTOS喂狗策略要更講究。最簡(jiǎn)單的辦法是創(chuàng)建一個(gè)專(zhuān)門(mén)的喂狗任務(wù)優(yōu)先級(jí)設(shè)最低每次被調(diào)度就喂狗。這樣只要低優(yōu)先級(jí)任務(wù)還能得到調(diào)度機(jī)會(huì)說(shuō)明系統(tǒng)整體沒(méi)有崩潰。但缺點(diǎn)也很明顯高優(yōu)先級(jí)任務(wù)如果陷入死循環(huán)低優(yōu)先級(jí)任務(wù)永遠(yuǎn)得不到調(diào)度看門(mén)狗卻不會(huì)觸發(fā)復(fù)位因?yàn)槟銖膩?lái)沒(méi)走到喂狗那一步。嚴(yán)格來(lái)說(shuō)這算設(shè)計(jì)缺陷不能只看低優(yōu)先級(jí)任務(wù)喘氣就完事。我習(xí)慣在喂狗任務(wù)里順便檢查幾個(gè)業(yè)務(wù)心跳變量比如“數(shù)據(jù)采集任務(wù)上次執(zhí)行時(shí)間戳”“通訊任務(wù)上次執(zhí)行時(shí)間戳”這些時(shí)間戳超過(guò)閾值就主動(dòng)觸發(fā)軟件復(fù)位相當(dāng)于給RTOS看門(mén)狗做了一層定制化體檢。5. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄5.1 復(fù)位原因不明很多時(shí)候設(shè)備被看門(mén)狗復(fù)位了但我們不知道。特別是裸機(jī)程序沒(méi)有日志系統(tǒng)掉了電再看現(xiàn)場(chǎng)一片空白。這種情況我強(qiáng)烈建議上電初始化第一件事讀取復(fù)位狀態(tài)寄存器把復(fù)位原因打印出來(lái)或存到Flash里。NSUC1612E這一類(lèi)芯片基本都有復(fù)位標(biāo)志寄存器可以區(qū)分上電復(fù)位、外部引腳復(fù)位、看門(mén)狗復(fù)位、低功耗復(fù)位。日志信息加上“上次復(fù)位原因”字段很多難纏的問(wèn)題一下就定位了。比如我遇到過(guò)設(shè)備運(yùn)行幾個(gè)小時(shí)后重啟加了復(fù)位原因記錄后發(fā)現(xiàn)是看門(mén)狗復(fù)位再追查喂狗時(shí)間戳發(fā)現(xiàn)是某個(gè)外設(shè)驅(qū)動(dòng)在特定數(shù)據(jù)模式下面陷入阻塞。沒(méi)有復(fù)位標(biāo)志這個(gè)問(wèn)題可能在現(xiàn)場(chǎng)反復(fù)折騰一個(gè)月都找不到方向。5.2 系統(tǒng)頻繁復(fù)位系統(tǒng)頻繁復(fù)位是最常見(jiàn)的看門(mén)狗故障表現(xiàn)。通常有幾個(gè)方向要查。第一喂狗間隔是否真的小于超時(shí)時(shí)間。有人把超時(shí)時(shí)間算了10秒但主循環(huán)里有個(gè)阻塞式模塊耗時(shí)20秒那狗咬你屬于正常操作。把各任務(wù)最大耗時(shí)列出來(lái)加一加就知道瓶頸在哪。第二中斷和臨界區(qū)是否關(guān)閉太長(zhǎng)時(shí)間。NSUC1612E的喂狗操作本身可能是一個(gè)簡(jiǎn)單的寄存器寫(xiě)入但如果你的喂狗代碼在臨界區(qū)里而臨界區(qū)長(zhǎng)時(shí)間關(guān)中斷喂狗指令根本執(zhí)行不到。這種問(wèn)題在調(diào)試器上單步跑看不出全速跑才暴露。第三低功耗模式下喂狗是否還正常。休眠時(shí)間超過(guò)超時(shí)時(shí)間又不處理復(fù)位是必然結(jié)果。要么把看門(mén)狗在進(jìn)入休眠前臨時(shí)禁用部分芯片支持要么用定時(shí)器喚醒喂狗二選一。第四某些外設(shè)故障會(huì)導(dǎo)致死鎖。比如I2C從設(shè)備地址不對(duì)讀操作一直拉低時(shí)鐘線程序卡死在等總線釋放的循環(huán)里。這種看門(mén)狗能兜住但更建議在外設(shè)驅(qū)動(dòng)里加超時(shí)退出機(jī)制讓狗只做最后防線。5.3 調(diào)試時(shí)總被復(fù)位用調(diào)試器在線調(diào)試看門(mén)狗程序時(shí)會(huì)遇到一個(gè)非常煩人的情況自己在某個(gè)斷點(diǎn)停了幾分鐘看變量值結(jié)果看門(mén)狗計(jì)數(shù)器溢出整個(gè)芯片復(fù)位了斷點(diǎn)狀態(tài)全丟。這不是芯片有問(wèn)題而是調(diào)試暫停期間看門(mén)狗依然在運(yùn)行你停得越久狗越餓。解決辦法有三個(gè)。第一個(gè)調(diào)試前把看門(mén)狗初始化代碼注釋掉調(diào)試完再恢復(fù)。簡(jiǎn)單粗暴但容易忘記恢復(fù)導(dǎo)致燒進(jìn)量產(chǎn)板的程序沒(méi)有開(kāi)看門(mén)狗風(fēng)險(xiǎn)很大不推薦。第二個(gè)使用仿真器提供的“調(diào)試時(shí)禁止看門(mén)狗”選項(xiàng)很多IDE里都有這個(gè)配置原理是調(diào)試器連上芯片后主動(dòng)把看門(mén)狗計(jì)數(shù)器凍結(jié)。第三個(gè)在代碼里加編譯開(kāi)關(guān)#ifdef DEBUG時(shí)不使能看門(mén)狗#else時(shí)正常使能發(fā)布固件用Release編譯這樣就不容易漏掉。調(diào)試中還有一個(gè)怪脾氣在斷點(diǎn)處你會(huì)查看外設(shè)寄存器部分芯片在CPU掛起時(shí)外設(shè)時(shí)鐘也停計(jì)數(shù)器就停了完全沒(méi)問(wèn)題但有些芯片的看門(mén)狗模塊掛在獨(dú)立時(shí)鐘上CPU停了它照樣跑這時(shí)斷點(diǎn)一停幾分鐘必被復(fù)位。搞清楚自己芯片的看門(mén)狗時(shí)鐘源能少踩很多坑。5.4 常見(jiàn)問(wèn)題速查表現(xiàn)象常見(jiàn)原因排查思路上電能跑運(yùn)行一段時(shí)間后靜默重啟喂狗路徑上有阻塞某個(gè)條件分支異常導(dǎo)致喂狗語(yǔ)句無(wú)法執(zhí)行打印各任務(wù)執(zhí)行時(shí)間戳找最長(zhǎng)喂狗間隔調(diào)試器全速跑正常單步就復(fù)位調(diào)試暫停時(shí)看門(mén)狗繼續(xù)計(jì)數(shù)超時(shí)觸發(fā)復(fù)位配置IDE凍結(jié)看門(mén)狗或DEBUG版本不使能狗低功耗模式頻繁喚醒但狀態(tài)不對(duì)休眠時(shí)長(zhǎng)超過(guò)看門(mén)狗超時(shí)被狗咬醒后執(zhí)行了復(fù)位流程休眠前重新計(jì)算喂狗方式或臨時(shí)禁用看門(mén)狗用窗口看門(mén)狗后頻繁誤復(fù)位喂狗窗口配置過(guò)窄代碼執(zhí)行時(shí)序波動(dòng)就出窗口放寬窗口或改用獨(dú)立看門(mén)狗配置之后看門(mén)狗沒(méi)生效寫(xiě)保護(hù)未解除使能后又被其他代碼誤關(guān)閉檢查配置順序搜索代碼里所有寫(xiě)看門(mén)狗控制寄存器的位置復(fù)位后關(guān)鍵數(shù)據(jù)丟失未使用提前喚醒中斷做數(shù)據(jù)保存復(fù)位過(guò)于暴力利用看門(mén)狗提前中斷服務(wù)函數(shù)保存關(guān)鍵參數(shù)6. 我的幾點(diǎn)實(shí)操心得6.1 經(jīng)驗(yàn)性建議與教訓(xùn)先說(shuō)一個(gè)我早年踩過(guò)的坑。當(dāng)時(shí)做一款消費(fèi)電子趕進(jìn)度在主循環(huán)開(kāi)頭加了一句喂狗就交差了。量產(chǎn)之后市場(chǎng)反饋設(shè)備偶爾死機(jī)但死機(jī)之后過(guò)幾十秒能自己恢復(fù)用戶(hù)還以為是什么“自動(dòng)恢復(fù)”功能。其實(shí)那就是看門(mén)狗在起作用但起作用的范圍很小因?yàn)橹餮h(huán)開(kāi)頭喂完狗后面卡在哪一步狗都不會(huì)管。后來(lái)把喂狗挪到整個(gè)主循環(huán)業(yè)務(wù)鏈路的最后同樣的故障概率下設(shè)備恢復(fù)速度明顯變快了因?yàn)槿魏我徊娇ㄗ∠到y(tǒng)都能在超時(shí)時(shí)間內(nèi)重啟。這個(gè)教訓(xùn)我記到現(xiàn)在每次都當(dāng)成必講案例。另一個(gè)經(jīng)驗(yàn)是喂狗代碼一定要足夠簡(jiǎn)單不要在里面做復(fù)雜的邏輯判斷。有人喜歡在喂狗函數(shù)里檢查所有傳感器狀態(tài)十幾個(gè)條件都滿足才喂狗結(jié)果這個(gè)檢查過(guò)程本身出問(wèn)題導(dǎo)致系統(tǒng)“健康狀態(tài)良好但被狗咬”。喂狗函數(shù)的職責(zé)就是喂狗業(yè)務(wù)健康度檢查可以另寫(xiě)一個(gè)模塊不要混在一起。最后是量產(chǎn)前一定要做可靠性測(cè)試??撮T(mén)狗最容易在高溫、長(zhǎng)時(shí)間運(yùn)行、掉電復(fù)現(xiàn)等場(chǎng)景下暴露問(wèn)題特別是Flash寫(xiě)入時(shí)喂狗超時(shí)這種邊界情況你不把擦寫(xiě)Flash的時(shí)間拉出來(lái)實(shí)測(cè)就永遠(yuǎn)不知道自己的超時(shí)設(shè)置是否合理。6.2 這個(gè)內(nèi)容后續(xù)還可以這樣擴(kuò)展看門(mén)狗不是單片機(jī)上的孤島它跟低功耗管理、任務(wù)調(diào)度、異常處理都有關(guān)聯(lián)。如果你已經(jīng)有獨(dú)立看門(mén)狗能正常保護(hù)系統(tǒng)了下一步可以試著把窗口看門(mén)狗用起來(lái)為關(guān)鍵任務(wù)流程增加時(shí)序約束。再進(jìn)階一點(diǎn)可以設(shè)計(jì)一個(gè)“看門(mén)狗外部復(fù)位IC”的雙保險(xiǎn)方案用于產(chǎn)品生命周期更長(zhǎng)、現(xiàn)場(chǎng)維護(hù)成本更高的工業(yè)設(shè)備。也可以考慮在系統(tǒng)里記錄歷次復(fù)位原因和時(shí)間戳通過(guò)遠(yuǎn)程或者本地日志回傳形成一個(gè)簡(jiǎn)單的設(shè)備健康檔案。這樣設(shè)備返修回來(lái)你能在幾秒內(nèi)判斷是軟件問(wèn)題還是硬件問(wèn)題而不是從零開(kāi)始接示波器抓現(xiàn)場(chǎng)。我現(xiàn)在做的新項(xiàng)目都會(huì)在啟動(dòng)代碼里留一段復(fù)位歷史記錄區(qū)這個(gè)習(xí)慣幫我省了不少售后排查的力氣。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲网站999| 五月丁香六月婷婷综合| 亚州AV超碰人人操| 99人人干| 综合网色综合| 狠狠狠狠狠狠| 精品色色| 久久婷婷五月丁香| 一区色色色色网| 亚洲欧美在线观看| 538在线精品| 六月婷婷狠狠色在线观看| 在线免费视频caop| 色婷五月天| 精品免费99| 日本色图综合| 区啪精品| 婷婷五月性感| 无码激情AAAAA片-区区| 色婷婷狠狠18禁| www.ppypp| 婷婷色色网站| 国产成人精品一区二三区熟女在线| 色婷婷五月天视频在线| 激情狠狠丁香月| 欧美、日韩、中文、制服、人妻| 久久婷婷五月天丁香| 99热精品在线观看| 五月精品| 婷婷五月天成人网| 夜夜躁爽日| 综合色情网| 潮汕成人AV片在线| 成人免费黄色短视频| 婷婷九月丁香| 亚洲激情av| 五月丁香六月婷婷操操操| 精品视频这里只有精品| 色色日韩网| 99久超碰| 欧美色99| 久久婷婷热| 色婷亚洲五月丁香| 五月婷免费视频| 中文字幕日产A片在线看| 婷婷五月天六月丁香| 色婷婷六月精品| 激情五月天噢美| 色婷婷综合亚洲| 7777久久亚洲中文字幕| 久久99日本精品视频免费观看| 夜精品无码A片一区二区蜜桃| 91九色熟女| 亚洲婷婷免费| 亚洲性视频| 丁香五月六月激情久久| 直接看的AV| 五月婷丁香亚洲| 丁香婷婷五月天色综合| 99久久婷婷国产综合精品草原| 久久婷婷丁香六月天| 天天摸夜夜爽天天做| 久热这里只有精品6官网亚洲| 情色五月天网站| www91在线| 十区av| 精品九九久久| 色偷偷色婷婷| 9伊人网| 色九九九九| 九月大香蕉| 五月天久草| 奇米色大香蕉| 99在线资源| 国产熟女大叫受不了| 亚州操操| 99热九九这里只有精品10| 欧美日综合| 激情久久久久久| 日韩综合天堂| 天天上天天爽| 综合久久99| 91超碰在线播放| 亚洲婷婷91丁香| 深爱婷婷网| 色色无码| 99热狠狠操| 色综合大香蕉| 五月天婷婷色小说| 色噜噜狠狠色综合网| 成人五月丁香社区| 亚洲三级无码| 色色五月天婷婷| 日日噜噜久久婷婷五月天 | 婷婷.com| 久热精品在看| 色五月xxx| 99激| 色偷偷色婷婷| 成人精品一区日本无码网| 亚洲无AV在线中文字幕| pom538精品视频| 91精品久久久久久77777| 五月婷婷开心色伊人| 日韩精品二三区| 久久伦乱| 99在线综合视频| 色婷婷丁香| 激情综合五月.....| 色综合激情| 亲子乱AV一区二区三区下载| 十二区无码| 精品五月花| 久碰久操| www.狠狠艹| 九九九九毛片| 少妇性BBB搡BBB爽爽爽视頻| 插逼综合网| 丁香六月婷婷综合色| 能看的av片| 色香久久| 五月丁香婷婷老司机| 99久久综合网| 可以免费观看的av| 超碰免费观看| 99精品久久久久久久婷婷久久| 激情久久久久久久久| 七月婷婷色香综合网| 9一精品视频观看| 综合网色| 激情综合99| 婷婷亚洲色| 粉嫩AV久久一区二区三区| 中文字幕婷婷在线| 色婷婷成人五月| 婷婷五月天小说| 97影院一级片| 五月婷婷久久综合| 涩综合网| 91人人操人人爱| 男人大jjc女人免费视频| 99日本在线| 岛国AV网站| 免费观看的av| 亚洲婷婷在线播放十月| 超碰激情网| 色色色色色九九九九九| 婷婷五月天首页| 97av在线视频| 日日婷婷不卡| 色婷婷综合久久| 视频综合网| 9热视频在线观看| 久久香视频| 五月婷婷免费在线观看| 久久桃花网色婷婷| 九一99| 大香蕉啪啪啪| 噜噜噜色噜噜| 五月丁香综合网| 伊人午夜综合色啪| 99欧美三级视频| 国产在线另类五月婷婷| 999热在线观看视频| 婷婷激情五月天色| 成人AV播放| 蜜桃五月天| 深夜男女福利刺激影院一区| 99久久久久| 久久精彩免费视频精彩免费视频| 五月婷婷久久综合| 亚洲五月天狠狠| 天天肏在线| 一级A片天天操夜夜操| 超碰亚洲欧美| 丁香六月天| 密乳Va| 丁香久久久| 精品九九网| 超碰1999| 激情综合五月天| 婷婷五月色情天| 色综合色| 中国女人内射6XXXXX| 激情五月天之五月婷婷| 日碰日| 另类小说激情五月天| 丁香九月色| 五月天婷婷在线观看| 99九九热播在线免费视频| 91色情播放| 丁香五月婷婷欧美成人色图| 99精品视频网站| 中文字幕丰满乱孑伦无码专区| 99综合网| 久久天天| 五月婷婷丁香成人网| 国产精自产拍久久久久久蜜 | 五月WWW| 天天日日综合| www.亭亭五月天| 99热精品中文字幕| aaa日韩| 99丝袜精品视频网站| 五月丁香影院 | 狠狠久综合| 九九爱激情| 五月天婷婷丁香花| 久久在线视频免费观看| 久色大| 久久久久久激情| 日韩成人免费电影| 色婷婷88| 噜噜噜噜噜色| .操區COm| 青青草tp| 国产性爱色| 亚洲性爱电影| 激情五月天婷婷丁香 | 天天操无码| 日日射天天射| 色色自拍视频网站| 欧美A A A A A| 97久久久久| 日韩精品无码99| 91久久久久久久久18| 九九色婷婷五月天| 另类小说色婷婷| 亚州操人在线视频| 97色婷婷五月天| 99综合视频| 婷婷狠狠青青| 久久AAAA片一区二区| 日日撸日日操| 成人欧美一区二区三区在线观看 | 亚洲在线资源| 久久9999| 一本九九色| 久久久999精品| 欧洲电影在线观看免费版英语版| 色综合色综合网| 色色网五月激情| 99热免费精品热久久66| 人妻人人操| 色色综合热| 粉嫩AV久久一区二区三区| 九九无码| 婷婷综合激情| 亚洲操b| 中文无码精品一区二区三区| 热无码A∨| 亚洲黄色精品| 五月婷在线影院| 91色综合网站在线| 五月天丁香久久综合| 99热欧美| www激情| 久久9视频| 久久综合人妻| 五月丁香成年黄色| 日韩久久视频| www色色com| 五月天成人免费视频| 婷婷王月天影院| 色综合开心五月深爱五月| 婷婷五月天成人五月天| 久久亚洲精品成人无码网站导航| 草操AV在线| 欧美大奶熟女噜噜噜噜| 五月婷婷色丁香| 成人在线综合| 婷婷五月天激情四射| 97操碰视频| 丁香五月AV| 欧美婷婷九月| 婷婷五月丁香啪啪| 精品国产人人爱人人| 久久久久久xxxxx| 99热这里在线精品| 丁香五月天激情小说| 日韩久久这里只有精品| 五月婷婷官网色| 久综合4| 国产做爰视频免费播放| 丁香久久在线| 性爱七区| 狠狠干五月天婷婷网| www,色婷婷| 中文字幕,综合,91| 六月丁香婷婷综合色播| 婷婷五月天激情亚洲小说| 天天色色婷婷| 玖玖婷婷色五月| 亚洲国产成人在线| 久久5 9视频免费观看| 婷婷丁香五月在线观看91| 色婷婷色综合| 色性综合| 九九激情视频| 色99在线观看| www,99色| 亚洲图色五月天| 99碰网站| jiujiu无码五区| 婷婷综合六| xxx.色婷婷| 91久久1118| 天天爽天天爽| 中文字幕av亚洲| 九九人人操| 色婷婷五月婷婷五月婷婷五月| 六月婷婷在线| 九九99精品| 中文字幕综合色| 97碰| 亚洲色在线观看| 色9999日韩国产| 另类少妇人与禽zOZZ0性伦| 一区二区你懂的| 丁香五月97视频| 538任你爽| 激情五月天之五月婷婷| 久久婷婷色| 综合久久狠狠| 日日噜噜久久婷婷五月天 | 久久996re热这里只有精品无码| 五月丁香婷婷激情在线视频| 色丁香五月婷婷| 天天做天天爱| 婷婷丁香97| 视频这里只有精品16| 亚洲激情久久| 碰超亚洲| 日日干日日s| 亚洲欧美丁香五月天亚洲欧美| 国产偷人爽久久久久久老妇APP| 九月av| wwwxxx五月婷婷小说| 亚洲网站999| 亚洲亚洲人成综合网络| www99热| 精品五月天| 亚洲热综合| 精品导航在线x不卡| 九九热这里都是精品6| 五月婷婷在线综合| 久综合4| bbwcuckold精品熟妇| 婷婷五月天色播| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 成人午夜无码视频| 激情久久综合网| 色婷婷五月天激情在线播放| 五月激情小说网| 99热精品99| 婷婷色五月综合| 日韩成人免费电影| 激情深爱综合| 日日干夜夜干| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 五月天激情四射| 91精品久久久久久久久久久久| 亚洲激情网站| 爱iii做iiii日日| 天天狠狠色噜噜| 欧美成人精品A片免费一区99| www.婷婷五月天.com| 丁香五月婷婷五月天| chaopeng在线人人| 亚洲热视频在线| 日本网站久久| 五月亭亭直播| 色狠狠综合入口| 婷婷五月六月| 激情五月天综合网| 色色五月天激情| 人妻久久婷婷| 五月综合视频| 五月婷婷m| 精品亚洲国产成AV人片传媒| 夜夜骑日日夜夜| 精品二区| 欧美日本另类| 人人澡玖玖一| AA丁香综合激情| 99热20| 最近中文字幕在线中文视频| 婷婷五月天亚洲天堂| 五月激情综合网| 久久这里只精品66| 日本精品人妻无码77777| 色婷婷AV五月天| 人妻视频一区而且二区| 噜噜久| 99伊人婷婷在线| 射区导航| 激情六月五月婷婷综合网| 99久热| 久久久思思热| 精品热九九| 亚洲色无码| 九九热在线视频观看免费10| 丁香婷婷色五月| 国产欧美婷婷| 狠狠色噜噜狠狠狠狠狠色综合久久| 97婷婷五月天| 色播五月丁香| 久久密臀婷婷| 欧美激情五月天| 丁香五月在线视频黑人| 日本久久视频| 天天色中文字幕女优AV| 9 1超碰九色| 五月丁香亭亭成人电影| 欧美大道不卡| 国产真实乱对白精彩| av性爱网站| 丁香五月影院| 亚洲殴洲精品Av在线| 久久9视频欧美| 天天日夜夜草进麻麻的子宫| 91久久综合| 亚洲无AV在线中文字幕| 99福利导航| 婷婷五月天无码视频| 开心色色五月天综合| 最新色色五月天| 日韩抽插操逼| 久99视频在线观看| 9l久久久视频| 天天日天天插| 久久作爱| 激情深爱五月天| 丁香五月婷婷少妇| 人人操婷婷| 26uuu日韩| 激情五月婷婷五月丁香五月开心五月| va中文资源在线观看| 亚洲旡码| 成人毛片在线免费观看| 色欲AVV| 啊v视频在线观看| 色综合综合网| www.伊人天堂偷偷婷婷| 337p大胆噜噜噜噜噜91Av| 人妻免费网站| 国产精品人成A片一区二区| 婷婷五月天六月丁香| 涩涩五| 99热这里是精品| www五月天com| 超碰在线观看caop| 99久久偷拍视频| 国产精品久久久久久久久久| 91一起操| 99久久网站| 成人网址在线观看| 色婷婷成人| 九九热思思热| 色五月激情视频在线综合| 丁香五月久久社区| 亚洲AV无码电影| 激情综合网五月| 五月婷婷啪啪| 激情丁香五月| 天天插天天插| 秋霞AV淫| 超碰免费人妻| 婷婷的99视频网站| 激情伊人五月天| 丁香婷婷五月色成人网站| 色五月婷婷色五月婷婷色五月婷婷| 天天射射夜| 蜜桃婷婷五月| 狠狠色婷婷丁香六月| 五月天色婷婷激情综合| 天天色一道本综合婷婷| 欧美婷婷五月激情| 去干网最新版本亚洲版| 激情综合色五月丁香六月亚洲| 五月永久激情| 3www激情| 婷婷九月丁香| 亚洲成人综合在线| 99热最新| 国产精品久久久久久久久久| 中文字幕成人网站| 99爱在线| 亚洲无aV在线中文字幕 | 色五月五月婷婷| 五月天婷婷AV| 激情五月丁香五月| 夜精品无码A片一区二区蜜桃| 久久视频在线视频| 婷婷中文综合网| 天天射色五月天| 91|九色|动漫| 热的五码久久精品| 色婷婷五月天小说网| 婷婷丁香五月,狠狠综合| 欧美va欧美va差| 激情五月天综合| 丁香婷婷婷五月| 欧美色色色色色色| 99国产精品久久久久久久久久久 | 色噜噜狠狠色综合日日| 天堂久久久久天堂网| 人人色人人弄人人操| 99热伊人综合| 人妻AV在线观看| 久热这里这里有精品| 超碰renrenai| 色婷天天| 最近免费中文字幕大全高清大全1| 99婷五月| 丁香六月婷婷综合| 色五月婷婷狠狠撸| 天天五月天综合网址| 丁香五月另类色婷婷麻豆| 亚洲热综合| 91热视频| 337p大胆噜噜噜噜噜91Av| 人妻内射麻豆视频| 激情伊人五月天| 亚洲色在线观看| 综合五月激情| 97婷婷狠狠| 丁香亚洲婷婷五月| 色综合大香蕉| 七七久久婷婷| 激情五月天婷婷久久久久久久久久久 | 久热A| 99热99干| 婷婷香蕉视频| 五月色婷婷综合色| 99色免费观看全部| 熟女人妻一区二区三区免费看| 久久久五月天婷婷成人网| 香蕉综合网| 色五月综合激情| 99热婷婷| 日本啪啪天堂| 久久99热 这里有精品| 久久香蕉丁香| 第四色色六月色综合| 婷婷国产综合| 成人 在线 日韩| 99九九99九九九视频精品| 天天性视频| 五月天激情国产综合婷婷| 九九亚洲| 激情婷婷五月久久| 超碰在线观看9| 一区二区无码视频| 欧美在线操| 99色视频| 综合狠狠干| 五月丁香六月婷婷综合网站| 玩熟女五十AV一二三区| 激情美女五月天| 久久婷综合| 午夜免费高清AV片| 欧美成人网99网| 精品夜夜澡人妻无码AV| 五月丁香久久综合| 中文AV网站| 香蕉国产2013| 激情久久久久久| 超碰9在| 久久婷婷五月综合色和| 五月桃花网综合| 天天干天天日日| 婷婷丁香六月| 色五月婷婷综合| 五月丁香婷婷潮喷中文字幕| 97日韩无套内| 久久这里在精品视频| 五月婷精品| 色婷婷免费视频| www,色婷婷| 久久激情天堂| 99ri国产在线| 久久久久久久久久8888| WWW.婷婷| 狠狠另类视频| 婷婷丁香社区| 激情五月婷婷在线| 壅壅儕家a| 婷婷五月美女直播| 成人在线视频男人的天堂4399| 天天操狠狠操| 九月色婷婷综合| 99热8| 九九九九九九毛片| 日韩精品999| 狠狠操狠狠爱| 男女啪啪做爰高潮无遮挡| 91视屏在线观看com.wwwvv| 性按摩玩人妻HD中文字幕| 小视频一区 | 五月婷婷黄网站大全| 蜜臀A∨在线水帘洞| 婷香五月网在线| 欧美99热| 久久婷婷五月综合啪| 九九热狼人| 欧美成人A片AAA片在线播放| 成人毛片在线免费观看| 亚洲日韩欧美综合VA| 婷婷五月丁香人妻无码高清| 国产精品色婷婷99久久精品| 97碰碰在线看视频免费| 色婷婷丁香五月| 丁香色啪综合| 99草在线免费观看视频| 五月丁香自拍| 婷婷五月天,影院| 最近韩国日本免费高清观看| 天天爱夜夜爽| 欧美色图45678| 久热九九| 先锋av性爱成人电影| 久久丁香社| 九九Av| 天天插天天很| www.97干视频| 色婷五月天| 热成人网| 五月丁香综合成人社区| 五月天激情网图片| 丁香五月五月婷婷| 五月丁香日本片| 奇米色大香蕉| 99精品在线观看| 999热在线视频| 我爱大香蕉| 狠狠干.com| 婷婷五月色網站| 操操碰| 精品九九久久| 99色| 夜色综合网| 久婷婷久草| 国产1区2区3区| 丁香婷婷欧美综合| 五月激情站| 99久在线精品99re8热| 五月丁香婷婷综合在线| 五月久久网| 久久9热好| 久久婷婷影院| 亚洲综合五月天综合| 丁香婷婷色色| 影院久久久| 内射爽无广熟女亚洲| 日韩欧美成人片| 开心五月婷婷激情网| 天天摸.天天mo| 九九热黄色| 色噜噜狠狠色综合成人网| 婷婷色六月| 超碰97色| 婷婷五月综合啪| 午夜激情久久| 99caobi| 久久性爱激情| 影音先锋91男人资源在线播放| 两性婷婷丁香五月| 91碰免费视频| 91丨九色丨老熟女激情| 以及AA大片看看| 8050一级网| 色色色九九九五月婷婷| 精品日本视频444| 91久女| 97在线日韩| 39视频第二区| 色色五月婷婷久久| 激情综合五月丁香| www.五月天婷婷.com| aaa丁香五月天| 色色综合无码| 狠狠色情婷婷| 五月婷婷开心综合| 人人草人人舔| 色五月婷婷丁香五月| 啊v视频在线观看| 午夜不卡久久精品无码免费 | 91久久色| 97久久精品| 欧美久热| 五月婷婷开心爱| 俺也去综合| 丁香六月在线| 久久9视频| 丁香婷婷激情| 婷婷字幕在线| 九九色欲网| 综合久久婷婷五月丁香| 久热最新视频| 啪色综合| 成人午夜视频精品一区| 五月婷婷亚洲综合在线| 五月天久久综合| 婷婷久久免费看| 天天狠狠干| 久久久999精品| 欧美交换配乱吟粗大25P| 久热re视频在线观看网站| 日韩肏屄网| 麻豆科斗777| www.99热. com这里只有精品| 五月婷在线| 可以免费观看的av| 久久婷婷激情四射五月天| 激情五月婷婷| 激情小说视频图片| 人人摸人人干| 久人人操| 综合xx网| 无码99| 99久久这里只有精品| 五月丁香婷婷伊人日韩| 日本久久天堂| www激情五月天| 97人人射| 卡视频1区2区| 色婷婷五月天激情久久| 色五月五月天色婷婷色五月| 国产99久久久国产精品免费看 | 亚洲丁香五月| 九九色影院| 青吴乐视频| 丁香五月婷婷久久综合激情网 | 99精品网| 狠狠色五月| 婷婷色日本| 天天搡日日搡aaaaⅩ| 性爱激情五月| 五月婷婷播| 热99免费在线| 人人操人人添人人摸97| 69婷婷丁香午夜| 九九免费视频| 蜜桃婷婷狠狠久久| 九九激情视频| 国产AV一区二区三区日韩| 亚洲1区| 五月天激情综合网| 婷婷丁香五月天激情四射| 色五月涩涩婷婷蜜桃| 国产免费一区二区三区三州老师F1F1.CC | 久久机热这里只有 | 可以免费观看的AV| 欧美日本国产| 五月色导航| 久久五月丁香| 色婷丁香| 中文色婷婷| 性色综合网| 色青五月天| 亚洲字幕AV一区二区三区四区| www.五月婷婷久久.com| 久久999久久999久久999久久| 色色草97| 99国产这里只有精品| 久久色大香蕉| 五月丁香花伦理电影| 五月天色综合| 激情丁香五月婷| 欧美在线视频99| 91性高潮久久久久久久久| 极品另类| 丁香六月啪啪啪| 久久在线大香蕉| 色婷婷激情五月天| 99热精品无码| 91亚洲天堂| 五月丁香成年黄色| 蜜桃婷婷狠狠久久| 91seav| 婷婷成人综合| 26uuu精品一区二区| 97色在线| 丁香五月综合| 高清无码中文字幕aVDV| 99热8在线| 婷婷王月天影院| 婷婷久久天堂网| 色老久久| 国产一级片| 人妻少妇色综合| 色婷婷中文字母五月丁香| 中文激情网| 伊人在线婷婷草| 天天激情站| 逼里香不卡| 亚洲AV无码影院| 97操碰视频| 日韩婷婷| 国产精品扒开腿做爽爽爽A片唱戏| 五月天婷婷网站| 九月丁香婷婷基地| 天天做夜夜爽| 天天看A片| 激情五月激情综合网| 亚洲性色XXXXX| 大香蕉人人网| 欧美日韩999| 大香蕉久久| 天天狠狠婷婷在线| 草了bav视频在线观看| 久久少妇视频| 成人一级片| 国产精品扒开腿做爽爽爽A片唱戏| 激情综合亚洲色婷婷五月| 中文字幕性爱视频| 五月天激情视频| 丁香五月婷婷在线视频| 五月久久婷婷天堂视频| www.天天干| 99热这里只有精品16| 大香蕉久艹| 牛牛澡牛牛爽| 欧美日韩123| 五月天色五月天| 欧美精品A片一区在线观看| 性综合网| 天天草天天摸| 婷婷五月综合色中文字幕| www.婷婷com| 亚洲av综合网| 色婷婷影音| 日韩av在线免费观看| 在线观看国产高清视频免费网站 | 成人五月天在线视频在线观看| 九九九AAA热视频| 亚洲情欲| 丁香六月激情国产| 婷婷丁香视频在线观看免费| 狠狠色噜噜狠狠亚洲A∨| 91啪啪视频| WWW.桔色成人.COM| 亚州日本欧州韩美高青高潮一| 中文字幕,综合,91| 色婷婷很很十八禁| 99re思思久久| 激情五月丁香五月| 六月婷伊人| 97人人操人人| 五月婷婷亚洲色图| 免费无码毛片一区二区A片 | 婷婷五月花免费视频在线| 激情五月瑟瑟| 成熟妇人A片免费看网站| 91色综合网| 99成人精品视频| 狠狠色丁香99| 色婷婷XXXXX| 婷婷色偷拍| 淫视馆av三区| 中文字幕日产A片在线看| 九九Av| 久久九九国产精品怡红院| 久久深爱激情网| 婷婷久久久久久久| 啪啪啪大香蕉| 久久婷婷啪啪视频| 五月丁香黄色| 99日视频在线| 激情五月狠狠喔| 亚洲黄色网址| 强辱丰满人妻HD中文字幕| 免费黄色视频网址| 色五月色五天色情网| 激情深爱五月天| 99久在线精品99re8热| 米奇影视五月天| 五月天五月婷五月激情网| 九热在线这里有精品6| 91操操| 四色永久成人网站| 婷婷欧美综合| 丁香五月手机在线| 婷婷少妇激情| 色色色在线| 99热精品99| 99精品久久久久| 五月丁香九九| 久操97| 丁香五月AV| 9久国产| 操日视频| 人人操插| 日韩九区| 热99精品视频在线观看| 色五月天天在线观看资源站| 开心婷婷五| WWW.五月天9999| 伍月激情天| 天天插轮理| 天天天日天天天干| 五月婷婷之美女图片| 欧州色色| 婷婷色片| 超碰在线人妻| 五月婷婷激情五月| 欧洲色| 人与禽A片啪啪| 97超碰,人人舔,人人操,人人摸 | 久久五月网| 久久久久久久丁香五月天婷婷| 久鲁鲁色网 | 色综合久久久久久久久五月| 99爱精品视频| 亚洲精品大片| 99在线69| 天天爽天天干| 国外亚洲成AV人片在线观看| 91久久网站| 欧美 日韩 成人| 中文字幕综合网| 九热在线这里有精品6| 婷婷五月综合激情小说| 少妇达人正片在线播放_ikun_福利吧| 高清无码网址| 日韩啪啪网| 热99玖玖99玖玖99九九| 超碰人人99| 桃色Av色哟哟| 狠狠操性爱av| 婷婷综合视频| 国自产拍偷拍精品啪啪一区二区| 亚洲黄色操逼| 色99网| 婷婷五月天视频小说| 99久久玖玖| 久久99热这里只有精品| 大香蕉 婷婷| 99热性色| 深爱婷婷色| 直接看的AV| 99亚州综合精品成人网| 狠狠插.com| 五月婷婷激情| 另类图片婷婷五月天| 亚洲AV综合在线观看| 97亚洲视频在线| 婷婷激情在线| 丁香五月天五码婷婷| 91超级碰在线| 极品精品一区二区三区在线| 99在线免费视频| 国产精品久久久60086| xxxx久| 激情综合网婷婷五夜| 综合激情在线视频| 99在线国| 久久激情网| 热久久婷婷| 久久er+| 1024操逼视频| 99视频综合| 99综合色色色| 欧美日比视频| 亚洲第一成人AV| 婷婷和五月天| 五月婷婷导航| 人人综合色| 五月婷伊人| 久久99精品视频| 色吧99| 婷婷六月插屄激情| 99久久性爱| 黄色片精品| 婷婷五月天在线观看第二页| 国产精品18久久久| 超碰人人艹| 丁香久久久| 强奸幻女毛片| 狠狠干青青草| 久久久久久人妻| 色一情一乱一乱一区91| 五月综合视频| 色婷婷色和| 淫荡工a| 精品无码久久久久久久久| 激情婷婷丁香五月天| 天天综合精品| 婷婷激情啪啪| 丁香五月婷婷色播艳门照| 中文字幕人妻熟女在线| 五月婷俺去也| 五月丁香婷婷色色| www.henhenl| 波多野结衣AV无码Porn| 第1影院之五月婷婷| 99爱免费视频| 亚洲182在线观看| 五月丁香好婷婷A片网| 狠狠色丁香| 激情com| 午夜天堂啪啪| 99热这里只有精品268| 久婷婷| 激情综合婷婷| www狠狠| 五月天激情图片| 99九九综合久久九九| 超碰资源在线| 色五月婷婷综合| 操日本三片99| 天天爽天天| 色婷婷综合综合网| 色丁香久久| 五月开心婷婷极品激情| 久久激情综合| 六月香五月婷| 秋霞少妇AV网站| 就爱射中文字幕资源网| 丁香花综合永久入口| 五月天激情小说欧美激情| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 狠狠色噜噜狠狠狠888| 98色丁香五月婷婷综合网| 99网99热| 色五月天堂| 色中色综合| 99热99热在线观看| seuuu婷婷| 色五月天电影| 久久婷婷五月丁香网| 色狠狠综合| 狠狠操天天日| 久久码久久无清| 97碰久久| 激情婷婷五月天网址| 天天狠狠综合精区| 婷婷激情社区| 99热国内精品| 九九这里有精品| 九九热视频免费观看| 2022久久婷婷| 成人av在线电影| 99re这里只有精品视频6| 狠狠婷婷色综合| 欧美激情五月天| 色婷婷基地在线| 激情六月婷婷啪啪| 婷婷狠狠18禁久久| 七七九九色色| 丁香婷婷综合色五月激情国产基地| 无码色| 丁香五月日啪| 久久九九囯产| 婷婷开心激情| 久久96热| 婷婷97碰碰| 久久在线视频免费观看| 99热这里只有精品青草| 他改变了拜占庭| 久久婷婷艹| www.久久爱| 天天摸夜夜夜| 丁香六月婷婷综合| 天天日色情| PORNY九色9l自拍视频成人| 天天爽曰日爽| 99精品久久久久久久| 202丰满熟女妇大| 久久五月婷婷丁香| 精品色色网| 超碰成人在线观看| 欧美日本国产| 人妻久久久久久久| 色情五月综合婷婷| 69午夜成人影片| 九热免费视频| 亚洲av综合在线| 思思re99视频在线观看| 五月丁香六月婷婷操操操| 99热这里只有精品国产免费| 99热精品超碰| 专区无日本视频高清8| 色色色婷婷五月天| 79色色| 五月婷婷就去色| 99在线资源| 色综合久久无码| 欧美成人精品A片免费一区99| 991国产精选视频在线播放下载| 色狠狠图片| 五月激情五月丁香| 国产激情在线| 影音先锋五月天婷婷丁香在线观看| 人人摸人人干| 99精品久久久久久久婷婷| 丁香婷婷视频| 五月激情网络| 天天成人五月天| 激情五月丁香婷婷夜夜操| 激情图片婷婷| 99热大| 亚洲av另类在线观看| 97人人草| 久久五月丁香| 超碰97免费在线| 亚洲成人人人操| 亚洲综合狠狠艹| 婷婷六月丁香激情综合| 亚洲思思热久| 色综合综合色| 成人版视频在线观看| 97久久超级| 996黄色片| 91无码色色| 成人无码精品1区2区3区免费看| 亚洲精品视频在线播放| www.色婷婷| 97在线精品| 亚洲精品成人| 久久综合干| 91人人操人人| 亚洲综合1024| 婷婷天堂综合| 91丨九色丨国产打屁股| 综合色五月| 97精品综合久久| 色婷婷丁香| 99精品热| 深爱激情丁香| 深爱激情五月网| 五月丁香六月婷婷网| 五月天婷婷色综合| 五月婷婷婷| 99性视频| 欧美日韩精品人妻狠狠躁免费视频 | 久久久久久99精品无码| 1234操逼网| 成人在线日韩欧美| 久久婷婷内射| 五月丁香另类图片| 九九热在线观看6| 丁香色情五月综合激情| 色五月涩涩婷婷蜜桃| 青青草深爱激情网| 亚洲 小说 欧美 激情 另类| 日本成人小说婷婷六月| 丁香狠狠色婷婷久久无码视频| 在线观看中文字幕| 激情亭亭五月| 人人爱国产| 开心五月婷婷| 9|人妻人人操| 97电影99热| 色婷婷网| 激情五月六月婷婷综合啪啪| 五月丁香六月婷婷玖玖| WWW,五月| 五月婷婷与六月丁香图片激情| 久热9| 伊人综合网站| 精品婷婷丁香五| 五月婷婷婷| 人妻狠狠操| 五月丁香六月婷婷a v| 国产午夜精品久久久观看| 日日干日日| www.99在线| 久草免费福利视频| 在线你懂的亚洲欧| 高清激情av在线观看| www,av好吊操| 欧美97色| 1024操逼| 啪啪夜久久| 五月丁香激情片| 色五月亚洲开心网| www.黄色片-久久成人国产精品在线播放-999AV| 国产日比| 婷婷丁香无码专区| 4438激情网| 开心日韩丁香婷婷五月| 2025天天日爽| 五月丁香六月婷| se婷97| 18av天堂| www.五月.com| 日本99久久| www.com.色色| 99亚洲综合| 丁香六月婷婷五月婷婷| 九九热在线精品视频| 99视频在线观看视频| 五月网激情| 亚洲第一成人无码A片| 成人狠狠成人狠狠成人狠狠成人狠狠| 五月丁香六月综合激情无码软件亮点| 六月丁香啪啪啪| 丁香五月婷婷色综合| 亚韩在线视频| 婷激情五月| 狠狠干,狠狠操| 激情性爱网站| 99热精这里只有精品| 久热成人| 墨西哥毛片内射精| 欧美激情 日韩无码 婷婷 五月天| 五月天com| 51精品国自产在线| 97色婷| 五月激情六月综合| 97精品人人A片免费看| www.91在线观看| 色操b| 26uuu国产| 香蕉视频91| 九九热视频精品| 五月婷婷深深爱| 人妻九九九九| 99精彩视频| 人五月天婷婷喷水| 这里只有精品日韩精品| 操碰99| 婷婷色五月天色| 黄页大全十八禁| 99爱精品| 深爱婷婷基地| 免费观看亚洲AV片| 日本一级大片| 看国产探花操逼三级片| 丁香婷婷综合激情五月色| 97久久草草超级碰碰碰| 99综合| 去色色五月天| 五月开心激情网| 超碰成人黄色网| \\五月天婷婷激情| 五月天婷婷色色| 丁香婷婷人妻| 久久大香蕉| 色欲av伊人久久大香线蕉影院| 99色热视频在线| 色综合色综合色综合| 婷婷五月天六月| 涩丁香| 六月丁香综合网| 夫妇交换刺激做爰| 欧美综合激情五月丁香| 九九Av| 97色色色视屏| 色婷婷网| 婷丁五月| 亚洲成人免费在线| 欧美婷婷六月丁香综合色连续高潮抽搐| 九九色图| 婷婷无码视频| 狠狠做深爱婷婷久久综合一区| 久操人妻| 直接看的av| 亚洲网站在线鸭子av| 婷婷五月色| 五月丁香在线国产 | 五月夜丁香| 激情五月婷婷综合网| 亚洲成人黄色网|