免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

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.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 懂色av粉嫩AV蜜臀AV| 国产淫熟妇| 亚洲成人无码片| 五月婷婷色影院| 九九婷婷五月天| 丁香五月六月综合激情| 婷婷月综合| 99热这里只有精品55| 一起草日本| 中文AV网站| 这里只有精品网| www.激情| 日韩久久色| 五月J香蕉婷婷| 久久9久| 天天肏天天插| 草了bav视频在线观看| 久久视这里只有精品| 99re在线播放| 天天拍天天操| 天天色视频| 色五月人妻| 婷婷丁香久久五月综合| 九九综合图片网| 97人人干人人操| 天天日天天爽夜夜爽| 97操碰在线视频| 精品人妻伦九区久久AAA片| 97婷婷丁香五月| 婷婷在线免费| 丁香婷婷激情综合五月激情 | 日日噜狠狠色综合久久| 成人五月天丁香婷| 99ri在线播放| 99热亚洲| 99免费综合网| 欧美丁香婷婷天天操| 国产偷人爽久久久久久老妇APP| 人人人人人人人草| 色色a| 欧美综合五月丁香五月天| 在线综合啪| 丁香五月天堂网| 99热这里有精品2| 美女亚洲五月丁香| 99秘 在线| 另类五月婷婷| 丁香网五月网| 日日操夜夜骑| 99操无码视频观看| 国产 码在线成人网站| 开心五月婷婷99| 思思热精品免费视频| 五月天激情久久| 狠狠狠五月婷婷六月丁香| 色日本综合| 久久婷婷五月激情综合| 精品9久| 色色色色色色色色色影院| 亚洲最大在线| 综合久| 26uuu成人网| 亚洲热久久| 国产成人网站在线观看| 色情久久久| 日韩综合久久| 在线日韩视频| 五月激情久久| 久久五月天色婷婷| 五月婷婷天| 天天做天天爱| 久久9视频| 五月婷婷综合色拍| 日日夜夜狠狠操| 国产成人亚洲综合A∨婷婷| WWW.夜夜操.com| 婷婷丁香五月天欧美| 久久精典| m色激情网| 五月丁香无码| 激情五月天婷婷五月天| 天天操综合网| 青青草婷婷久久| 亚洲色图81p| 久久激情五月| 99精品免费欧美小视频| 亚洲另类视频| 欧美大片| 91婷婷伊人牛牛| 日本色婷婷| 激情五月天开心网丁香无码| 五月婷婷婷自由综合| 天天爱天天日| 五月丁香六月婷婷激情网| 婷婷综合色五月天| 亚洲色婷婷| 99色嘟嘟精品网站| 天天爽天天爽天天爽天天爽天天爽| 91操片| 日日干综合| 五月天久久婷婷| 超碰在线人妻| 99热久97| 久久久久久久久人妻| 这里只有精品99www| 婷婷久久免费看| 天天干天天色综合| 婷色天堂| 人妻videos人妻高清| 月婷婷亚洲| 亚洲va在线∨a天堂va欧美va| 色欲天天综合| 99爱在线免费视频| 久久色婷婷| 天天日日爽| 91在线日| 丁香婷婷色九月| 亚洲射激情| 丁香激情网| 5Www色5夜| 九九久久99| 怡红院一二三| 影音先锋AV资源男人站| 五月天色欧美| 停停五月丁香| 久久久亚洲成人无码A片| 五月天丁香成人社| 午夜天堂啪啪| 狠狠操狠狠爱| 激情九月综合| 久久激情五月婷婷| 99热国内精品| 7超碰自拍| www.色五月.com| 成人做爰A片免费看视频| 国产人妻人伦精品一区二区 | 五月婷婷久草| 色婷婷先锋| 国产激情综合| 色婷婷激情小说网| 国产小精品| 精品久久99| 婷婷丁香五月综合免费视频百花| 五月大香蕉| 婷婷天堂综合| 这里只有精品免费视频| 五月天之色情综合网| 9久久久久久久久久久| 五月婷无码| 九九热这里只有精品6| 天堂久热| 五月天婷婷激情| 五月丁香婷庭在线| 五月丁香综合激情| 97色色视频| 久久99久久久久久| 日本99视频| 97人人操人人干| 五月丁香六月激情综合| 国产精品扒开腿做爽爽爽A片唱戏| 九97免费视频| 国产这里只有精品| 九九热精品| 综合网五月| 玖玖在线视| 99黄色性生活| 人妻在线中文字幕久久| 五月丁香色综合| 六月99天天婷婷激情综合| 天天插AV丝袜中| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 男人天堂AV在线一区二区| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 五月天国产婷婷精品视频在线| 天天干天天干天天干天天干天| 丁香六月婷婷激情| 久色| 综合色天天| 国产麻豆视频| 五月亭亭开心网| 天天久综合网永久入口17v| 26uuu欧美激情另类| 香蕉久久国产AV一区二区| 婷婷五月大香蕉| 五月婷婷婷婷| 婷婷五月天成人网站| 丁香五月综合| 色色色综合| 色婷婷基地在线| 国产婷婷色综合AV蜜臀AV| 五月总合激情网| 中文字幕丰满孑伦无码专区 | 婷婷在线中文字幕| www.91.com黄| 天天插天天| 99九九综合久久九九| 婷婷色情六月| se色99| 久久XX日本综合| 囯产精品久久欠久久久久久九大| 热久国产| 激情文学 综合 九月| 五月天电影网| 99综合视频在线| 五月网站| 亚洲色频| 婷婷五月天Av| 色偷偷色婷婷| 99热99这里有免费的精品| 亚洲经典三级| www.狠狠| 天天搞天天色综合| 停停五月丁香| 婷婷五月天成人影片| A片试看120分钟做受图片| 亚洲婷婷91丁香| 黑人巨粗进入警花疼哭A片| 五月天色综合服务平台| 色yeye欧美| 五月丁香啪啪网| 天天干夜晚夜操| 五月天婷婷丁香花| 激情丁香久久| ay2区| 东京热免费视频网站| 七七色色综合| 六九色综合婷婷五月天| 人妻性爱av网站| 亚州第一A片| 五月婷婷六月激情| 激情五月天视频| 超碰在线观看9| 亚洲一区先锋影音| 无码人妻一区二区三区四区| www.cao.com久久| 久热无码| 国产这里只有精品| 极品少妇高潮啪啪AV无码| 天天爽天天摸| 99精品久久久久久久婷婷久久 | 五月婷婷影| ww超碰在线| 五月婷婷色欲| 五月天婷婷Av| 97精品综合久久内射| 亚洲精品成人| 人人爱操| 亚洲成人免费电影| 亚洲经典三级| 丁香八月综合激情| 免费99色| 伊人久久大香蕉网| 思恩热国产视频右线观看| 狠狠色婷婷综合开心影视 | 五月成人丁香av91| 五月激情久久| 玖玖爱导航| 久热天堂| 丝袜人妻| 天天做天天干天天综合网| 六月丁香婷婷色狠狠久久| 亚洲亚洲人成综合网络| 六月激情婷婷| 秋霞av吧| 日韩视频女神99| 91色碰| 任你搞在线观看视频| 亚洲九区| 日韩欧美成人一区二区三区| 开心五月婷婷| 久久丁香婷| 日逼影音先锋AV男人资源站| 性爱网五月婷婷| 色综啪啪网| 淫五月停停| 五月丁香综合啪啪| 日本在线播放97| 九一娱乐在线观看视频| 无码激情AAAAA片-区区| 六月天婷婷| 亚洲精品国产熟女久久久| 色色丁香| 99久久五月婷婷| 丁香五月婷婷色偷偷| 久久五月婷综合| 丁香五月婷婷激情蜜桃| 九九久久玖玖爱| 丁香九月激情久久| 99爱免费在线观看| 色综合色色| 丁香九月婷| 免费无码毛片一区二区A片| 久操大| 五月色亚洲| 婷婷六月网| www.lingjunshare.com| 99亚洲色| a在线观看| 91 欧美| 综合精品99| 99热久| 五月丁香色狠狠干大屄| 情婷婷五月天| 色婷婷av在线观看| 色色色色色日韩午夜激情 | renre人人操国产超碰在线| 青青夜夜狠狠夜夜狠狠| 成人小说 五月天 婷婷| 色性日本| 成人在线日韩| 99久在线观看| 婷婷五月天激情综合深爱激情| 亚洲人人操BD| 激情影院丁香五月| 婷婷色操| 婷婷五月天激情基地| 99国产这里只有精品| 五月丁香在线国产| 精品色色| 婷婷色导航| 精品热九九| 91久久久久久| 丁香五月婷婷av| 思思9久久| 欧洲一区二区| 99热在线播放| WWW色色色COM| 99成人无码| www.久久久.com| www.丁香黄色五月天人与| 婷婷色综合中心站| 激情五月色综合国产精品| 操一操插一插| 五月丁香婷婷五月色| 91怕怕网| 六月丁香影院| 日韩久久系列| 五月婷婷六月基地| 成人在线观看精品| 婷婷色五月久久| 色情五月丁香| 久久最新色色色| 99噜噜| 婷婷狠狠爱| 欧美综合婷婷欧美综| 色六月视频| 亚洲欧洲中文日韩久久AV乱码| 婷久久久| 色 色 色综合com| 风流少妇A片一区二区蜜桃 | www.日韩艹| 色婷婷五月天在线观看| 99啊精典免费视频| 五月婷婷AV| 综合亚洲AV| 五月婷婷丁香社区| 嫩草国产| 97资源欧美日韩大香蕉超碰一区| 亚洲视频综合网| 狠狠五月丁香色婷| 99热99这里免费的精品| 九九操操| 五月天婷亚洲天综合网综合 | 可以免费观看的av| 婷婷5月开心6月| CHINESE熟女老女人HD视频| 久久色午夜在线导航| 538午夜激情| 久久精品99| 精品久久99| 婷婷五月天激情四射| 五月四色激情| 99亚洲视频| 国产免费av在线| 丁香五月先锋| 丁香五月图片| 色婷婷色综合| 天天天久久久| 大陆极品少妇内射AAAAAA| 啪啪丁香五月| 亚洲人人操| 伊人婷婷激情| 婷婷激情五月天激情小说| 日本狠狠爽| 超喷97免费在线视频| 日韩成人av在线| www.minyis.com【JT】实力收量可预付QQ2101460746 | 超碰av天堂| 欧洲一区二区| 中文字幕在线播放视频| 超碰91在线| sS丁香五月婷婷| 五月激情基地| 国产精品视频免费看| 天天做天天摸| 热99国产精品| 色色色色色九九九九九| 五月天婷婷无码视频| 在线看片h站| 色综合色色色| 思思热99er在线视频| 激情五月天在线视频| 色婷婷9| 综合久久99| 深爱丁香激情| 五月丁香久久网| 亚洲国产精品VA在线看黑人| 99re思思精品在线观看| 欧美黄色韩日网| 日韩啪啪网| 激情综合网激情五月俺也去| 日本va欧美va欧美| 丁香亭亭久久| 五月婷婷,狠狠操| 五月婷婷激情综合| 99色色视频| 婷婷成人综合免费视频| 综合福利网| 99婷婷国产最新视频| 久操干| 五月综合色| 久热网在线视频| 五月天激情黄色小说在线观看| 婷婷五月色播放| 天天综合网亚洲网站| 丁香五月激情综合久久| 天堂久久婷婷| 天天激情| 丁香五月婷婷综合网| 久久99草五月婷婷| 亚洲精品V天堂中文字幕| 波多野结衣不卡AV| 久久五月丁香| 色区久久| 91 九色 熟女| 婷婷五月天久久| 涩五月色婷婷| 亚洲精品五月| 99热这里精| wWwCom夜操wwW| 91日视频| 免费看成人747474九号视频在线观看| 色色色色色色色五月| 婷婷综合在线| av狠狠操| 99热97| 99热这里精| 天天曰夜夜爽| 丁香久久| 天天做天天爱天天摸| 级人人91| 色五月美女| 亚洲色无码A片一区二区麻豆| 婷婷亚洲五月| 成功精品影院| 综合99久久天天综合| 做爱夜夜干天天操| 久久AAAA片一区二区| 九九热99精品| 小泽玛利亚视频一区二区| 精品人妻久久久久久| 婷婷5月九九| 思思热久久久久思思热| 97天堂| 91久久久久久久久18| 男女啪啪视频久 9| 色爱综合五月| 婷婷操超碰| 97干视频在线| 色综合久久久久| 色五月综合网| 色婷婷久久综合久色| g00d人体西西| 激情九月婷婷| 亚洲精99| 婷婷五月六月激情| 色婷婷丁香五月| 精品99在线观看| 91人人操人人爱| 91人人爽狠狠狠| 国产午夜一区二区三区| 激情久久久久久久久久| 婷婷十月激情综合网| 婷婷五月天Av| 狠狠狠夜夜夜| 黄色aaaaa| 91操色| 99色热视频| 日撸夜撸日操| 丁香婷婷色色| 色色色综合网| 爱狠射| 激情AV在线| 五月天色图| 婷婷五月天.com| 开心五月深爱激情| 色欲av伊人久久大香线蕉影院| 婷婷五月天播播| 亚洲视频二区| aV直接看| w婷婷五月婷婷w| 華人性愛AV在線| 停停五月天激情网| 亚洲色综合| 亚洲国产精品VA在线看黑人| 丁香五月综合| 百度4399有码精品V在线观看| Y11111111111少妇电影院| 激情小说之五月| 人人摸人人澡人人| 99热在线观看| 色噜噜狠狠色综合网| 五月激情射| 精品婷婷五月天| 六月色色综合| 在线成人网址| 五月婷婷先锋| 丁香五月天欧美成人| 婷婷91| 丁香激激情网| 五月丁香网站| 丁香婷婷色色| 综合五月网| 99色色| 国产黄色大片| 婷婷五月丁香第四色超碰在线| 久久精品国产一区二区三区四区| 久久综合26p| 综合久久婷婷| 亚洲婷婷五月天| 亚洲字幕AV一区二区三区四区| AA片在线观看视频在线播放| 五月天播播| 超碰97免费在线| hd五月婷婷在线| 国产在线黄色| 六月激情网| 色久五月| www.激情| 久久99久久99精品免视看婷| 99 热| 五月婷婷伊人网| 亚洲午夜av| 99色免费| 日本五月天一页| 北京熟妇搡BBBB搡BBBB| 99视频在线观看视频| 色婷婷97| 97碰久久| 久久激情五月天| 五月天婷久精视频| 色色婷婷婷丁香五月天| 国产VA播放| 99熟女| 欧美色色色色色色| 99爱视频在线观看| 99小视频在线观看| 最新久久99视频网站| 欧美色色色色色色色色色色| 米奇激情婷婷| 欧美三级巜人妻互换| 丁香五月婷婷大香蕉| 99这里只有精品视频免费| 丁香六月亚洲综合| 五月天色软件| 亚州精品久久久久AV无码| 色婷婷A| www一起操在线观看| 亚洲性爱99| 亚洲婷婷五月天| 噜噜色五月| 五月丁香啪| 五月色情婷婷开心五月天| 色五婷婷| 久热伊人9| 天天操婷婷| 婷婷色中文| 超碰九九热| 99ri在线观看视频| 久久久激情| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 五月丁香激情婷婷综合| 五月丁香六月婷婷啪啪| 97干欧美| 五月婷婷六月丁香激情综合网| aaa久久| AV在线大香蕉| 日本99热| 婷婷五亚洲| 色色综合五月| www.婷婷五月天| www.狠狠| 亚洲欧美综合7777色亭亭| 5月婷婷综合| 国产精产国品一二三在观看| 婷婷五月天改成什么了| 激情婷婷| 婷婷五月综合啪| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 最新婷婷五月丁香| 97色天堂| 艹B高清无码| 99热视精品| www:99热视频| 色色色色热| 精品人妻久久久久久久| 色偷偷AV亚洲男人的天堂| 丁香五月在线人妻| 7777久久亚洲中文字幕| 婷婷丁香人妻天天久久| 激情五月天情色| 91精品婷婷国产综合久久| 婷婷婷久久久| 图片区 小说区 区 亚洲五月 | 99亚洲色| 久久思思99| 久久性爱视频| 欧美色性色好| 色色婷五月天| 综合AV在线| 婷婷中文字幕欧美| 日韩成人免费电影| 亚洲六月色| 色婷婷99| 日韩肏屄网| 亚洲中字AV电影在线网站| 婷婷激情丁五月| 色婷婷AV在线| aaaa久久| 国产婷婷色综合AV蜜臀AV| 丁香婷婷色五月合集| 99干在线| 日本黄色一级| 欧洲色色| 99九九精品| 色五月丁香五月天| 九九色99| 婷婷五月天激情综合婷婷五月天激情综合 | 五月成人丁香av91| 亚洲综合无码| 另类小说激情五月天| 91婷婷色| 日韩无码性爱| 超碰自拍天堂| 91在线观看九区| 成功精品影院| 久久婷婷影院| 9热视频在线观看| 婷婷激情社区| www.六月丁香看AV| 婷婷色色播五月天| 色婷婷丁香五月天在线视频 | 超碰9| 97碰碰碰| www一起操在线观看| 日韩成人免费电影| 五月天播播| 大香蕉久操| 五月婷婷啪啪啪| 影音先锋天天日| 色婷婷亚洲六月婷婷中文字幕| 精a品a视a频| 五月激情视频| 久久这里只有精彩| 丁香六月婷婷综合色| 丁香9月婷婷| 婷婷丁香久久网| 99久久婷婷国产综合精品电影| 一起草Av| 精品久久久人妻| 欧美日韩91| 99色在线视频| 天天色天天| 91精品久久久久久77777| 夜夜撸夜夜骑| 色丁香婷婷| 婷婷五月天黄色| 99精品热| 69精品人人人人| 国产看真人毛片爱做A片| 丁香色五月 97干| 热九九精品| 99热这里只有精品免费| 亚洲操精品| 综合色播| 69超碰在线| 欧美黄色一级| 综合网色综合| 色域五月婷婷丁香| 亚洲天堂久久| 最新五月天婷婷影| 婷婷五亚洲| www.五月丁香| 午夜激情婷婷| 99激情视频| 国产高潮A片羞羞视频涩涩| av在线资源| 99性爱视频| 综合色、色综合| tingtingseav| 性色婷婷| 激情综合网五月天天| 久综合网| 九色视频这里只有精品| 电影《战争与艾拉》免费观看| www超碰| 五丁香激情综合| 激情五月天伊人影院| 俺也去综合| 九色无码| 天天做天天爱| 美国天天操无码| 97资源碰碰| 色婷婷丁香AV综合| 五月天婷婷AV| 色五月丁香五月| 色吧网91| 色五月婷婷av| 丁香综合网| 久草五月婷婷| 91九色PORNY大屁股| 日韩AV中文在线观看| 五月天婷婷狂暴白浆| 九九9久九9国产视频| 刘玥av在线| 国产九九一区二区三区| 96精品久久久久久久久| Av九九| 亚洲国产精品综合色区| 九九热这里只有精品31| 五月丁香AV在线| AV操操操| 碰碰碰91| 热久久精品视频网站| 热99热9| 国产欧洲欧洲精品久久| 这里有精品| 久久丁香五月| 婷婷五月天在婷| 婷婷五月天久久| 超碰京东热av男人的天堂| 天堂网啪啪| 激情网 五月天| 久9热| 丁香色五月AV在线| 婷婷伊人五月| 久久久久婷婷| 色婷婷亚洲婷婷| 久久久精品色| 婷婷五月天 丁香五月天 裸体| 久久综合香蕉国产国产蜜臀AV| 99@久久@99精品视频| 久久精品天| 亚洲射激情| 黄色成人网站在线播放| 99热这里只有精品55| 开心五月深爱五月| 色综合网址| 亚洲色图五月丁香| 69人人操人人爽| 五月婷综合性中心| 色综合色综合网| 91久热| 超碰日日操| 五月天停停日日| 五月丁香六月婷婷开心网| 日本色色色| 狠狠色丁香久久| 热99这就是精品视频| 91丨九色丨大屁股| 丁香五月首页| 伊人狠狠丁香婷婷综合尤物| 国产精品色情AAAAA片软件| 亚洲日韩操B| 丁香五月第九色| 91干| 婷婷五月天成人在线视频| 婷婷五月综合激情小说| 黄网免费观看| 亚洲六月色婷婷| 五月天操逼网| 91凹凸在线| 99久在线| 亚洲精品99| 97久久超碰| 超碰成人电影| 五月天激情综合| 婷婷激情伍月网| 这里只有精品视频在线| 1024久婷| 99热在线看片| 激情综合网五月| 人人爱国产| 玖玖在线视频福利| 色色色网站| 久久五月丁香激情综合| 激情久久久| 99热大全在线观看| 久久精品国产AV一区二区三区 | WWW色色色COm| 丁香五月婷婷五月| 五月丁香亚洲校园欧美| 美女激情综合| 久久久ww| 色色五月天婷婷| 五月综合缴情网| 六月丁香婷婷大香蕉| 五月婷婷丁香色吧网| www.婷婷五月| 天天日日夜夜爽| 大地资源色婷婷视频在线| 五月婷婷黄色| 国产又爽又猛又粗的视频A片| 五月天婷婷久久日| 91九九九九| 99久久97久久欧美综合网| 伊人狠狠干| 激情五月婷婷视频一区二区三区| 五月色网| 男女99免费视频| 99视频内射三四| 午夜色丁香| 91色逼| 国产熟妇的荡欲午夜视频| 色婷婷五月天中文字幕| 五月婷婷AV| 97婷婷丁香五月天激情图片| 99精品视频在线观看| 婷婷丁香六月综合激情站| 99精品久久| 激情五月婷婷啪啪| 一起草无码| 99国产精品久久久久久久久久久| 日日干日日s| 性爱七区| 操人妻AV| 欧美六月| 人人爽欧美婷婷久久久五月丁香| 大香蕉丁香五月| 激情五月天电影| 人人草人人爱手机视频看看| 欧美123区免| 色色色综合网| 九九在线视频| 激情九九这里只有精品| AV片在线观看| 色色激情五月天| 五月婷婷五月丁香| 97色伦另类图片小说视频| 4399无码视频二区| 天天爽天天操| 可以免费观看的av| 日本性激情色播| 久久五月综合| 九九精品热播| 狠狠操狠狠色| 蜜桃人妻无码AV天堂三区| 日韩无码人妻一区二区三区综合| 人操综合| 99超级碰碰| 色婷婷小说| 这里只有精品视频在线观看免费| 啪啪啪大香蕉| 无码人妻一区| WWW.夜夜| 操日本人妻视频| 久久综合九九| 91vip在线观看| 中文字幕成人日韩| 国产毛片操B| 婷婷五月天影院| 丁香五月天堂| 182TV大香蕉| 婷婷网五月天| 久久久久丁香婷婷五月天| 殴美日比视频| 日韩一级A片黄色| 人操人| 婷婷五月综合中文字幕| 另类激情五月| 色综合天堂| 免费在线观看欧美激情xx小视频| 丁香六月婷婷一区| 精品久久9| 9l视频自拍9l九色9l成人| 性生生活大片又黄又| 激情五月婷黄版| 色导航色婷婷五月天在线观看| 99爱视频精品| 亚洲婷婷在线播放十月| 亚洲AV久久久久久久久久久久久久久久 | 大香蕉久久| 一起草性爱不卡视频| 五月丁香天堂网婷婷| AV在线大香蕉| 91尤物九色在线| 草草操操| 色婷婷视频| 五月天婷基地| 99re在线观看| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 精品综合久久久久久五月天| 91日本在线免费| 97超级碰人人| 91日精品| 铁牛TV人妻| av在线资源| 99碰碰| 99er6| 五月综合777| 色婷婷六月天在线| 五月丁香六月激情视频| 99色视频在线观看| 丁香五月综合在线视频| 婷香五月网在线| 综合狠狠五月婷婷| 色情激情五月| 俺去也五月| 这里只有精品无码| 五月婷婷啪啪| 国自产拍偷拍精品啪啪一区二区| 玖玖综合色| 五月天开心网| 丁香五月婷婷欧美性爱| 精品一二三区久久AAA片| 久9热| 大色鬼综合| 丁香五月天激情四射网| 婷婷狠狠青青| 欧洲综合视频| 狠狠色五月激情| 久久免费婷婷视频| 五月丁香色婷婷色| 人妻久久久久久| av网站免费在线| 日韩AV片| 亚洲九九在线| 五月天狠狠色| 国产XXXX搡XXXXX搡麻豆| 激情丁香五月| 五月天伊人久久| 99re热精品在线视频| 久久五月网| 青青草六月丁香| 五月丁香啪啪| 99精品偷自拍| 99色.com| 色五月天综合| 爽极品色| 深夜婷婷 丁香| 久久久.COM| 婷婷 亚洲图片 丁香| 五月丁香婷中文字幕 | 天天日夜夜| 99免费超碰在线| 精品99在线观看| 色综合五月在线| 亚洲AV综合网| 婷婷狠狠综合网入口| 69人人操人人爽| 综合久久99| 亚洲男女激情| 九月色婷婷| 五月久久婷婷天堂视频| 色五月婷婷色| 成人五月天视频播放| 蜜臀99精品| 色五月激情五月| 色99网| 五月综合精品| 99噜噜噜在线播放| 日韩综合天堂| 激情五月,婷婷五月,丁香五月| 久久色9| 色欧美一级| 99热99网| 久99视频| 天天操五月天| 色99热| 色9999日韩国产| 好看的国产精品| 五月天婷婷久久视频| 九九精品自拍| 色色色9 9 9| 九九热视频免费观看| 99色综合| 五月丁香久久婷| 5月婷婷激情6月| 色婷婷影院| 日本综合色色| 婷婷五月天Av| 久久99精品久久久久久三级| 天天肏视频| 综合一本道| 狠狠精品干练久久久无码中文字幕| 99caobi| 天天操电影院色狼性av| 六月99天天婷婷激情综合| 99网| 成人色图情色成人网 www.5b5b5bcom 五月天 | 九九在线视频| 激情五月丁香五月| 久99久在线| 亚洲狠狠婷婷| 天天日天天干天天操| 久久女婷| 婷婷丁香社区网| 久热免费| 欧亚洲在线高清视频| 丁香六月色婷婷| 激情五月婷婷丁香综合网| 亚洲成人一区| 婷婷五月天色色| 欧美 日韩 成人 在线| 丁香五月婷婷色| 久久久久久9热不雅视频| 国产67194| 天天插天天插天天插天天插 | 思思热视频| 激情婷| 五月天婷婷在线观看| 疯狂做受XXXX高潮A片动画| 国产色99| 五月丁香综合激情网| 就爱日五月天| 激情开心五月天婷婷基地丁香社区| 思思热视频在线观看| 日本偷拍九九九| 26uuu国产| 丁香五月影视| 色99在线| 99这里只有免费的小视频在线观看| 日韩aaa| 丁香伊人网| 99久久网站| 情婷婷五月天在线| 久久婷婷五月天丁香| 五月丁香激情综合| 天天操夜夜操| 日日日影院| 亚洲黄色av网站| 人人摸人人操人人爽| 久久婷视频| 99碰碰| 青娱乐美女福利视频美臀| 久久精彩免费视频| 97干97色| 久草热8精品视频在线观看| 国产伦理精品高清在线观看网站一区二区 | 99热国内精品| 天天色播| 婷婷五月天婷婷| 99精品高潮| 97干在线| 5月婷婷五月天| 国产综合色婷婷精品久久| 色欲久久久久久综合网综合网| 中文字幕高清av| 97啪啪| 青青草六月丁香| 99热久久日本| 丁香色色网| 激情五月丁香综合网站| 婷婷五月综合色小姐小说| 成人超碰Av| 丁香九月综合| 婷婷五月天国产传媒| 日韩精品色| 99色精品| 色狠狠色噜噜AV天堂五区| 亚洲国产精品成人免费一区久久久在线观看AAAA | 丁香六月激情四射| 天天在线久久综合 | 97色女人在线| 中国丰满熟女A片免费观| www.狠狠色.com| 亚洲V国产V欧美V久久久久久| 99热这里只是精品| 亚洲欧美成人在线| 五月婷婷视频| 深爱婷婷网| 婷婷色导航| 婷婷五月天激情在线观看| 97操碰98| www.色婷婷| 亚洲色图五月丁香| 五月婷婷五月天亚洲无码| 人人干人人操外国| 五月天大香蕉| 91色涩| 婷婷五月天激情在线| 超碰精品国产首页| 欧美黄色一级录像| 国产99热| 九九在线视频| 国产精品香蕉| 99这里只有精品国产| 色呦呦在线| 夜夜穞天天穞狠狠穞AV美女按摩| 亚洲无码成人网| 久操福利| 久久99精品久久久久久青青AR| 97碰碰视频在线观看| www,欧美干干干干干干| 九热视频免费观看| 777米奇影视第四色| 国产视频婷婷| 婷婷五月图片小说视频| 久综合九| 九九视屏| 九久久婷婷| 狠狠精品干练久久久无码中文字幕| 开心五月网 | 丁香五月在线播放| 婷婷五月天第四色| www.思思99热| 人妻五月天激情开心网| 午夜九九九九九九| 青吴乐视频| 激情6月| 久久99国产综合精品免费| 丁香在线视频| 79精品视频在线观看,| 9久精品| 99视频精品| 日本久久99| 欧美三级欧美一级| 色色五月丁香婷婷| 人妻激情综合| WWW,五月| 色五月大| 婷婷色啪| 99九九在线视频| 大香蕉久热| 精品在线网站| 9久久久久| 9久久精品| 色色a| www.五月丁香| AV性爱在线| 天天综合精品| 99ree6| 激情99| 国产精品色情AAAAA片软件| 五月丁香91| 激情欧美五月丁香| 俺去也五月| 亚洲国产精品SUV| 91 影音先锋| 婷婷五月丁香图片人人操| 亚洲欧美婷婷五月色综合| 午夜成人网站在线观看| 久久这里只有国产视频| 亚洲中文无码成人| 丁香婷婷人妻综合网| 99久久99九九九99九他书对| 亚洲自拍天堂| 色999五月色| 天天日天天插天天操| 九九热中文| 亚洲AV激情五月综合网| 婷婷五月丁香啪啪| 丁香婷婷精品视频| 青青草婷婷综合五月| 天天拍夜夜撸 | 亚洲AV日韩在线观看| www.99色| 182tv992tv人之初午夜免费观看| 亚洲婷婷欧美婷婷| 色色色99| 欧美色色日韩| 99精品7| 日本欧美成人片AAAA| 色婷婷五月综合色婷婷| 色情五月婷| 久久性爱网站| 无码少妇高潮喷水A片免费| 婷婷五月激情小说| 丁香六月成人网| 精品国产乱码久久久久夜深人妻 | 色五月婷婷网| 激情五月深爱五月观看| 丁香五月激情五月开心五月| 天堂色婷婷| 婷婷va| 日韩三级高清无码| 色九四色| 五月婷婷九月婷婷九月婷婷| a网站免费观看| AV在线观看网站| 一级二级色大片| 色婷六月| 亚洲婷婷丁香| 天天se在线视频| 亚洲人妻电影| 国产精品日日躁夜夜躁| 亚洲va在线| 五月丁香色停停啪啪啪| 丁香五月天导航| 婷婷五月天网| 综合色色网| 啪啪色区| 91AV婷婷| 怡红院视频| 99免费综合网| 天天做天天爱天天爽| 影音先锋一区| 99在线观看精品| 五月婷婷中文| 色婷婷综合久色AV五色最新| 99热都是精品| 97超级操操| 色射影院| 激情小说五月天社区丁香| 激情六月天婷婷| 婷婷伊人75| 久久停停超碰| 国产精品久久99| 婷婷五月天激情网| 天天爽日日搞| 99热亚洲只有色| 99er精品视频| www激情网站| 99色婷婷| 欧美久久五月婷婷| AAA级久久久精品| 色狠久| 国产ava| 操碰91| 色综合性视频| 91热久| 久久99视频| 678五月丁香亚洲综合| 激情五月丁香五月| 五月开心六月婷婷在线播放网站| 国产日比| 天天插天天干天天舔| 国产AV一区二区三区日韩| 激情五月综合视频| 色综合99无码| 中文AV网| 激情五月天色| 热99玖玖99玖玖99九九| 久色网五月| 久久综合五月婷婷| 丁香六月在线| 丁香五月冃欧美| 激情99| 色婷婷基地| 日日操天天爽| Www99热| 超碰激情网| 就99这里只有精品| 淫视馆av三区| 五月丁香婷婷色色| 色婷婷六月精品| 婷婷色啪| 亚洲色久| 日本婷婷| 五月天婷婷丁香花| 婷婷综合网性|