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

ARTICLE DETAIL

資訊詳情

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

藍(lán)橋杯國(guó)賽單片機(jī)系統(tǒng)設(shè)計(jì):從模塊驅(qū)動(dòng)到多任務(wù)整合的實(shí)戰(zhàn)解析

藍(lán)橋杯國(guó)賽單片機(jī)系統(tǒng)設(shè)計(jì):從模塊驅(qū)動(dòng)到多任務(wù)整合的實(shí)戰(zhàn)解析 1. 項(xiàng)目概述從“功能解析”到“解題思維”的跨越拿到“藍(lán)橋杯單片機(jī)第十屆國(guó)賽 部分功能解析”這個(gè)標(biāo)題很多參加過(guò)或正在備賽的同學(xué)第一反應(yīng)可能是這又是一篇講某個(gè)具體模塊比如ADC、PWM、I2C怎么調(diào)通的代碼分析。但如果你真這么想可能就錯(cuò)過(guò)了國(guó)賽題目最核心的價(jià)值。我參加過(guò)多次藍(lán)橋杯的評(píng)審和指導(dǎo)工作深知國(guó)賽級(jí)別的題目其難點(diǎn)從來(lái)不是某個(gè)孤立的芯片驅(qū)動(dòng)或函數(shù)編寫而在于如何在有限的資源時(shí)間、單片機(jī)性能、外設(shè)和復(fù)雜的多任務(wù)需求下進(jìn)行系統(tǒng)性的設(shè)計(jì)與整合。第十屆國(guó)賽的題目正是這種綜合能力的集中體現(xiàn)。簡(jiǎn)單來(lái)說(shuō)它考察的不僅僅是“你會(huì)不會(huì)用某個(gè)外設(shè)”更是“你能否在多個(gè)外設(shè)同時(shí)工作、相互干擾的復(fù)雜場(chǎng)景下讓整個(gè)系統(tǒng)穩(wěn)定、高效、準(zhǔn)確地運(yùn)行”。這就像讓你一個(gè)人同時(shí)操作多個(gè)儀器完成一個(gè)實(shí)驗(yàn)不僅要懂每個(gè)儀器的操作還要懂得統(tǒng)籌安排避免操作沖突。因此這篇解析不會(huì)停留在“這里調(diào)個(gè)延時(shí)那里改個(gè)參數(shù)”的層面而是試圖帶你復(fù)盤當(dāng)時(shí)的解題思路、架構(gòu)設(shè)計(jì)以及那些容易踩坑的細(xì)節(jié)。無(wú)論你是即將參賽的選手還是希望提升單片機(jī)系統(tǒng)設(shè)計(jì)能力的開發(fā)者相信這些從實(shí)戰(zhàn)中沉淀下來(lái)的經(jīng)驗(yàn)都比單純的代碼更有價(jià)值。2. 賽題核心需求與系統(tǒng)架構(gòu)拆解要解析功能必須先理解題目到底要求我們構(gòu)建一個(gè)什么樣的系統(tǒng)。第十屆國(guó)賽題目通常是一個(gè)模擬現(xiàn)實(shí)場(chǎng)景的綜合性項(xiàng)目例如“智能測(cè)量裝置”、“多功能控制終端”等。它不會(huì)直接說(shuō)“請(qǐng)你用ADC測(cè)電壓”而是會(huì)描述一個(gè)場(chǎng)景其中隱含了多個(gè)需要實(shí)現(xiàn)的功能點(diǎn)。2.1 典型國(guó)賽題目特征分析根據(jù)歷屆賽題規(guī)律第十屆國(guó)賽題目很可能具備以下特征這些特征直接決定了我們的設(shè)計(jì)思路外設(shè)集成度高題目通常會(huì)指定使用競(jìng)賽板上的核心外設(shè)如LCD12864液晶屏、矩陣鍵盤、EEPROMAT24C02、ADCPCF8591、溫度傳感器DS18B20、NE555頻率測(cè)量、超聲波測(cè)距模塊等。國(guó)賽題目往往會(huì)要求同時(shí)使用其中5-6個(gè)甚至更多。多任務(wù)并行系統(tǒng)需要同時(shí)處理多個(gè)任務(wù)。例如需要實(shí)時(shí)刷新液晶屏顯示包含多個(gè)頁(yè)面或復(fù)雜界面同時(shí)不間斷地采集傳感器數(shù)據(jù)溫度、電壓還要響應(yīng)鍵盤輸入進(jìn)行模式切換或參數(shù)設(shè)置并且可能要求將關(guān)鍵數(shù)據(jù)定時(shí)存儲(chǔ)到EEPROM中。狀態(tài)機(jī)驅(qū)動(dòng)由于任務(wù)繁多一個(gè)簡(jiǎn)單粗暴的while(1)超級(jí)循環(huán)里堆滿所有函數(shù)調(diào)用必然會(huì)導(dǎo)致系統(tǒng)響應(yīng)遲鈍、顯示卡頓。因此引入基于時(shí)間片或事件驅(qū)動(dòng)的狀態(tài)機(jī)是必須的架構(gòu)選擇。精度與穩(wěn)定性要求國(guó)賽題目會(huì)對(duì)測(cè)量精度、控制響應(yīng)速度有明確要求。例如溫度測(cè)量精度要求到0.1℃電壓測(cè)量誤差小于1%這就對(duì)ADC的校準(zhǔn)、軟件濾波算法提出了挑戰(zhàn)。人機(jī)交互復(fù)雜不再是簡(jiǎn)單的幾個(gè)獨(dú)立按鍵。矩陣鍵盤需要實(shí)現(xiàn)長(zhǎng)短按、連按、組合鍵等功能液晶屏需要設(shè)計(jì)多級(jí)菜單包括數(shù)值設(shè)置、狀態(tài)查看、歷史記錄查詢等界面。2.2 系統(tǒng)頂層設(shè)計(jì)思路面對(duì)這樣的需求一個(gè)穩(wěn)健的系統(tǒng)架構(gòu)是成功的一半。我的設(shè)計(jì)思路通常遵循以下原則分層與模塊化將硬件驅(qū)動(dòng)層如LCD驅(qū)動(dòng)、鍵盤掃描、業(yè)務(wù)邏輯層如數(shù)據(jù)處理、狀態(tài)判斷、應(yīng)用層如主狀態(tài)機(jī)、菜單管理嚴(yán)格分離。每個(gè)模塊.c和.h文件只負(fù)責(zé)一項(xiàng)明確的功能通過(guò)清晰的接口進(jìn)行通信。時(shí)間片輪詢法這是在沒(méi)有RTOS的情況下實(shí)現(xiàn)多任務(wù)“偽并行”最有效的方法。利用一個(gè)定時(shí)器如Timer0產(chǎn)生固定的時(shí)間基準(zhǔn)例如1ms或5ms在這個(gè)中斷服務(wù)程序中設(shè)置一系列的標(biāo)志位flag。在主循環(huán)中通過(guò)檢查這些標(biāo)志位來(lái)執(zhí)行對(duì)應(yīng)的任務(wù)函數(shù)。// 示例定時(shí)器中斷中設(shè)置標(biāo)志位 void Timer0_ISR() interrupt 1 { static unsigned int tCount 0; TH0 ...; TL0 ...; // 重裝初值 tCount; if(tCount % 2 0) flag_2ms 1; // 2ms任務(wù)標(biāo)志 if(tCount % 10 0) flag_10ms 1; // 10ms任務(wù)標(biāo)志用于鍵盤掃描 if(tCount % 50 0) flag_50ms 1; // 50ms任務(wù)標(biāo)志用于傳感器采集 if(tCount % 200 0) flag_200ms 1; // 200ms任務(wù)標(biāo)志用于顯示刷新 if(tCount 1000) tCount 0; }狀態(tài)機(jī)清晰明確將整個(gè)系統(tǒng)的工作流程劃分為幾個(gè)明確的狀態(tài)如IDLE待機(jī)、MEASURING測(cè)量、SETTING參數(shù)設(shè)置、VIEW_LOG查看記錄等。任何鍵盤事件或定時(shí)事件都作為狀態(tài)遷移的觸發(fā)條件。注意很多新手會(huì)忽視架構(gòu)設(shè)計(jì)直接開始寫代碼導(dǎo)致后期添加功能時(shí)牽一發(fā)而動(dòng)全身調(diào)試極其困難。在動(dòng)筆寫第一行驅(qū)動(dòng)代碼之前花10分鐘在紙上畫一下系統(tǒng)模塊圖、狀態(tài)轉(zhuǎn)換圖和任務(wù)時(shí)間分配能節(jié)省后面數(shù)小時(shí)的調(diào)試時(shí)間。3. 關(guān)鍵外設(shè)功能深度解析與避坑指南接下來(lái)我們針對(duì)國(guó)賽中最常考、也最容易出問(wèn)題的幾個(gè)外設(shè)模塊進(jìn)行深度解析。這里不僅講“怎么做”更重點(diǎn)講“為什么這么做”以及“哪里容易出錯(cuò)”。3.1 矩陣鍵盤掃描與高級(jí)功能實(shí)現(xiàn)國(guó)賽的鍵盤輸入絕非簡(jiǎn)單的getKey()返回一個(gè)鍵值。它要求實(shí)現(xiàn)短按、長(zhǎng)按、連按甚至組合鍵功能。核心掃描邏輯采用“行列反轉(zhuǎn)法”或“逐行掃描法”配合軟件消抖是基礎(chǔ)。關(guān)鍵在于掃描周期10-20ms為宜和狀態(tài)記錄。高級(jí)功能實(shí)現(xiàn)思路長(zhǎng)短按判斷為每個(gè)按鍵設(shè)置一個(gè)“按下計(jì)時(shí)器”。在鍵盤掃描任務(wù)10ms一次中如果檢測(cè)到按鍵按下其計(jì)時(shí)器累加。當(dāng)計(jì)時(shí)器達(dá)到“長(zhǎng)按閾值”如計(jì)數(shù)值50對(duì)應(yīng)500ms時(shí)觸發(fā)長(zhǎng)按事件并重置計(jì)時(shí)器以避免重復(fù)觸發(fā)。在按鍵釋放時(shí)檢查計(jì)時(shí)器如果小于長(zhǎng)按閾值但大于消抖時(shí)間如計(jì)數(shù)值2對(duì)應(yīng)20ms則觸發(fā)短按事件。連按功能在判斷為長(zhǎng)按觸發(fā)后不重置計(jì)時(shí)器而是讓其繼續(xù)累加。每當(dāng)計(jì)時(shí)器超過(guò)一個(gè)“連按間隔”如計(jì)數(shù)值再增加20對(duì)應(yīng)200ms時(shí)就觸發(fā)一次連按事件。這可以實(shí)現(xiàn)按住按鍵持續(xù)增加或減少數(shù)值的效果。狀態(tài)機(jī)模型每個(gè)按鍵可以看作一個(gè)獨(dú)立的狀態(tài)機(jī)狀態(tài)包括KEY_IDLE空閑、KEY_DEBOUNCE消抖中、KEY_PRESSED已按下、KEY_LONG_PRESSED長(zhǎng)按已觸發(fā)、KEY_REPEAT連按中、KEY_RELEASE釋放。// 按鍵數(shù)據(jù)結(jié)構(gòu)示例 typedef struct { unsigned char id; // 鍵值 unsigned char state; // 當(dāng)前狀態(tài) unsigned int holdTime; // 按下保持時(shí)間以掃描周期為單位 unsigned int repeatCnt; // 連按計(jì)數(shù) } Key_T; // 在10ms任務(wù)中調(diào)用此函數(shù)處理所有按鍵 void Key_Process(void) { unsigned char keyVal Key_Scan(); // 獲取當(dāng)前物理鍵值 for(int i0; iKEY_NUM; i) { switch(key[i].state) { case KEY_IDLE: if(keyVal key[i].id) key[i].state KEY_DEBOUNCE; break; case KEY_DEBOUNCE: if(keyVal key[i].id) { key[i].holdTime; if(key[i].holdTime DEBOUNCE_TICKS) { key[i].state KEY_PRESSED; key[i].holdTime 0; // 觸發(fā)短按按下事件可設(shè)置標(biāo)志位 } } else { key[i].state KEY_IDLE; key[i].holdTime 0; } break; case KEY_PRESSED: // ... 長(zhǎng)按和連按判斷邏輯 break; // ... 其他狀態(tài)處理 } } }避坑指南中斷沖突切勿在外部中斷或定時(shí)器中斷服務(wù)程序中進(jìn)行復(fù)雜的鍵盤掃描或延時(shí)消抖這會(huì)阻塞系統(tǒng)。鍵盤掃描必須放在主循環(huán)或低優(yōu)先級(jí)定時(shí)任務(wù)中。資源占用上述狀態(tài)機(jī)方法雖然清晰但會(huì)占用較多RAM。如果資源緊張可以采用更緊湊的“位域”或“查表法”來(lái)記錄按鍵狀態(tài)。連加速度連按的間隔時(shí)間要設(shè)置合理太快用戶難以控制太慢影響操作效率。通常首次連按間隔稍長(zhǎng)如500ms后續(xù)連按間隔縮短如200ms。3.2 LCD12864顯示與多級(jí)菜單設(shè)計(jì)LCD12864是國(guó)賽的“門面”顯示內(nèi)容復(fù)雜且需要頻繁刷新。其難點(diǎn)在于快速、無(wú)閃爍地刷新局部?jī)?nèi)容和管理多級(jí)菜單。高效刷新策略差異化刷新不要每次刷新都重寫整個(gè)屏幕。為屏幕上每個(gè)需要?jiǎng)討B(tài)更新的區(qū)域如數(shù)值顯示區(qū)、狀態(tài)圖標(biāo)區(qū)設(shè)置一個(gè)“顯示緩存數(shù)組”和一個(gè)“更新標(biāo)志位”。當(dāng)數(shù)據(jù)變化時(shí)只修改緩存數(shù)組并置位對(duì)應(yīng)標(biāo)志位。在顯示刷新任務(wù)如200ms一次中檢查所有標(biāo)志位只向LCD寫入那些發(fā)生了變化的區(qū)域內(nèi)容。使用標(biāo)準(zhǔn)字庫(kù)與自定義字庫(kù)國(guó)賽板子通常自帶字庫(kù)芯片調(diào)用方便。但對(duì)于特殊符號(hào)或小圖標(biāo)需要自己定義字模。將常用的自定義字模數(shù)組放在代碼的const區(qū)域并規(guī)劃好其在CGRAM中的地址避免沖突。多級(jí)菜單狀態(tài)機(jī)設(shè)計(jì) 菜單系統(tǒng)本質(zhì)是一個(gè)樹狀狀態(tài)機(jī)。每個(gè)菜單頁(yè)是一個(gè)狀態(tài)節(jié)點(diǎn)。定義菜單結(jié)構(gòu)體typedef struct { unsigned char id; // 菜單ID unsigned char parentId; // 父菜單ID void (*showFunc)(void); // 該菜單的顯示函數(shù) void (*keyFunc)(unsigned char key); // 該菜單下的按鍵處理函數(shù) } MenuItem_T;構(gòu)建菜單表用一個(gè)MenuItem_T數(shù)組定義所有菜單頁(yè)及其關(guān)系。全局變量記錄當(dāng)前菜單使用一個(gè)全局變量currentMenuId記錄當(dāng)前所處的菜單頁(yè)。顯示與按鍵分發(fā)主循環(huán)中根據(jù)currentMenuId查找菜單表調(diào)用對(duì)應(yīng)的showFunc進(jìn)行顯示。鍵盤事件也傳遞給當(dāng)前菜單的keyFunc處理在該函數(shù)內(nèi)實(shí)現(xiàn)“上下翻頁(yè)”、“進(jìn)入子菜單”、“返回上級(jí)菜單”、“修改參數(shù)”等邏輯。避坑指南顯示閃爍頻繁全屏刷新是閃爍的元兇。務(wù)必采用差異化刷新。另外在寫入大量數(shù)據(jù)到LCD時(shí)可以考慮暫時(shí)關(guān)閉全局中斷防止被定時(shí)器中斷打斷導(dǎo)致數(shù)據(jù)傳輸錯(cuò)位但關(guān)閉中斷的時(shí)間要盡可能短。內(nèi)存不足菜單結(jié)構(gòu)體、字模、顯示緩存都會(huì)消耗RAM。如果使用大量菜單可以考慮將菜單的顯示字符串定義在code程序存儲(chǔ)區(qū)僅在使用時(shí)讀取。菜單邏輯混亂清晰定義“進(jìn)入”、“退出”、“確認(rèn)”、“取消”等按鍵的全局語(yǔ)義并在每個(gè)菜單的按鍵處理函數(shù)中嚴(yán)格遵守避免用戶操作時(shí)迷失。3.3 高精度數(shù)據(jù)采集與軟件濾波題目對(duì)測(cè)量精度的要求迫使我們必須認(rèn)真對(duì)待ADC采集和信號(hào)處理。以PCF85918位ADC測(cè)量電壓為例其理論分辨率約為20mV5V/256要滿足1%的精度50mV必須進(jìn)行校準(zhǔn)和濾波。校準(zhǔn)方法零點(diǎn)校準(zhǔn)輸入端接地0V讀取此時(shí)的ADC值A(chǔ)D_ZERO。這個(gè)值就是零點(diǎn)的系統(tǒng)誤差。增益校準(zhǔn)輸入端接一個(gè)已知的精確參考電壓如2.500V讀取ADC值A(chǔ)D_REF。理論上(AD_REF - AD_ZERO)應(yīng)該對(duì)應(yīng)2.500V。換算公式實(shí)際電壓 (AD_RAW - AD_ZERO) * V_REF / (AD_REF - AD_ZERO)。其中AD_RAW是原始讀數(shù)V_REF是參考電壓值2.500V。軟件濾波算法 單純的一次采樣毫無(wú)意義必須濾波。算術(shù)平均濾波連續(xù)采樣N次求和再平均。最簡(jiǎn)單能有效抑制隨機(jī)噪聲但會(huì)導(dǎo)致響應(yīng)速度變慢。N取值一般為4、8、16。滑動(dòng)平均濾波維護(hù)一個(gè)長(zhǎng)度為N的隊(duì)列每次新采樣值入隊(duì)最舊值出隊(duì)然后計(jì)算隊(duì)列平均值。兼顧了實(shí)時(shí)性和平滑度是比賽中最實(shí)用、最常用的方法。中位值平均濾波連續(xù)采樣N次去掉一個(gè)最大值和一個(gè)最小值對(duì)剩下的N-2個(gè)值求平均。能有效防止脈沖干擾。一階滯后濾波低通濾波Y(n) α * X(n) (1-α) * Y(n-1)。其中α是濾波系數(shù)0α1X(n)是新采樣值Y(n)是本次濾波輸出Y(n-1)是上次輸出。這種方法計(jì)算量小能很好地平滑數(shù)據(jù)特別適合變化緩慢的物理量如溫度。α越小濾波效果越強(qiáng)但滯后也越嚴(yán)重。// 滑動(dòng)平均濾波示例 #define FILTER_LEN 8 unsigned char filterBuf[FILTER_LEN] {0}; unsigned char filterIndex 0; unsigned int filterSum 0; unsigned char Moving_Average_Filter(unsigned char newVal) { filterSum filterSum - filterBuf[filterIndex] newVal; // 減去最舊值加上最新值 filterBuf[filterIndex] newVal; // 新值存入隊(duì)列 filterIndex (filterIndex 1) % FILTER_LEN; // 索引循環(huán) return (unsigned char)(filterSum / FILTER_LEN); // 返回平均值 }避坑指南采樣時(shí)機(jī)不要在程序任意位置隨機(jī)調(diào)用ADC讀取函數(shù)。應(yīng)在一個(gè)固定的、周期性的定時(shí)任務(wù)中如50ms任務(wù)進(jìn)行采樣和濾波以保證數(shù)據(jù)的時(shí)間一致性。濾波參數(shù)選擇濾波深度N值或α值需要根據(jù)信號(hào)特性和系統(tǒng)響應(yīng)要求做權(quán)衡??梢酝ㄟ^(guò)串口將原始數(shù)據(jù)和濾波后數(shù)據(jù)打印出來(lái)直觀地觀察效果。切忌盲目使用深度濾波否則控制環(huán)路會(huì)變得遲緩。數(shù)據(jù)類型與溢出濾波計(jì)算中涉及累加務(wù)必使用足夠大的數(shù)據(jù)類型如unsigned int或unsigned long并警惕累加和溢出的風(fēng)險(xiǎn)。3.4 EEPROM數(shù)據(jù)存儲(chǔ)與磨損均衡AT24C02這類EEPROM常用于存儲(chǔ)系統(tǒng)參數(shù)、校準(zhǔn)值或歷史記錄。其操作簡(jiǎn)單但有兩個(gè)關(guān)鍵陷阱。頁(yè)寫入與跨頁(yè)問(wèn)題AT24C02的頁(yè)大小為8字節(jié)。連續(xù)寫入時(shí)如果寫入起始地址數(shù)據(jù)長(zhǎng)度超過(guò)當(dāng)前頁(yè)的邊界超出的部分會(huì)從該頁(yè)的起始地址“回卷”覆蓋寫入而不是自動(dòng)寫入下一頁(yè)。這會(huì)導(dǎo)致數(shù)據(jù)丟失。解決方案在寫入長(zhǎng)度超過(guò)一頁(yè)或可能跨頁(yè)的數(shù)據(jù)時(shí)必須分多次寫入每次寫入前計(jì)算剩余空間確保單次寫入不跨頁(yè)。讀寫壽命與數(shù)據(jù)安全EEPROM的擦寫次數(shù)有限通常10萬(wàn)次。如果頻繁地在同一個(gè)地址更新數(shù)據(jù)如每秒存儲(chǔ)一次實(shí)時(shí)數(shù)據(jù)芯片很快就會(huì)損壞。解決方案簡(jiǎn)易磨損均衡。例如要存儲(chǔ)10組歷史記錄不要只固定10個(gè)地址。可以定義一個(gè)更大的存儲(chǔ)區(qū)如30個(gè)地址每次寫入時(shí)順序向后寫寫滿后再?gòu)念^開始循環(huán)覆蓋。同時(shí)在存儲(chǔ)區(qū)頭部增加一個(gè)“索引”或“時(shí)間戳”用來(lái)標(biāo)識(shí)最新數(shù)據(jù)的位置。這樣就將擦寫次數(shù)分?jǐn)偟搅硕鄠€(gè)物理單元上。#define HISTORY_START_ADDR 0x00 #define HISTORY_SIZE 30 // 總共30個(gè)記錄單元 #define RECORD_LEN 2 // 每個(gè)記錄占2字節(jié) unsigned char historyIndex 0; // 存儲(chǔ)在RAM中上電后需要從EEPROM恢復(fù) void Save_History(unsigned int data) { // 1. 計(jì)算寫入地址 unsigned int writeAddr HISTORY_START_ADDR historyIndex * RECORD_LEN; // 2. 寫入數(shù)據(jù) EEPROM_Write(writeAddr, (data 8) 0xFF); // 高字節(jié) EEPROM_Write(writeAddr1, data 0xFF); // 低字節(jié) // 3. 更新索引并保存索引本身也占用一個(gè)固定地址需謹(jǐn)慎處理其磨損 historyIndex (historyIndex 1) % HISTORY_SIZE; EEPROM_Write(INDEX_STORE_ADDR, historyIndex); }4. 系統(tǒng)整合與調(diào)試實(shí)戰(zhàn)經(jīng)驗(yàn)當(dāng)各個(gè)模塊都能獨(dú)立工作后最艱巨的挑戰(zhàn)來(lái)了——將它們整合成一個(gè)穩(wěn)定運(yùn)行的系統(tǒng)。這個(gè)階段的問(wèn)題往往是隱性和耦合性的。4.1 定時(shí)器資源分配與中斷管理51單片機(jī)通常有2-3個(gè)定時(shí)器。必須精心規(guī)劃Timer0通常用作系統(tǒng)時(shí)基產(chǎn)生1ms或5ms的精確中斷用于更新軟件計(jì)時(shí)、設(shè)置任務(wù)標(biāo)志位。這是系統(tǒng)的“心跳”。Timer1可能用于產(chǎn)生波特率如果使用串口調(diào)試或者用于需要精確計(jì)時(shí)/測(cè)頻的功能如測(cè)量NE555輸出頻率。Timer2如果可用可能用于PWM生成或其他特定功能。關(guān)鍵原則中斷服務(wù)程序ISR務(wù)求短小精悍。ISR里只做最必要的事情設(shè)置標(biāo)志位、清除中斷標(biāo)志、重裝初值。絕對(duì)不要在ISR里進(jìn)行復(fù)雜計(jì)算、調(diào)用可能阻塞的函數(shù)如LCD大量寫數(shù)據(jù)、或進(jìn)行軟件延時(shí)。避免中斷嵌套如果非必要在系統(tǒng)初始化后關(guān)閉中斷嵌套51單片機(jī)默認(rèn)是關(guān)閉的。復(fù)雜的嵌套中斷會(huì)使得程序執(zhí)行流難以預(yù)測(cè)給調(diào)試帶來(lái)噩夢(mèng)。共享變量的保護(hù)如果主循環(huán)和中斷服務(wù)程序都會(huì)讀寫同一個(gè)全局變量如flag_10ms雖然51單片機(jī)大部分情況下讀寫下一條指令是原子的但為了代碼規(guī)范和可移植性建議在讀寫這類變量時(shí)暫時(shí)關(guān)閉中斷操作完成后再打開。4.2 全局狀態(tài)機(jī)與任務(wù)調(diào)度實(shí)現(xiàn)這是整個(gè)系統(tǒng)的“大腦”。一個(gè)清晰的主循環(huán)和任務(wù)調(diào)度機(jī)制至關(guān)重要。void main(void) { Sys_Init(); // 系統(tǒng)初始化定時(shí)器、中斷、外設(shè)、全局變量 while(1) { // 任務(wù)調(diào)度根據(jù)定時(shí)器中斷設(shè)置的標(biāo)志位執(zhí)行相應(yīng)任務(wù) if(flag_2ms) { flag_2ms 0; Task_2ms(); } // 高優(yōu)先級(jí)任務(wù)如某些控制算法 if(flag_10ms) { flag_10ms 0; Task_10ms(); } // 鍵盤掃描 if(flag_50ms) { flag_50ms 0; Task_50ms(); } // 傳感器數(shù)據(jù)采集與濾波 if(flag_200ms) { flag_200ms 0; Task_200ms(); } // 顯示刷新 if(flag_1000ms){ flag_1000ms 0;Task_1s(); } // 秒級(jí)任務(wù)如存儲(chǔ)數(shù)據(jù) // 主狀態(tài)機(jī)處理 switch(sysState) { case STATE_IDLE: // ... 處理空閑狀態(tài)邏輯 break; case STATE_MEASURE: // ... 處理測(cè)量狀態(tài)邏輯可能調(diào)用各個(gè)任務(wù)處理后的數(shù)據(jù) break; case STATE_SETTING: // ... 處理設(shè)置狀態(tài)邏輯 break; } // 其他非實(shí)時(shí)性任務(wù)如串口數(shù)據(jù)處理如果有 Uart_Process(); } }任務(wù)函數(shù)設(shè)計(jì)要點(diǎn)每個(gè)任務(wù)函數(shù)如Task_50ms()應(yīng)功能單一執(zhí)行時(shí)間盡可能短。如果某個(gè)任務(wù)執(zhí)行時(shí)間過(guò)長(zhǎng)會(huì)影響其他標(biāo)志位的及時(shí)響應(yīng)導(dǎo)致系統(tǒng)“卡頓”。例如Task_200ms()顯示刷新函數(shù)內(nèi)部應(yīng)使用差異化刷新避免每次執(zhí)行都耗時(shí)過(guò)長(zhǎng)。4.3 系統(tǒng)調(diào)試方法與問(wèn)題定位當(dāng)系統(tǒng)行為異常時(shí)如何快速定位問(wèn)題模塊隔離法這是最有效的方法。通過(guò)條件編譯#ifdef DEBUG_KEY或函數(shù)開關(guān)暫時(shí)屏蔽掉其他所有模塊只運(yùn)行你懷疑有問(wèn)題的那個(gè)模塊。例如懷疑鍵盤掃描影響顯示就先注釋掉鍵盤掃描的代碼看顯示是否正常。IO口模擬示波器/邏輯分析儀在關(guān)鍵代碼位置操作一個(gè)空閑的IO口置高/置低然后用示波器觀察這個(gè)IO口的波形。可以測(cè)量函數(shù)執(zhí)行時(shí)間、中斷發(fā)生頻率、任務(wù)調(diào)度周期等。如果沒(méi)有硬件示波器可以借助某些軟件如串口波形打印進(jìn)行近似分析。串口打印調(diào)試信息這是最常用的方法。在代碼中插入printf語(yǔ)句將變量的值、程序的執(zhí)行流程如“進(jìn)入狀態(tài)A”、“收到按鍵值0xXX”發(fā)送到串口通過(guò)電腦端的串口助手查看。注意串口打印本身很耗時(shí)會(huì)嚴(yán)重影響程序?qū)崟r(shí)性因此只能用于調(diào)試階段且要謹(jǐn)慎使用或者使用一個(gè)緩沖隊(duì)列在后臺(tái)發(fā)送。檢查堆棧溢出51單片機(jī)內(nèi)存小如果函數(shù)嵌套調(diào)用層次太深或局部變量數(shù)組過(guò)大容易導(dǎo)致堆棧溢出覆蓋其他數(shù)據(jù)引發(fā)各種靈異錯(cuò)誤。可以通過(guò)觀察內(nèi)存地址或故意在內(nèi)存末端設(shè)置“哨兵值”來(lái)檢測(cè)。電源與噪聲問(wèn)題如果模擬測(cè)量如ADC值跳動(dòng)大、系統(tǒng)偶爾復(fù)位很可能是電源噪聲或地線干擾。檢查電源濾波電容是否足夠、靠近芯片模擬地和數(shù)字地單點(diǎn)連接是否良好。5. 國(guó)賽備賽與現(xiàn)場(chǎng)實(shí)戰(zhàn)建議最后結(jié)合國(guó)賽這個(gè)特定場(chǎng)景分享幾點(diǎn)純粹的實(shí)戰(zhàn)建議。備賽階段打造自己的“武器庫(kù)”不要每次練習(xí)都從頭開始寫驅(qū)動(dòng)。將經(jīng)過(guò)千錘百煉的、穩(wěn)定可靠的鍵盤掃描模塊、LCD顯示模塊、ADC濾波模塊、EEPROM存儲(chǔ)模塊、定時(shí)器調(diào)度框架封裝成獨(dú)立的.c/.h文件形成一個(gè)個(gè)人代碼庫(kù)。比賽時(shí)你可以像搭積木一樣快速構(gòu)建系統(tǒng)主體。進(jìn)行極限壓力測(cè)試在自己的板子上模擬國(guó)賽環(huán)境。同時(shí)讓所有外設(shè)滿負(fù)荷工作LCD快速刷新復(fù)雜動(dòng)畫ADC高速采樣鍵盤瘋狂按鍵EEPROM頻繁寫入。觀察系統(tǒng)是否死機(jī)、復(fù)位、或顯示異常。這能暴露出架構(gòu)設(shè)計(jì)、中斷處理和電源方面的深層次問(wèn)題。熟悉客觀題國(guó)賽有客觀題部分考察單片機(jī)基礎(chǔ)知識(shí)和編程能力。這部分是“送分題”但需要熟練度。提前刷歷年客觀題確保速度和準(zhǔn)確率。現(xiàn)場(chǎng)比賽審題與規(guī)劃前30分鐘至關(guān)重要拿到題目后不要急于動(dòng)手。用筆在紙上畫出系統(tǒng)功能框圖、狀態(tài)轉(zhuǎn)換圖、外設(shè)分配表哪個(gè)IO口、哪個(gè)定時(shí)器、任務(wù)時(shí)間規(guī)劃表。和隊(duì)友如有明確分工。分步實(shí)現(xiàn)與驗(yàn)證不要試圖一次性寫完所有代碼。應(yīng)該遵循“硬件測(cè)試 - 驅(qū)動(dòng)調(diào)試 - 功能模塊驗(yàn)證 - 系統(tǒng)整合”的步驟。每完成一個(gè)步驟如點(diǎn)亮LCD、讀出ADC值就進(jìn)行一次驗(yàn)證確保它是正確的再進(jìn)行下一步。保留調(diào)試手段即使是在最終代碼中也可以保留一個(gè)通過(guò)特定按鍵組合觸發(fā)的“調(diào)試模式”。在這個(gè)模式下可以通過(guò)LCD或串口如果允許輸出內(nèi)部關(guān)鍵變量如ADC原始值、濾波后值、系統(tǒng)狀態(tài)等。這在最后檢查故障時(shí)可能救你一命。管理時(shí)間與應(yīng)對(duì)突發(fā)問(wèn)題比賽時(shí)間緊張如果某個(gè)模塊如超聲波調(diào)試花費(fèi)遠(yuǎn)超預(yù)期要果斷決策是繼續(xù)攻克還是采用備用方案如用隨機(jī)數(shù)模擬一個(gè)合理范圍的數(shù)據(jù)先保證其他功能的完整性和演示流暢性一個(gè)能流暢演示但部分?jǐn)?shù)據(jù)模擬的系統(tǒng)通常比一個(gè)完全真實(shí)但卡死半途的系統(tǒng)得分更高。國(guó)賽的舞臺(tái)比拼的不僅是知識(shí)更是心態(tài)、規(guī)劃和應(yīng)變能力。把每一次練習(xí)都當(dāng)作實(shí)戰(zhàn)把復(fù)雜系統(tǒng)拆解成一個(gè)個(gè)你武器庫(kù)中熟悉的模塊你就能在賽場(chǎng)上從容不迫將積累的經(jīng)驗(yàn)轉(zhuǎn)化為行云流水的代碼。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色色色色综合网| 丁香婷婷中文字幕| 精品久久久久成人码免费动漫| 成人AV免费观看| 色狠狠综合网| www.五月激情.com| 日本三级日本黄色| 97干婷婷| 99热永久在线观看| 操97在线观看| 婷婷色色五月| 久久五月婷婷综合网| 五月婷婷精品无在线| 欧州婷婷五月天综合| 六月婷婷九月丁香亚洲综合| 超碰资源在线| www.久久99| 婷婷丁香射射| 影音先锋一区二区资源站| 久热播这里只有精品| www综合久久| 久婷婷色| renrencaoav| 九七色色六月丁香| 日本系列_4页_777FP| 色综合九九| 狠狠色成人影片| WWW五月天| 大香蕉手机视频| xxxx五月| caopeng97人人| 91丨九色丨大屁股| 色综合色色色色色| 久久精彩综合视频| 九九九九中文字幕| 99免费在线视频| 精品人妻久久久久久久| 91美女被操| 亚洲亚洲人成综合网络| 97人人搞| 天天日夜夜帕| 一區四區歐美日韓| 五月丁香花视频| 五月婷婷六月丁香| 色婷婷综合影院| 久碰视频| 九热电影av| 天天干天天插| 天天综合精品| 天天干天天色天天干| 99热一区| 亚洲va综合va国产va中文| 人人爽天天莫| 婷婷五月天丁香激情| 国产精品大香蕉| 五月婷亚洲精品| 久久久思思热| 久久婷婷五月综合激情国产| 日韩三级高清无码| 国产亚洲精品久久久久久牛牛| 欧州色色| 婷婷六月色情| 婷久看人爽| 区啪精品| 99久久综合狠狠综合久久| 狼人狠狠操| 丁香六月婷婷色XXXX| 99热这里有精品首页10| 婷婷丁香六月天| 91se在线视频| 五月天久久91| 99热这里只有精品国产首页| 26uuu国产精品| 超碰人人操人人干| 九色 在线| 午夜成人av在线| 日本狠狠干| 日夜夜天天| 色色婷婷综合| 色欲一区二区三区精品A片| 色婷久久| 五月丁香操亭亭网| 五月精品免费XXX| 久操婷婷| 一起草Av| 永久免费视频| xx久久| 任你弄在线视频免费| 九九综合| 久久久人妻| 99久久五月婷婷| 五月婷婷中文网| 综合色图区| 人人97操| 香蕉中文在线| 成人AV综合在线| 日韩欧美不卡| 色五月丁香五| 国产亚洲99久久精品熟| 5月丁香美女影院| 天天操天天操天天操天天操天天操| 久久玖玖综合| 狠狠爱激情网| 91美女被操| 婷婷五月情| 大陆肏屄视频| 五月六月伦理| 婷婷久久五月天| 在线1青婷| 五月天色婷婷视频| 色大综合| 六月婷婷久久| 99re8在这里只有精品| 婷婷激情五月天小说校园| 国产va在线视频| 天天插天天狠| 久色成人| 插插五月天| 深爱激情四射| 亚洲丁香网| 天天久久综合| 色狠狠色狠狠| 久久综合人妻| 91九色视频| 婷婷午夜精品久久久| 狠狠爱婷婷丁香| 七七色色综合| 中文字幕成人| 天天干,夜夜爽| 五月丁香综合激情| 超碰在线网站9| 最近免费中文字幕大全高清大全1| 亚洲色啪| 玖玖99婷婷| 婷婷五月天VI| 在线看av| 激情五月婷婷| 久热中文字幕在线线观看| 久久这里只有国产精品视频| 五月婷亚洲精品| 天天爱综合网| 婷婷久草| 午夜无码熟熟妇丰满人妻| 97超碰,人人舔,人人操,人人摸| 操碰色一区就去操| 99五月婷| 五月婷婷开心亚洲无| 亚州激情网站无码| 五月天婷婷在线播放免费| 激情五月天偷拍综合网| 亚洲激情综合| 色综合视频在线| 日韩啪图| 欧美婷婷六月丁香综合色| 丁香五月精品视频| 99re视频精品| 超碰亚洲天堂| 五月婷婷黄网站大全| 色噜噜五月丁香婷婷| 色情久久久| 激情丁香婷婷六月天| 五月丁香六月婷婷中合网| 99热99干| 五月丁香婷婷综合| 久久91久久精品久久| 免费观看2018www黄色操逼网站| 亚洲熟女乱色综合亚洲网站| 另类小说五月天综合| 婷婷五月六月激情| 久久婷婷精品| 一区无码| 狠狠操.com| 五月婷婷婷自由综合| 99久久五月婷婷| 婷婷激情五月综合| AV免费在线网站| 久久久久久久久久8888| 26uuu欧美激情另类| 久久婷婷内射| 9|人妻人人操| 任你艹| 69激情小说| 五月丁香色婷婷| 天天日天天爽| 久色激情| 五月婷婷综合在线观看| 最近中文字幕大全免费版在线 | 无码激情AAAAA片-区区| 色久女| 国产阿姨日皮艹逼内射视频| 色色亚洲| 精品久9| 亚洲综合婷婷五月| 99热.com| http://www.com久久久精品一区| 99热国产| 天天干天天拍| 五月丁香综缴情性爱| 日本精品99网站| 五月天婷婷伊人| 8区视频在线| 精品国产乱码久久久久久免费| 在线看黄色| 色色亚洲无码| 99九色视频在线观看| 亚洲熟妇AV乱码在线观看| 丁香五月综合无码趴趴| 99久久精品网| 99无码视频| 五月婷婷导航| 婷婷精品性性性性性性性| Av大香蕉| 婷婷丁香亚洲色综合91| 亚洲色爱综合| 五月丁香久久久| 亚洲精品网站色视频| 久久精品人妻| 日韩精品99久久| 婷婷五月开心中文字幕色| 精品久久9| 亚洲视频码| a v色婷婷| 很很干天天干| 97在线碰| AV在线免费网站| 操比激情五月| 日日夜夜爽| 色色色热| 天天操夜夜夜夜爽| 色婷婷色99国产综合精品| 99热日| 日夜夜久久| 亚洲五月天激情| 婷婷综合色色| 婷婷亚洲综合| 精品久久99码| 色情综合网| 一级二级色大片| 国产精品婷婷午夜在线观看| 丁香五月天AV在线 | 99爱爱网| 狠狠爱五月婷婷| 婷婷五月天黄色小说| 丁香婷婷五月份| 色A网| 久久久婷婷婷| 99热6这里只有精品6| 狠狠综合| caopeng超碰| 99久热| 9久国产精品| 夜夜爱伊人| 色婷婷色综合激情91| 色婷婷AV久久久久久久| 亚洲成人无码免费| 超碰资源在线| 婷婷伊人网| 日韩成人AV在线播放| 东北黄色一级| 99久久99久久| 激情五月天丁香| 成人视频一区| 激情五月第四色| 深爱婷婷网| 六月丁香久久| 成人免费120分钟啪啪| www.夜夜操.con| 熟妇人妻中文字幕无码老熟妇| www.激情在线| www,婷婷,com| 操骚货在线| www.99热在线| 九九碰九九爱97超碰| 99自拍网| 天天操天天插| 亚洲精品五月| 超碰高清在线| 日日噜噜夜夜狠狠久久丁香六月| 五月人妻婷婷| 色444综合网| 婷婷深爱五月天| 丁香五月婷婷偷拍| 色综合婷婷| 丁香成人综合| 午夜日日| 色婷婷五月天偷拍| 五月综合激情视频| www热久久yy9| 亚洲激情综合| 国产午夜一区二区三区| 国产在线黄色| 成人午夜天| 丁香六月婷婷姐网| 91精品久久久久久久| 婷婷五月天激情网| 婷婷欧美激情| 五月婷婷av| 99这里都是精品| 国产精品色色色色| 超碰97久久| 亚洲五月婷婷| 色噜噜在线| 五月丁香五月丁香五月丁香五月丁香91| 99久超碰| 99精品视频在线| 啪啪操网| www.激情| 天天日综合| 日韩成人免费电影| 亚洲在线网站| 亚洲天天操| 九九色99| 另类图片天天影视在线观看| 五月天丁香婷婷久久九| 色玖玖综合网| 五月精品免费XXX| 五月婷啪啪| 天天色粽合合合合合合合| 日本va欧美va欧美va| 婷婷久久久久| 丁香五月婷婷社区| 99热综合网| 婷婷五月天激情综合深爱激情| 欧美三级黄色片久久| 欧美丰满熟妇BBB久久久| 俺去也五月天婷婷| 色五月久久成人婷婷| 久久久九九九 99| 丁香五月六月综合激情| 五月天婷婷久久视频| 99热国品免费| 亚洲99在线| 51精品国自产在线| 九九热在线视频观看| 五月丁香婷婷激情澎湃四射| 亚洲思思热久| 丁香五月123| 婷婷亚洲综合| 久草大| 丁香五月婷在线观看| 五月天色色色| 午夜丁香综合婷婷| 猫咪伊人AV| 五月综合久久| 色色色地址| 99热777| 久久黄A片| 狠狠九九婷婷韩| 国产XXXX搡XXXXX搡麻豆| 色婷婷五月在线| 人妻精品久久久久久| 日本精品在线噜噜噜| 久久久精品99| 人人操婷婷| www.久久久久| 五月丁香啪啪| 91丨九色丨熟女|新版| 综合色综合| 午夜婷婷丁香| 九九综合| 婷婷久久丁香五月| 98永久精品| 爱穴久久| 久久久国产精品黄毛片| 五月丁香六月婷| 婷婷五月丁香综合激情| 婷婷五月激情中文字幕| 成人视频婷婷| 丁香婷婷色五月天| 五月天婷婷开心| 九九精品视频免费在线| 琪琪色五月天| 日本99在线| 涩玖玖免费视频| 610018岁成人视频| 嫩草AV久久伊人妇女超级A| 婷婷精品免费久久| 色婷婷综合久久久久| 国产亚洲色婷婷久久99精品91| 婷婷激情五月综合丁| 欧美天天综合网站上去吧| 亚洲人妻AV| 国产精品视频免费看| 大香蕉丁香| 激情五月四色| 亚洲丁香五冃97色| 亚洲av电影网站| 99ER热精品视频| 日本天天色| 久久性爱视频| 99这里只有精品| 99久久久久| 五月天开心网| 99热色精品| 国产免费一区二区在线A片视频| 九九99免费视频| 五月色婷婷影院| 日韩另类在线观看| 激情久久肏屄视频| 五月色影院| 婷婷社区五月天| 79精品视频在线观看,| 99热婷婷| 伊人五月天| 日本精品人妻无码77777| 国产亚洲精品AAAAAAA片 | 伊人玖玖精品| 操一区| 色婷婷www| 狠狠干在线| 激情第四色| 天天做天天爱天天爽| 91热爆在线| www色色com| 六月丁香啪啪啪| 欧洲第一无人区观看| 成人精品视频99在线观看免费| 丁香六月婷婷久久综合| 五月丁香综合精品欧美| 久久久久久18| 中文字幕在线不卡| 9999热精品在线免费播放| 丁香色啪综合| 日日干天天爽| AV在线大香蕉| 无码激情AAAAA片-区区| 五月色婷丁香| 深夜男女福利刺激影院一区完整| 丁香婷婷免费| 亚洲色激情| 五月丁香色综合| 日韩AV片| 亚洲熟妇AV乱码在线观看| 亲子乱AV-区二区三区| 色色影院黄大片| 人人操91| 丁香五月网在线观看| 91婷婷五月天嫩女| 九九色热| 免费碰碰视频久| 狠狠综合区| 99热精品在线播放| 激情综合亚洲色婷婷五月| 五月天激情国产综合婷婷| 成人综合AV| 色婷视频| 九九精品婷| 丁香色五月 97干| 丁香5月综合啪啪| 五月激激激情综合网| 久久婷婷五月综合色奶水99啪| 激情深爱五月天| 久久五月婷综合| 色www.con| 开心五月激情| 丁香婷婷视频在线| 99色综合| 欧美性猛交99久久久99| 提提热五月天婷婷| 久久久五月五丁香| 色色色五月天婷婷| 欧美色五月| 5月丁香六月婷婷| 超碰免费大香蕉| 中字幕视频在线永久在线观看免费 | 亚洲日本韩国| 成人网在线视频| 亚洲激情高潮| 99啪啪网| 97爱艹婷婷开心丁香激情综合| 欧美日韩国产伦精品日韩人妻一| 欧美猛片| 丁香五月天堂网| 色综啪啪| 欧美成人无码一区二区三区| 99久在线精品99re8热| 色天天久婷婷| 久久综合五月天| 熟惀91九色在线| 婷婷六月啪啪| 激情伊人五月天| 大香蕉手机视频| 欧美超碰人人| 99爱视频免费看| 五月婷激情| 色涩影院六月丁香| 视色综合| 欧美顶级少妇做爰HD| 激情综合网五月| 五月天另类小说久久小说网| 五月天婷婷色| 99热在线精品观看| 操久久精| 日日日日操| 五月天成人综合| 欧美天堂久久| 五月天啪啪啪| 在线观看欧美3区| 五月综亚洲| 丁香六月婷婷色XXXXX| 丁香狠狠操| 日日干干天天干| 五月亭亭开心网| 丁香婷婷超碰 | 丁香婷婷浪潮AV久久综合| 久久婷婷丁香五月一二三| 91男同| 久久国产高清| site:pnnrt.com| www91色网站| 无码天天操| 99热手机在线精品| 啪啪91| 色你久久| 久久色五月| 操骚货在线| 综合九色| 狠狠操狠狠操AV| 99综合入口| 婷婷播播五月天| 五月婷婷综合在线| 色9色| 亚洲精品色| 国产激情综合五月久久| 久久97| 婷婷午夜激情| 99精品自拍视频| 91丨九色丨白浆秘| 超碰在线观看9| 99久操| 天天爽天天| 婷婷中文网站| 婷婷五月天伊人| 久久全色| 成人视频在线免费播放| 婷婷午夜激情| 婷婷激情丁香六月| 五月天小说激情| 99热这里只有精品 搜| 超碰在线免费观看日韩| 伍月婷婷六月丁香| 人妻在线网站| 色综合九九色综合88| 天天插天天射天天干| 成人免费在线电影| 日本人妻A片成人免费看片| 免费观看亚洲AV片| 五月天丁香六月综合| 丁香五月Av| 久久综合这里只有精品1| 天天综合网在线| 丁香六月天婷婷在线| 99热9| 狠狠色狠狠鲁| 日韩av免费版| 激情五月丁香六月综合AVXXXX| 激情无码网| 在线婷婷| 久久狠狠色| 五月天婷婷狂暴白浆| 色五婷婷| 在线观看av网站| 色五月大香蕉| 天干干夜夜操| 九九九九九九九九九九九九九国产精品| 激情丁香五月天图片| 国内久久亭亭| 欧美性丁香色色五月天干干| 五月欧美色色五月| 婷婷五月丁香色综合| 天堂色婷婷| 99激情网| 无码字幕中文| 亚洲综合色色| 激情丁香五月激情婷婷| 日韩黄色AV无码| 色色色干| 四色女婷婷| 五月婷婷亚洲色图| 狠狠狠狠狠干| 99er6热在线观看精品6| 成人永久免费视频在线观看| 99精品免费| 丁香婷婷五月基地| 狠狠干婷婷| 久久小说网| 99精品在线观看视频| 久久99久久99精品免视看婷婷| 狠狠精品干练久久久无码中文字幕| 久久思思热视频| 99干日本| www.97视频| 日本色婷婷| 国产噜一噜天天噜| 亚洲图色五月天| 天天色宗合| 激情 婷婷 插| 久久综合五月天| 亚洲字幕AV一区二区三区四区| 狠狠人人婷婷| 五月婷庭丁香在线| 久久久99免费视频| 99久久99综合| 五月婷婷久久久| 亚洲十月婷婷综合| 97色久| 久久久久9久无码视频| 黄久久久| 久久久精久人妻| 丁香激情婷婷网| 婷婷久久五月天丁香| 丰满人妻妇伦又伦精品国产| 五月天婷婷AV| 婷婷五月天激情综合网| 蜜乳9188| 99狠狠| 久久久天堂国产精品女人| 丁香五月婷婷av| 综合深爱五月| 狠狠艹狠狠艹| 操逼视频一区| 99情色五月天| 国产乱人偷精品人妻A片| www.天天干| 丁香五月天五码婷婷| 操97| 69色婷婷| 91女人18毛片水多国产| 国外亚洲成AV人片在线观看| 欧美99热| 婷婷八月丁香激情综合| 婷婷五月成人系列| 翔田千里无码| 密黄站| 婷婷五月天黄色网址| 亚洲综合五月天婷婷| 色婷婷色99国产综合精品| 99男人的天堂| 久久久久人妻精品| 国产精品婷婷午夜在线观看| 日日婷婷不卡| 激情六月下句是什么| 成人精品人妻| 色婷婷综合影院| 99草在线免费观看视频| 九九综合影音先锋| AA片在线观看视频在线播放| 丁香成人五月天| 五月综合丁香婷婷| 激情视频综合| 五月人妻婷婷视频| 五月色丁香视频精品| 婷婷五月丁香伊人网| 最新激情五月天| 久久女婷| 影音先锋噜一噜| 伊人九九热| 超级碰人人操人人干| 97涩婷婷| 五月婷婷久久爱| 久久久久久久久月丁| 欧美S码亚洲码精品M码| 六月丁香五月婷婷| 欧美成人精品三区综合A片| 开心婷婷五月| 综合色99| 五月天久久久| 五月婷丁香| 99久久九九| 亚洲精品色| 久久婷婷综合五月天| 久久99视频| 9 1超碰九色| 久久停停超碰| 美日韩成人| 九九久久综合| 看片视频在线免费日产在线看| 五月天色图| 九九视频这里只有精品| 99免费在线视频| 五月丁香激情啪啪| 中文字幕欧美日韩VA免费视频| 少妇性按摩无码中文A片| 日本猛少妇色XXXXX猛叫| 99热这里都是精品| 欧美色图片88| www.久操| 婷婷丁香五月天影院 | 91久久综合| 超碰人人干| 天天综合网、天天综合色| 激情五月天啪啪视频| 综合色天天| 欧美色色色| 狠狠五月激情丁香六月| 激情婷婷丁香| 久久xx| 一级黄色影片| www.色色色com| 卡视频1区2区| 九九久久五月天| 欧美日本综合网| 综合色五月天| 五月天天爱| 久久总和99| 思思热在线视频精品| 777精品久无码人妻蜜桃| 日韩乱轮AV| 亚洲精品网址| 久久久激情| 热久久66| 婷婷久久丁香| 思思久久99| 中文字幕一色哟哟哟哟| 亚洲乱啪| 俺来也综合网精品一区| 五月丁香六月激情综合在线| 五月婷婷天天| 综合网激情| 亚洲天堂色| 香蕉操亚洲| 婷婷五月天少妇| 五月天 无码| 国产成人99久久亚洲综合精品| 成 人片 黄 色 大 片| 玖玖伊人网| 色综合久久天天综合网| 99热这里有精品24| 五月婷六月| 免费视频WWW在线观看网站| 丁香婷婷久久综合在线| 五月丁香婷婷色| 丁香五月六月欧美| 色99网| 丁香五月开心七月| 91欧美日韩综合| 99精品在| 激情婷婷色色| 久久五月婷天天干| 色五月天丁香| 毛片毛片毛片毛片| 激情五月综合| 热婷婷久| 综合逼五月激情婷婷| 综合噜噜| 一本大道嫩草AV无码专区| 婷婷伊人綜合| 成人AV在线网站| 99热免费精品| 日韩欧美成人网| 久久婷婷五月综合| 天天干天天操天天拍| 丁香五月综合| www99在线观看视频| 蜜臀九九九九| 噜噜五月天综合| 欧美婷婷九月| 啪啪激情网站| 久久伊人五月天| 色色影院黄大片| 五月丁香六月婷婷免费视频| 99久久久99久久91熟女| 婷婷久久色| 久久婷出差欧美色两性综合网| 任你操精品免费| 玖玖婷婷色欲| 人人澡天天色天天做| 亚洲无码色| 操操操97| 丁香六月狠狠| 丁香五月综合婷婷| 色99婷婷五月天| 天天插天天干天天舔| 九九热只有精品| 日韩色色一区| 狠狠干综合网| 久久小说| 精品视频这里只有精品| 婷婷涩涩五月天| 婷婷五月激情小说| 丁香五月综合在线播放| www.婷婷| 久久五月婷| 狼人婷婷久久| 另类丁香综合| 丁香五月无码| 东京热五月婷婷| 热无码A∨| 久久久五月天| 4399人妻无码久久久| 久久视频这里有精品99| 久久婷婷五月综合色区| 综合狠狠干| 亚洲1区| 国产人妻操逼| 天天爽人人综合免费7799| 成人资源在线| 激情五月综合婷婷| 2005天天干天天1| 五月天色婷婷网| 人五月天婷婷喷水| 日本在线噜噜| 黄桃AV无码免费一区二区三区 | 丁香婷婷狠狠97| 欧洲激情五月天婷婷| 日日干日日| 九九热在线观看6| 在线播放中文字幕| 久久精品婷婷| 亚洲成人免费在线| 欧美五月婷婷| 99九九在线精品热动漫| 久久婷婷五月综合伊人| 国产97色在线| 成人电影AV在线观看| 视频一二区| 五月婷婷久久大香蕉| 婷婷玖玖五月天| 97久操视频| 五月婷婷六月丁香玖玖玫瑰91| 综合网狠狠| 人人摸人人| 久久综合播放| 久婷婷婷| 久久大香蕉| 亚洲激情综合| 99热 在线观看| 日本天天操| 在线综合婷婷| 九色99视频| 日日日天天干| 九九热在线视频观看免费10| 激情五月婷婷视频一区二区三区| 六月大香蕉| 久久精品4| 激情五月综合网| 这里有精品| 天天艹夜夜爽| 亚洲操女| 五月亭亭性| www.色婷婷.com| 大香蕉五月天| 新99思思视频| 久久婷婷原创视频| 欧美va在线观看| 啪啪激情综合| 激情丁香五月| 色婷婷在线视频综合| 久久99免费视频| 狠狠爱婷婷丁香| 亚洲色色色色色色色色色| 99国产精品久久久久久久久久久 | www.久热| 影音先锋 婷婷| 五月天久草| 五月久久婷婷| 亚洲色情一区二区三区四区| 91免费试看| 久婷婷婷| 思思99精品视频在线观看| 国模狼狼| 激情六月婷婷| 五月婷婷 六月丁香| 婷婷综合国产| 在线成人网站| 六月色色综合| 亚洲AV电影美洲AV电影| 99啪啪视频| 69午夜成人影片| 色色色天堂网| 精品人妻一区| 丁香五月亚洲天堂| 色婷婷A| 欧亚成人A片一区二区| 综合网视频| 毛片网站谁有| 婷婷六月偷拍| 99操逼| 天天综合网亚洲综合网| 五月丁香久| 国产又爽又猛又粗的视频A片| 99re8这里只有精品99re8热视频| 五月婷视频久久| 日本综合99| 自拍偷窥99热| 婷婷伊人久久综合| www.91操| 伊人大香蕉爱聚| 五月丁香综合啪啪| 天天综合天综合| 91精品久久久久久77777| 爆乳熟妇一区二区三区四区| XX久久| 99热这里只有精品50| 久久婷狠狠色| 久在热99| 色色色色综合| 婷婷五月丁香在线视频| 五月天国产成人| 国产操逼网站| CHINESE熟女老女人HD视频| 九九激情| 伊人六月丁香婷婷| 激情五月天综合| 99热在线精品观看| 天天草天天爱| 91色操| 中文字幕在线视频播放| 深爱五月天| 超碰爱爱爱| 人人综合五月人人婷婷| 亚洲九区| 97爱综合| WwW色婷婷| 美女五月天| 亚洲中文乱字字幕在线永久| 五月天色综合服务平台| 另类亚洲2| 俺去婷婷 丁香| 一本大道嫩草AV无码专区| 黄色三级日本| 青青草成人网| 国色天香伊人狠狠色| 激情五月婷婷丁香六月| 97碰免费精采视频| 亚洲av另类在线观看| 操99| 成人在线精品| 激情六月婷婷| 99久久免费精品| 色小说婷婷五月天天天| 久久人人看| 国产黄色一级片| av五月天婷婷丁香| 欧美日韩精品人妻狠狠躁免费视频| 91viP在线看| 九九色热| 日日夜夜爽| 丁香婷婷五月六月天| 金桔一区二区ab地址| 97色欧美| 丁香久久九九99| 久久女伦| 三级片AAA久久久AAA久久久AAA | www.99视频| 成人视频在线免费播放| 97热超碰| 九色激情| 久久探花91swag| 91男同视频| 亚洲精品又粗又大又爽A片| 日日夜夜爽爽| 伊人婷婷激情| 99热99热在线观看| 热99精品视频在线观看| 婷婷五月电影院| 亚洲天堂啪啪| 成人Av在线大片| 99热费观看| 婷婷色色欧美| 色五月97| 9久久精品视频| 1囯产午夜仑鲁鲁| 亚洲欧美日韩另类| 色色色色色色色五月| 99热在线观看成人| 99久操视频| 婷婷五月丁香青青草在线| 五月开心播播网| 4399啪啪视频| 天天干在线播放| 五月婷婷亚洲天堂97色婷婷| 婷婷丁香红五月91C| 丁香五月天AV在线 | 九九久久99| 欧美99热| 欧美交换配乱吟粗大25P| 公的粗大挺进了我的密道| 开心五月婷婷激情| 无码少妇高潮喷水A片免费| 国产亚洲成AV人片在线观黄桃| 日本乱子人伦在线视频| 大战熟女丰满人妻AV| 91中文狠狠综合| 色五月婷婷777| 999热在线观看视频| 啪啪九九色| 婷婷久久图片| 9l视频自拍九色9l视频在线观看| 精品99在线| 婷婷久久五月丁香| 九九热在线亚洲免费视频| 性色播| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 日狠狠| 日本九九网| 久久三级视频| 色色综合网站| 久综合4| 伊人综合婷婷| 色婷婷19| 久久婷婷五月国产色综合激情| 99re这里只有精品免费| 狠狠干狠狠干狠狠干狠狠干| 久久丁香久久| 99狠狠| 天天干夜晚夜操| 青草视频在线播放| 婷婷丁香黄色| 永久免费视频| 丁香五月天激情五月天激情五月天激情网| 深爱激情九九五月天 | 牛牛澡牛牛爽| 国产免费一区二区三州老师F1F1……| 婷婷五月丁香花综合| 五月久久五月激情| 婷婷六月激情丁香| 丁香五月偷拍| 狠狠操狠狠操AV| 亚洲成人AV高清字幕| 丁香花五月天社区| 亚洲精品99| 天天日,夜夜爽| 丁香五月天激情视频| 婷婷亚洲影院| 精品久久久91久久影视网| 五月天婷婷色色首页| 中文无码婷婷| www.五月婷婷久久.com| 婷婷五月天电影网| 亚洲成人五月天| 日本在线播放97| 九热免费视频| 五月丁香六月婷婷综合免| 99热.com| 九九精品免费| 丁香五月婷婷国产在线| 综合网色| 色综合色综合网| 大香蕉五月天婷婷| 婷婷五月丁香基| 色婷婷成人网| 亚洲 无码 中文字幕 中出| 成人永久免费视频在线观看| 久久99久久99久久99人受| 黄色aa观看aaguochan| 激情五月婷婷综合| 婷婷色情五月| 婷香五月激情视频| 五月婷丁香久久综合| 欧美操人| 色色哒五月婷婷六月丁香| 天天干 夜夜爽| 99五丁香月| 九九热这里只有精品556| 婷婷丁香激情综合色情| 26uuu成人网| 久久婷婷桃花五月天| 久久色五月| 99热免费| 欧美性生交A片免费看| 久久久久久久久久91| 五月婷婷中文网| 久草A片| 色五月在线综合| 五月天激情综合网站| 丁香成人五月天| 成人亚洲精品久久久久| 综合激情在线| 色色免费网战视频| 久久538| 激情婷婷九月| 色婷婷五月天堂资源| 91成人性爱视频| 五月婷婷丁香五月| 高清 码 免费看片短视频| 国内裸舞二区| 99在线视频播放| 91怕怕网| 丁香五月婷婷亚洲综合精品在线| 婷婷综合色| 丁香六月激情国产| 国产综合激情五月久久| 久色网| 欧美WW在线网| dingxiangtingtingliuyue| 丁香五月综合| 五月丁香六月激情综合| 婷婷五月天激情五月天深爱五月天| 婷婷五月天AV| 91人人操人人| 丁香五月天堂网| 亚洲天堂婷婷| 亚洲色婷婷激情| www.99热| 婷婷久久丁香五月| 久久婷婷综合五月天| 伊人婷婷大香蕉在线| 婷婷五六月丁香| 日本三级黄色大片| 97干视频在线| 日韩五月丁香| 蒲京久久无码视频| 人人干人人操人人摸人人做| 色综合天天综合成人网| Av九九| 久人操| 新激情综合| www天天爽| 99热午夜精品| 久久人人人人妻| 青草视频在线观看视频 | 色五月丁香网| 九九热99视频| 4438激情网| 在线资源av-超碰中文在线-成人AV| 五月激情偷拍| 久久月天堂| 丁香五月婷在线观看| 99综合五月免费视频色婷婷| 婷婷成人丁香色情基地30 | 亚洲色夜| www.9797国产| 六月婷色| 日本久久人| 日91高清无玛| 婷婷丁香五月天激情| 九九热99精品| 色色网站在线| 91精品国产色猫| 人人干人人操人人摸| 日韩成人影片在线观看| 丁香五月婷婷六月| 久久久.www| 五月丁香激情婷婷| 性爱五月婷| 天天透天天爱| 欧美超碰人人| 九九99香蕉在线视频播放| 九九色之九九色之88| 97碰人人操| 久99久精品| 婷婷精品免费久久| 五月开心婷婷极品激情| 99亚洲视频| 丁香六月婷婷缴情欧美| 久久久久久久人妻| 99热99免费| 色婷婷色综合久久精品V| 影音先锋人妻出差| 色综合99色| 精品乱码久久久久| 婷婷玖玖五月天| 4399在线日本A片| 色五月网址| 国产免费一区二区在线A片视频| 色五月在线| 色五天综合| 天天天综合网| 精品99在线看| 99热国产| 99热久只有精品首页| 色婷婷呢狠禁久禁| 激情五月天伊人av| 丁香五月婷婷亚洲另类| 色青青五月| 色五月美女| 狠狠色成人影片| 人妻AV在线观看| 爱射综合| 亚洲噜色| 久久精品五月| 中文字幕AV在线| 日韩抽插操逼| 97碰碰九九视频| 色五月av| 啪啪一区| 欧美大片免费观看| 五月婷婷啪| 国产综合色婷婷精品久久| 亚洲中文字幕av| 天天日天天日天天搞| 9久久精品视频| 亚洲色五月天| 午夜电影网VA内射| 草榴视频网| 九九热在线精品视频| 欧美成人网婷婷综合在线| 丁香九月综合在线| 五月丁香成人网| 五月丁香AV、伊人业余、性色熟妇| 婷婷久久女人| 婷婷丁香五月亚洲| 开心五月丁香啪| 亚洲综合一区二区| 狠狠操狠狠插| 俺去也五月天婷婷| 人人操99| 激情久久伊人| 日本久久人| 色色色在线免费视频| 最新国产AV| 91chinese在线| 99热99这里有免费的精品| 99热费观看| 夜夜穞天天穞狠狠穞AV美女按摩| 四色99久久| 99惹在线精品免费观看| 香蕉曰比| 丁香五月成人| 男人的天堂五月丁香| 五月天社区| 亚洲AV成人精品网站在线播放| 91avse| 激情开心五月亚洲| 人妻激情综合| 国产婷婷婷| 久99视频| 五月激情网综合| 97人人射| 六月丁香啪| 久久久久久久久久8888| 99精吕视频在线观看了| 婷婷狠狠综合网入口| 久婷| 久久久久人妻精选| 五月婷成人| 亚洲激情五月| 国产成人AV| 色婷| 99re这里只有精品视频了| 丁香五月婷婷深爱综合激情| 五月丁香亭亭A片| 亚洲五月婷| 成人在线日韩欧美| WWW.桔色成人.COM| 超碰人人草| 久久精品五月| 国产看真人毛片爱做A片| 亚洲免费99| 婷婷五月天干干| 丁香婷婷五月激情综合| 久9精品| 桃色五月婷婷| 久热91| 色婷婷狠| 五月天久久网站| 开心久久爱五月天| 欧洲不卡视频| 伊人久热91| 五月丁香六月片| 开心激情婷婷| 天堂综合久| 亚洲成人黄色网| 99热精品在线播放观看| 激情五月婷| 熟女国产在线一区二区三区四区| 拍真实国产伦偷精品| 人妻中文在线| 99人妻碰碰碰久久久久视| 五月丁香激情六月| 色色色在线播放| 爱射综合| 任你日视频| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 成人婷婷色五月天|