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
返回資訊列表
婷婷色五月大香蕉在线观看| 思思热久久阴99| 亭亭五月丁香五月天激情| h亚洲| 91九色精品熟女内射| 激情综合无码| 操婷婷基地| 婷婷金品综合视频| 婷婷丁香五月婷婷| 日韩精品无码99| 色色色婷婷五月天| 99热在线观看99| www.久久久久| 婷婷大乡焦噜噜| 五月天婷婷在线啪啪视频| 色婷婷AV在线观看| 99原创自拍视频在线观看| 亚洲激情综| 婷婷色香六月综合激情| 人人爽在线视频综合网| 99精品热视频| 欧美啪啪9| 国自产拍偷拍精品啪啪一区二区| 久操热线| 这里只有精品视频免费在线观看| 欧美五月婷婷| 五月婷婷丁香| 久热免费视频| 天天爱天天做天天| 婷婷五月天电影网| 丁香五月激情五月| 99精品免费| 九九一综合精品| 亚洲成人免费在线| 色五月综合激情| 91久久九| 亚洲天堂碰碰婷婷| 国产婷婷五月| 91日韩美女被插视频| 亚洲精品久久久无码| 欧美六月| 狠狠干综合| 日韩aaa| 婷婷深爱五月亚洲综合| 六月香五月婷| 久色国产| 可以看的av网站| 99热6这里只有精品| 亚洲色综合性| 五月丁香六月婷婷姐| 欧美综合激情五月| 深爱激情丁香五月| 亚洲免费观看高清完整版AV线| 成人综合伍月天| 婷婷5月开心6月| 视频综合网| 性爱综合网| 成人网站免费在线播放| 五月天第四色开心色播| 丁香五月天综合网| 先锋资源婷婷| 婷婷五月天久久| 99毛片| 91九色熟女| 丁香六月久久| 色播五月| 亚洲V国产V欧美V久久久久久| 久久精品国产一区二区三区四区| 2018夜夜草| 色偷偷AV亚洲男人的天堂| 九九色色| 激情婷婷22月间| 久久一级片| 欧美成人日韩| 五月天激情小说婷婷| 俺也去婷婷五月天第五色| 天天骑日日爽| 久久久精品人妻录| 91热在线| 一级内射毛片| 91久操| 丁香五月精品视频| 一级操逼内射在线视频| 色五月在线观看| 午夜天堂啪啪| 在线观看亚洲视频影院| 色五月成人在线| 五月天婷婷影院影院观看| 伊人婷婷五月天| 五月天色丁香| 丁香六月成人网| 91肏| 99热日韩| 看片视频在线免费日产在线看| 色婷婷香蕉| 日韩五月婷婷久久| 97香蕉碰碰人妻国产欧美| 深爱婷婷基地| 久久色亭亭五月天| 色啦啦视频| 五月天基地| 婷婷久久综合久| 五月婷婷内射网| 五月婷婷丁香av| 五月丁香六月婷婷啪啪| 七月丁香五月婷婷在线| 丁香婷婷精品视频| 五月婷婷欧美| 久热亚洲| 日本色色色| 日本五月婷婷| 黄色成人网站在线播放| 99热激情| 五月婷婷伊| 大香蕉99热| 精品99爱免费视频在线观看| 色婷婷久久| 九色porny在线观看激情四射| 久久婷婷五月天激情新地址| 五月婷婷激情久久| 婷婷色色欧美| 激情亭亭五月| 玖玖热99| 久久久精品色色色| 欧美色必爱| 久热这里只有精品6| 五月丁香六月情婷婷久久| 日韩精品呦呦va| 狠狠做六月爱婷婷综合aⅴ| 婷婷激情综合| 亚洲精品性色| 伊人色综在线| 免费在线观看AV网站| 丁香五月激情网| 久久性爱网站| 四川BBB搡BBB搡多人乱亂| 色婷婷五月在线| 丁香久久| 99热在线观看99| 青青草视频福利| 久久99视频| 丁香五月天.com| 国内精品玖玖| 日韩av在线播放综合网| 在热视频精品| 国产免费一区二区三州老师F1……| 色婷婷五月天中文字幕| 大香蕉五月天婷婷| 五月色无码| 91精品综合久久久久久五月丁香| 久久婷婷视频| 天天日夜夜爽| 99成人网站| 激情五月天影院| 九九热99免费视频| AV中文在线| 丁香五月日韩| 色婷婷网| 日韩色色色色| 五月丁香婷婷色色色| www.五月.com| 亭亭色色五月天| 天天日天天色| 久久五月丁香婷婷| 天天干电影| 激情婷婷五月| 国产精品久久久久9999小说| 人妻丰满精品一区二区A片| 天天日天天久久青青| 精品人妻伦| 另类视频五月天| 99啪啪视频| 五月婷婷丁香综合| 激情播丁香| 无码人妻少妇色欲AV一区二区| 六月色日韩| 久久精彩视频| 99热精地址| 亚洲韩国日产综合AV| 色婷婷社区| 男人的天堂97| 综合网激情| 久久久久久xxxxx| 婷婷五月情| 久久综合激情| 99热在线观看亚洲区| 九月停停| 国产成人亚洲综合A∨婷婷| 久久婷婷五月国产激情综合片| 婷婷五月天色色| 欧美顶级少妇做爰HD| 亚洲操逼网| 婷婷丁香五月天之开心少妇| 亚洲色区17| 色色五月丁香| 亚洲中文字幕AV在线| 欧美草久久五月天91| 激情五月丁香婷婷夜夜操| 五月天狠狠网| 99人这里只有精品| 婷婷99狠狠躁天天躁中文| 97人人看| 毛片毛片毛片毛片| 久热只有这里有精品| 丁香五月之久操视频| www.minyis.com【JT】实力收量可预付QQ2101460746 | 久久九九热视频| 九色PORNY自拍成人精彩视频| 激情五月天影院| 99热777| 五月婷婷综合影院| 强辱丰满人妻HD中文字幕| 色丁香婷婷| 97碰| 激情久久婷婷| 狠狠干.com| 婷婷六月综合激情| 成人狠狠成人狠狠成人狠狠成人狠狠| 婷婷丁香花五月天| 色婷婷色久综| www.粉嫩av.com| 丁香五月 性爱| 色婷婷狠狠18禁| 99 这里只有精品| 亚洲一区二区无遮挡A片| 99∨VTV| 久久99网| 五月成人天| 婷婷在线观看五月天在线视频| 99热99| 久久人妻熟女一区二区| 成人丁香五月| 五月色婷| 熟女网站久久| 播五月,色五月,开心五月播放器| 婷婷五月天六点丁香五月| 婷婷色中文字幕| 91VIP在线观看| 强辱丰满人妻HD中文字幕| 99热这里只有精品1025| 国产44页| 男人天堂AV在线一区二区| 五月天婷婷基地| 玖玖色综合网| 久婷婷| rr天天操| 另类小说色婷婷| 婷婷五月天首页| 五月视频日本免费观看| 激情五月婷婷丁香六月| 99热在线观看免费中文| 婷婷五月色播网| 精品99视频| 婷婷六月天国产综合| 综合网五月| 成人片在线播放| 九九色图| 九色91国产| 天天日夜夜曹| 91色涩| 任你日视频| 香蕉五月婷婷| 亲子乱av一区二区三区的| 国产精品日本一区二区在线播放| 热日韩欧美| 九八Av| 蜜臀AV在线观看| 日本三级大片| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 日日爽日日操| 五月丁香婷婷啪啪综合网| 色色色精品无码区| 丁香五月天五码婷婷| 日本狠狠爽| 丁香五月婷婷亚洲色图| 五月婷婷色丁香| 色五月激情问网站| 色婷婷五月天天天干天天操天天爽 | 99热66| 天天综合色| 性爱久久| 99热有精品在线观看| www久视频com| 久久99精品日本| 91九色|疯狂|高潮|对白|| 亚洲激情av| 日韩成人精品中文字幕| 久久av电影| 婷婷丁香激情五月| 色噜噜狠狠色综合网| 一起草性爱不卡视频| 综合色播| 无语停婷丁香网| 丁香六月天婷婷| 婷婷五月天情色| 婷婷激情性爱| 五月婷婷综合色拍| 成人版视频在线观看| 婷婷伊人| 热99.com婷婷| 看黄的网站18禁| 激情五月婷婷在线区| 夜夜撸日日骑| 丁香色五月天| 精品九九网| 久久激情五月| 久色资源网| 婷婷五月天亚洲综合| 色婷婷网| 猫咪伊人久久| 色久综合天天做视频| 久久久无码精品成人A片小说| 激情综合网五月激情| 丁香六月在线综合| 六月婷婷五月丁香首页| 丁香五月成人| 精品少妇人妻AV无码专区偷人| 亚洲视频另类| 欧美va视频不用播放器的va视频网| 色五狠狠| 亚洲乱码日产精品BD| 九月久久婷婷| 激情婷婷网| 天天肏夜夜肏| 色色丁香色五月| 激情深爱综合| 九九热九九| 91/九色黑人| 97超碰综合| 五月色丁香激情| 亚洲婷婷五月天在线激情综合网| 欧美成人性爱网| 99热97| 加勒比久热| 疯狂做受XXXX高潮A片| 丁香五月激情欧美| 久久这里有精品视频| 五月丁香在线| 九九香蕉网| 丁香五月人妻| 色五月色五天色情网址| 色狠狠色狠狠| 国产成人精品一区二三区熟女在线| 亚洲婷婷久久综合| 五月天成人网在线观看| 久久婷婷老| 五月花综合网| 天天日综合| 夜夜爱伊人| 另类激情网| 欧美精品在线观看| 色亚洲婷婷| 丁香六月高清视频| 婷婷五月天AV| va中文资源在线观看| 日韩九区| 嫩模aV在线| 色婷婷五月在线| 婷婷丁香六月天| 人人色性网| 天天色播| 久久激情综合| 国产精品久久久久久久久久| 激情精品久久| 久久人妻熟女一区二区| 婷婷丁香一月| 琪琪色综合网站| 激情伊人六| 激情五月丁香五月| 99区视频| 香蕉影院色| 手机激情网| 亚洲亚洲人成综合网络| A色色| 五月丁久久| 三级大香蕉网| 91 久热| 久播影院免费观看电视剧大全最新网| 色色色五月| www,婷婷| 91狠狠综合网| 激情五月婷婷| 久久人妻高清中文| 99人妻碰碰碰久久久久视| 亭亭五月丁香五月天激情| 人人干人人操外国| 久久久网站| 国产免费一区二区在线A片视频| 丁香五月天堂| 五月婷婷之六月丁香| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 久久久WWW| 色婷婷婷婷| 五月丁香啪啪| 丁香五月伊人| 亚洲免费99| 色五月婷色彩免播放器| 九九99精品免费播放| 欧美爆乳一区二区三区| 午夜成人AV在线| 五月丁香婷婷成人网| 另类色视频| 岛国在线观看91| 婷婷色五月综合| 亚洲色色五月天| 色中色综合| 欧美猛片| 91avse| 五月天开心网| 丁香六月天| 丁香五月婷婷深爱综合激情| 丝袜熟女一区二区三区| 婷婷六月丁香五月| 这里只有精品视频免费在线观看| 日本激情ⅩXX免费视频| 中文字幕五月久久婷婷| 九九无码| 亚洲成人在线免费| 成人 在线观看国产| 婷婷激情六月| 2020夜夜操天天爽| 另类小说五月天| 色五月丁香五| 性综合网| 激情爱爱网站超大免费| 一本伊人色婷| 亚洲人人96@| 9伊人网| 免费看欧美成人A片无码| 国产成人99久久亚洲综合精品| 91viP在线看| 蜜臀av 粉嫩av 懂色av| 免费看欧美成人A片无码| 婷婷射丁香| 亚洲激情高潮| 一级片sese片.COM| 大香蕉久久草| www久久久久| 久久精品99国产精品日本| 99色在线| 99这里只有精品|v| 色五月丁香六月婷婷| AV九九| 午夜婷婷久久| 中文字幕天天干| 爱久久小说下载网| 国产乱妇无乱码大黄AA片| 五月婷婷激情| 九月综合| 五月婷婷,狠狠操| 丁香五月婷婷天激情| www超碰| www激情网站| 亚洲激情四射色| www.色婷婷.com| 色婷婷A| 久久这里只有精品8| 激情黄色五月天| 婷婷97狠狠干| 香蕉婷婷色五月| 久久五月丁香| 五月天无码| 久久人操| site:pzdcoin.com| 99r这里只有精品哦| 亚洲网视屏| 久99热在线观看| 五月天婷婷狠狠| 99caobi| 黄色短视频在线观看| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 激情爱爱网站| 99精品热视频| 色婷婷五月开心六月综合| 99啪| 99热精在线九九久久保| 开心五激情网| 99精品在线下载| 国产一级婬片毛片| 激情伊人五月天| 国产性爱亚洲是图| 久久久性爱视频| 久久久无码精品成人A片小说| www.操.com| 可以看的av| 99视频网址| 久热综合| 一点色成人网| 综合另类激情| 991国产精选视频在线播放下载| 99狠狠| 丁香五月情色| 五月丁香AV在线| 激情五月少妇| 最新av在线观看| 99色视| 色婷五月天亚洲| 色婷婷色情| 播五月丁香六月| 亚洲综合五月天婷婷| 五月丁香五月婷婷| 99热只有| 情色五月天 网站| 五月婷婷综合影院| 99视频久久免费视频| site:publishdd.com| 色欲一二三| 99超级碰免费视频| 97超碰,人人舔,人人操,人人摸 | 久综合| 人妻狠狠操| www,五月丁,com| 深爱激情五月网| 五月天丁香网| 亚州男人天堂婷婷五月| 丁香花色色网| 亚洲AV成人无码久久精品老人法拉利| 另类视频综合| 久久丁香婷婷色情综合| 99色激| 六月丁香影院| 色五月 五月婷婷| 日韩aⅴ视频| 色婷婷成人网| 国产VA亚洲VA96| 五月婷婷成人| 婷婷五月综合啪| 日韩无码一区二区三区四区| 丁XX 成人| 熟女人妻一区二区三区免费看| 久色88| 日本黄色三级片内射| 丁香九月综合在线| 五月伊人视频在线看| 一起草无码| 免费三级黄色| 婷婷色女| 色色免费网站| 1囯产午夜仑鲁鲁| 99在线观看视频精品| 婷婷五月天亚洲| 欧美性爱五月天| 激情九月天天天天婷婷| 色色色色色网站| 国产超碰在线| 色婷婷丁香五月| 青草五月天| 99精品丁香五月| 成人五月天在线观看| www.97碰碰com| 无码AV大香线蕉伊人| 亚洲丁香婷婷五月天综合色| 日韩成人网址| 91免费看片| 欧美啄木乌丝袜人妻系列| 天天爽天天爽| 五月天婷婷黄色视频| 内射综合网| 激情久久月| 五月婷婷亞洲中文| 啪啪日热| 五月天色婷婷基地| 无码碰碰| 久久这里只有精品1| 99国产精品久久久久久久久久久 | www.99热. com这里只有精品| 婷婷五月天丁香| 日本三级大片| 丁香五月成人网| 天堂A∨在线| 久久婷狠狠色| 亚洲综合久| 91AV婷婷| 开心五月丁香啪| 五月婷婷综合潮喷| 亚洲欧美成人在线| www色综合亚洲92| 天堂草在线观| 免费色婷婷| 久久人妻情侣| 亚洲无码影音| 久久99性爱| 青青色com久久| 亭亭五月色男人| 色色图五月天| 开心婷婷五月| 97精品在线| 婷婷五月天黄色| 国产激情视频在线观看| 五月婷婷五月天| 日日噜噜久久婷婷五月天| 色五月激情五月| 色大综合| 色九月综合网| 国产 亚洲 在线| 婷婷丁香五月综合| 国产亚洲成AV人片在线观黄桃| 六月婷婷私欲| 亚洲视频1区| 国产avapp 网| 日本色婷婷综合| 日韩性爱AV| 婷婷色丁香六月| 无码髙清| 婷婷五月色| 九九热短视频在线观看| 国产一区18| 色色激情| 婷婷色色网| 国产44页| 性爱久久| 思思热久热| www.超碰在线| 99视频免费播放| 97精品自拍视频| 一起草av| 国产99久9在线+|+传媒| 九九热精品| site:feetmall.com| 激情六月天婷婷| 开心婷婷五月| 久久综合五月天| 色五月丁香五月五月婷婷| 色婷婷很很十八禁| 大香蕉人妻| 激情五月天婷婷视频| 色九亚洲| 97日本操| 九九色逼| 91久久精品无码一区二区三区| 九九视频这里只有精品在线播放| 国产永久一黄| 嫩草AV久久伊人妇女超级A| 99视频激情四射| 色网站99| 97碰碰视频在线观看免费| 成人在线观看精品| 青青草成人网| 蜜桃人妻无码AV天堂三区| 婷婷在线五月天观看| 五月香蕉婷婷| 丁J香六月首页| 婷婷五月天av| 99九九在线观看免费| 99久久综合精品五月天| 五月丁香在线观看| 五月丁香免费看| www.日日日.com| 久草天堂| www.五月婷婷.com| 激情久久综合网| 淫五月停停| 婷婷六月色| 日本欧美成人片AAAA| 丁香五月丁香伊人| 亚洲激情 久久| 丁香六月啪| 伊人婷婷五月天av| 九九热青青草| 91人人妻人人操人人爽| 欧美 色婷婷| 中字幕视频在线永久在线观看免费| 殴美激情综合网| 亚洲国产99| 狠色色狠网| 色婷婷五月天堂资源| 99热国产国产| 噜噜综合网| 热九九在线| 日韩欧美颜射| 亚洲精品亚洲人成人网| 97婷婷色| 亚洲Va成人| 婷婷色五月激情| 日韩成人中文字幕| 久久色情| 成人天天爽| 久久草人妻| WWW·天天操·视频?| 日日爱678| AV伊人青草丁香六月| 久久三级视频| 色五月婷婷天天干| 色五月天天| 99久久综合网| 日日日影院| 99热这里只有精品搜| 激情婷婷五月天日本系列| 亚洲色亚洲精品| 五月丁香无码视频| 天天婷婷综合亚洲亚洲| 婷婷五月色惰| 激情综合婷婷| 另类小说五月天| 影音先锋高清无码资源网| 五月天丁香啪啪网| 99人妻碰碰碰久久久久| 九九色色网| 婷婷五月天成人五月天| 热久久66| www.minyis.com【JT】实力收量可预付QQ2101460746 | 婷婷亚洲五月色综合| 久久婷婷五月综合色丁香| 亚洲视频图片婷婷五月| 91碰碰视频| 亚洲色五月婷婷| 国产欧美日韩综合精品一区二区| 99爱在线| 久热中文字幕| 丁香色播五月天| 五月婷婷啪| 欧美影院婷婷| 爽tv | 五月婷免费视频| 欧美色图天堂网| 丁香五月骚喷水视频| 怡红院视频| av九九| 91 影音先锋| 六月婷色| 97干婷婷五月天| 狠狠色噜噜狠狠狠狠综合| 99热精品在线| 婷婷丁香色女人| 日韩久热| 日韩精品无码99| 欧美日朝成人| 人妻在线观看视频| 天天爽在线视频| 热99热9| 另类图片色五月| 色欧美一级| 久久久宗合| 久久婷婷五月天激情| 激情五月天综合网| 亚洲午夜成人av电影网| 91婷婷在线| 色天天综合| 日本丁香五月| 久久亚洲天堂| 只有久久精品免费| 99热这里只有精品中文字幕| 久久久九九九 99| 99在线观看视频精品| 久久这里只有精品99| 色偷偷AV亚洲男人的天堂| 色噜噜五月天| 99热99色| 国产精品第一国产精品| 大香蕉伊人99| 成人色五婷婷| 激情综合网激情五月婷婷| 亚洲国产成人综合| 亚洲国产精品VA在线看黑人| 日韩性爱AV| 色,激情五月天| 天堂综合久久 | 五月天激情网站| 五月丁香六月成人| 欧美α√| 综合在线观看99| mmm1717.6dbm人人爱人人操| 国产激情视频在线观看| av无码电影| 五月天六月婷| 色99久草在线| 操逼123网| 五月综合色| 日韩啪啪视频| 97操在线视频| 人妻精品在线| 国产精品日日躁夜夜躁| 丁香五月天婷婷91| 婷香五月激情视频| www.激情五月天.com| 色五月婷婷婷婷| 嫩草AV久久伊人妇女超级A| 久鲁鲁色网| 26uuu成人网| 婷婷开心深爱五月天| 99热最新网址| 色婷丁香| 丁香婷婷深情五月亚洲| 久热伊人| 五月色综合| 丁香五月图片| 亚洲成av人影院| 深爱激情四射| 99色爱| 99re热视频| 九月丁香网婷婷| 99久久免费精品| 99re视频在线精品| 婷婷狠狠干| 婷婷色五月天色| www.色婷婷.com| 热99精品视频| 激情小说五月天| 人妻狠狠操| 99在线精品免费视频| 天天爽人人爽| 在线观看视频1区| 26UUU欧美| 久一网站| 五月天.com| 五月婷婷六月丁香激情综合网| 噼里啪啦在线观看免费完整版视频| 五月天激情在线视频| 91九色最新视频| 综合久久六月| 碰97久久| 五月天激情小说| 亚洲男人的天堂婷婷色五月| 色99xx| 999激情视频| 久热只有这里有精品| 99热国品| 婷婷天天婷婷天天澡| 婷婷操久久| 99天堂网| 99热6色| 色香蕉影院| 疯狂做受XXXX高潮A片| 99视频这里有精品免费观看| 国产精品视频免费看| 99热| 丁香婷婷激情网站| 六月丁香啪啪啪| 四虎国产精品永久在线国在线| 婷婷五月天黄色小说| 丁香五月网址| 亚洲亚洲人成综合网络| 99色在线视频| 久热2025无码| 久久女人九九| 五月天婷婷小说| 婷婷五月精品中文字幕| 最新色色五月天| 人妻无码视频网| 亚洲色夜| 丁香花五月天| 婷婷97碰碰| 中文字幕无码AV| 激情综合网五月丁香| 日韩按摩二区| 综合AV在线| 久久久91精品| 亚洲色99| 丁香婷婷激情五月天无毒不卡蜜桃| 日本女天天爽| 亚洲人妻电影| 综合久久激情久久| 九九热精品视频| 天天干天天操天天拍| 五月天婷五月天综合网在线观| 婷婷九色| 色综色网| 国产精品电影| 婷婷五月激情网| 99在线精品视频免费观看20| 99成人网站| 五月丁香无码| 国产永久一黄| 五月丁香亭亭电影久久| 婷婷亚洲综合| 五月天丁香综合| 99免费在线| 97婷婷丁香五月| 怡红院 久久| 五月亭亭欧美女人| 91聚色综合网| 风流少妇A片一区二区蜜桃| 五月丁香啪啪| 97资源欧美日韩大香蕉超碰一区| 婷婷五月激情五月激情| 天天爱天天做天天爽| 五月天婷婷黄色视频| 肏屄色播伊人97婷婷| 一起操 91N.com| 伊人久久丁香狠狠婷婷综合香蕉 | 欧美槡BBBB槡BBB少妇| 99视频只有精品| 激情九月综合| 婷婷97碰碰| 久久精彩视频| 五月婷婷天天| 天天天天天日| 激情五月婷婷丁香综合网| 丁香五月天激情小说| 久久婷婷五月草视频在线播放| 噜噜噜狠狠色综合| a在线观看| 日韩啪啪视频| 久久99网站| 亚洲啪啪啪啪| 丁香五月电影| 九九热色视频| www.25五月婷婷| 亚洲五月天综合色| 五月婷婷亚洲天堂激情在线| 成人va在线观看视频| 亚洲网站在线鸭子av| 久久九九视频网站| 久久久久久天天日天天爱| 六月丁香激情综合网| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 日本WWW九九九| 欧美VA视频| 色情开心五月| 久久五月天色婷婷| 久久久99视频| www.粉嫩av.com| 青青操绿aaa一区日v| 亚洲视频色色| 久香草视频在线观看| 亚洲第一视频 久久| 丁香五月激情五月开心五月| 久久狠狠干| 色婷另类| 激情五月综合| 国产毛片精品一区二区色欲黄A片| 婷婷丁香日韩五月| 99热www| 9有码中文| 5月激情天| 久久婷婷色丁香| 久狠日av| 99久久99久久| 狠狠爱综合| 色色色色色色综合网| 热久久婷婷| 人人妻人人澡| 天天舔天天摸天天射| 婷婷丁香综合成人| 久久久婷婷五月亚洲97号色| 亚洲情欲| 九九综合九| 婷婷终合色图| 大功率国产在线| 深爱激情久久| 天天综合精品| 久热免费视频| 99草在线免费观看视频| 99热爱爱干干日| 五月综亚洲| 欧美Va婷色| 五月丁香婷婷综合| 一区操| www.色五月| 久色国产| 超碰在线人妻| 日本性视频| 亚州色婷婷| 99.色| 久久久WWW| 色99综合色88| 五月丁香啪啪啪综合网| 久久99这里只有精品视频| 久久五月婷婷丁香| 国产美女无遮挡裸体毛片A片 | 综合久| 婷婷开心六月| 日日天天干| 狠狠色婷婷丁香五月| 无码四色色色| 无套内射极品大美女| 婷婷五月天激情网| 日韩国产在线免费观看| 五月丁香好婷婷A片网| 婷婷六月激情| 爱操天堂| 另类的婷婷| www.五月丁香| 伊人丁香五月天丁香在线婷| 99ri精品| 丁香婷婷情色五月天| 97caop| 欧美黑人大吊| 日日夜夜天天| 岛国AAAV| 青青操绿aaa一区日v| 久99久热| www九月婷婷| www.夜夜夜| 色色色免费视频| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 婷婷婷婷婷婷婷五月丁香| 欧美电影在线播放| 91久久久久久久| 九九色热| 秋霞九九无码| 婷婷成人丁香色情基地30 | 色婷婷888| 亚洲AV另类| 99思思热只有在这里看| 亚洲精品又粗又大又爽A片| 9久视频| 超碰色综合| 久久婷婷激情四射五月天| 狠狠干伊人| 97色婷婷| 色五月久久成人婷婷| www.夜夜操.com| www.五月婷婷| 亚洲综合视频在线| 色五月婷婷综合在线| 久久久精品人妻| 夜夜AVV| 这里只有精品视频99| avh片在线观看| 日日夜夜噜噜爽爽| 中文字幕无码人妻少妇免费视频| 99热精品10| 涩五月婷婷| 热热久久精品视频| av大香蕉| 五月人人丁香婷婷五月人人丁香 | 色婷婷综合久久| 夜夜操狠狠操天天操| 91 九色大美女| 五月婷婷久久内射| 色色五月婷婷狠狠| 婷婷五月天论坛| 免费91久久精品| 成人精品99| 丁香花五月天社区| 天天摸天天舔| 91打屁股视频网站| 亚洲另类婷婷综合| 开心五月激情网| 色五月AV| 五月丁香六月婷婷不卡免费无码 | 亚洲色图啪啪| 99热这里只有精品8| 国产精品丝| 99日本精品视频热| 成人va在线观看视频| 色五月激情五月| 99热这里只有精品最新| 成年视频免费观看| 97碰久久| 99久热这里有精品| 91夫妻网站九色| 岛国AV网| 色色五月婷婷久久| 99热97| 婷婷开心综合人妻小说网址| 激情国产五月| 天天色视频| 色丁香五月婷婷| 天天爽天天操| 婷婷五月天成人网站| 麻豆雪千夏| 中文字幕在线免费观看视频| 夜夜操狠狠操天天操| 九伊人网| 九九这里只有精品| 五月亭亭综合五码| 午夜九九九九九九九九九九九九九| 深爱五月激情| 五月婷婷啪啪网| 中文字幕,综合,91| 五月天色综合| 婷婷香五月天| 婷婷五月激情四月综合| 精品日本视频444| 国产激情在线| 天天草婷婷五月| 五月激情综合性爱| 久久精彩免费视频| 人。妻久久| 五月丁香婷婷在线综合蜜桃| 久久久.www| www色五月| 可以直接看的AV| 最新热中文字幕| 久久99免费视屏| 九九热精品在线| 色五婷婷开心缴| 婷婷五六月丁香| 青青草99热久久精品国| 91五月天| 26uuu欧美| 丁香五月婷婷激情123| 99九九99九九九视频精彩| 1024操逼| 久久香蕉网| 激情www| 五月亚洲激情| 色色色在线| 久久免费高| 操99| 大香蕉网站,大香蕉综合| 色五月激情基地| 99久久久久| 久碰久| 午夜天天精品视频| 九九这里都是精品| 五月婷婷视频| 五月香六月婷| 精品久久人妻热| 九色自拍| 久久精品99久久久久久久久| 丰满少妇乱A片无码| 欧美在线视频99| 蜜臀99精品| 中文字幕婷婷五月天在线观看| 日日操夜夜爽白洁| 国产97色在线| 九色porny在线观看激情四射| 久久精品A片777777| 婷婷基地爱| 狠狠色狠狠| 激情六月婷婷| 国产精品热搜丁香五月婷婷| 五月激情网五月综合网| 激情婷婷五月天| 国产成人在线精品| 99热加勒比| 99caobi| 久久丁香婷婷色情综合| 三级av在线| 国产SUV精品一区二区6| 99只有精品| 一起草av| 国产亚洲在线观看| 色五月婷婷av| 五月天伊人综合| 在线视频激情网站| 久久精彩免费视频| 这里只有精品免费| 五月丁香六月激情欧美综合| 五月 婷婷 成人| 国精产品一区二区三区| 色五月婷婷五月久久| 婷婷六月丁香激情综合| 色亚洲视频| 热热久久精品视频| 婷婷色五月综合丁香| 激情五月天婷婷久久久久久久久久久| 丁香五月久久| 狠狠舔| 六月丁香啪| 激情开心五月婷婷| 五月婷婷熟女| 色婷婷色情| 99热这里只有精品一区| 五月丁香婷婷三级| 岛国AV网站| 天天干夜晚夜操| 激情人妻综合| 激情久久五月天| 久久99热这里只有精品| 亚洲激情另类| 日韩精品AV一区二区三区| 激情文学综合婷婷五月天丁香花| 国产一二区爆乳_1国产日韩一区二区三-成人AV | 婷婷综合五月| 天天日,天天射,天天插| 亚州精品色情在线观看| 五月婷婷色丁香| 热这里| 久久精品只有这| 激情九色| 99在线观看| 开心激情站| 9热在线| 婷婷中文网站| 妇激情基地| 五月天婷婷激情小说| 久久这里只有精品1| 亚洲天天操| 99久久99九九九99九他书对| 色婷婷丁香五月天| 三日本无码| 91久久五月天| 色婷婷婷av| 国产精品激情五月天色婷婷| 欧美精品18| 婷婷六月天| 欧美日韩国产一二区| 手机在线日韩视频中文字幕| 丁香综合伊人| 五月丁香六月婷婷亚洲综合| 啪啪 综合网| 丁香五月激情五月| 婷婷五月天性爱视频| 婷婷色中文字幕| 天天综合亚洲综合| 亚洲视频操| 少妇被下春药玩弄A片| 69精品人妻不卡视频| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 久久丁香五月婷婷激情综合网| a久久免费视频| 91婷婷| 丁香婷婷五月综合欧美另类| 中文资源在线a| 婷婷中文字幕版| 婷婷五月综合网| 99热 精品在线| 影视av久久久噜噜噜噜噜三级| 狠狠擼综合| 婷婷五月综合网| 色五月亚洲| 五月丁香婷婷综合| 午夜做爱影院| 六月丁香久久| 激情久久婷婷| 综合在线丁香五月| 97久久精品| a级毛片一区二区免费视频| 九九伊人网| 色丁香五月| 性做爰1一7伦| 97干视频| 欧美VA在线| 无码人妻少妇色欲AV一区二区| 超碰在线超碰| 天天夜夜操| 九月色婷婷| 久99久精品视频| 婷婷五月天激情综合深爱激情| 天天玩夜夜操| 婷婷精品综合| 丁香五月激情鲁| 精品无码久久久久久久久| 成人免费在线电影| 国产一二三四五六七八视频| 色色五月婷| 日韩不卡DvD| 色五月欧美| 琪琪色网址| 天天插轮理| 操人91| 色婷婷综合视频| 五月天丁香成人| 99热99思午夜精品| 久噜久噜| 国产精品扒开腿做爽爽爽A片唱戏| 婷婷综合五月| 99久久www| 超碰在线观看成人视| 久热视频这里只有精品| 日本色色影片| 色五月在线| 五月婷婷丁香六月| 日韩999| 新97人人上人人| 国产免费一区二区三区三州老师F1F1.CC| 六月丁香色婷婷| 玖玖婷婷免费| 五月婷婷无码专区| caop视频| 丁香伊人激情| 大地9中文在线观看免费高清 | 呦呦AV| 国产成人精品亚洲线观看| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 婷婷色色欧美| 丁香亭亭激情四射| 99热这里只有精品一区| 我淫我色婷婷五月天激情四射| 99爱视频在线免费观看| 亚洲网综合在线| 99热视精品|