亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

從藍(lán)橋杯國賽到實(shí)戰(zhàn):基于51單片機(jī)的門禁系統(tǒng)設(shè)計(jì)與狀態(tài)機(jī)編程

從藍(lán)橋杯國賽到實(shí)戰(zhàn):基于51單片機(jī)的門禁系統(tǒng)設(shè)計(jì)與狀態(tài)機(jī)編程 1. 項(xiàng)目概述從“國賽真題”到“實(shí)戰(zhàn)系統(tǒng)”的跨越看到“藍(lán)橋杯單片機(jī)第三屆國賽門禁系統(tǒng)”這個(gè)標(biāo)題很多參加過藍(lán)橋杯的朋友估計(jì)會(huì)心一笑腦子里立刻浮現(xiàn)出那塊熟悉的CT107D開發(fā)板還有那些讓人又愛又恨的LED、數(shù)碼管和矩陣鍵盤。沒錯(cuò)這正是一道經(jīng)典的國賽真題。但今天我們不打算僅僅復(fù)現(xiàn)一遍題目要求交個(gè)卷就完事。我想做的是以這道真題為骨架把它填充、擴(kuò)展成一個(gè)更貼近真實(shí)工程應(yīng)用的、具備完整功能的“門禁系統(tǒng)”原型。為什么這么做因?yàn)楸荣愵}目往往是高度抽象和簡化的它考察的是核心算法和模塊驅(qū)動(dòng)能力但距離一個(gè)能實(shí)際運(yùn)行、考慮周全的系統(tǒng)還有差距。比如真題可能只要求你驗(yàn)證一個(gè)密碼控制一個(gè)繼電器模擬“開門”但真實(shí)的門禁需要管理多個(gè)用戶、記錄操作日志、處理異常情況如連續(xù)錯(cuò)誤輸入等。所以這篇內(nèi)容的目標(biāo)讀者很明確正在備賽藍(lán)橋杯特別是沖刺國賽的電子、物聯(lián)網(wǎng)、嵌入式相關(guān)專業(yè)的學(xué)生以及所有希望通過一個(gè)具體項(xiàng)目來深入學(xué)習(xí)51單片機(jī)系統(tǒng)設(shè)計(jì)、模塊驅(qū)動(dòng)和狀態(tài)機(jī)編程的愛好者。我們將從比賽的原題要求出發(fā)一步步構(gòu)建一個(gè)功能更完善、代碼結(jié)構(gòu)更清晰、更易于維護(hù)和擴(kuò)展的門禁系統(tǒng)。你將學(xué)到的不僅僅是點(diǎn)亮一個(gè)數(shù)碼管或者掃描一個(gè)鍵盤而是如何將這些零散的模塊有機(jī)地組合起來形成一個(gè)穩(wěn)定、可靠的嵌入式系統(tǒng)軟件架構(gòu)。這對(duì)于你未來從事任何嵌入式開發(fā)工作都是極其寶貴的經(jīng)驗(yàn)。2. 系統(tǒng)整體設(shè)計(jì)與核心思路拆解2.1 原題回顧與需求深化首先我們得搞清楚比賽原題的核心要求是什么。根據(jù)記憶和常見的賽題資料第三屆國賽的門禁系統(tǒng)核心通常包括輸入部分通過4x4矩陣鍵盤設(shè)置和輸入密碼。顯示部分使用8位數(shù)碼管顯示輸入密碼、系統(tǒng)狀態(tài)如“OPEN”、“Err”、以及可能的菜單信息??刂撇糠置艽a驗(yàn)證通過后控制一個(gè)繼電器或LED模擬動(dòng)作表示“開門”同時(shí)可能伴有蜂鳴器提示音。存儲(chǔ)部分密碼需要掉電保存這意味著要使用開發(fā)板上的EEPROM如AT24C02來存儲(chǔ)密碼。狀態(tài)管理系統(tǒng)有多個(gè)狀態(tài)如待機(jī)狀態(tài)、密碼輸入狀態(tài)、密碼驗(yàn)證狀態(tài)、管理員設(shè)置狀態(tài)等。我們的深化設(shè)計(jì)就是在這些基礎(chǔ)上增加真實(shí)場景的考量多用戶支持不止一個(gè)密碼??梢栽O(shè)計(jì)一個(gè)管理員密碼用于進(jìn)入設(shè)置模式和多個(gè)普通用戶密碼。操作日志雖然CT107D板載資源有限但我們可以利用EEPROM的剩余空間簡單記錄最近幾次的開門事件時(shí)間戳用上電后的計(jì)時(shí)替代。安全策略連續(xù)輸入錯(cuò)誤密碼N次后系統(tǒng)鎖定一段時(shí)間并報(bào)警。人性化交互更明確的視覺和聲音反饋。比如輸入每一位密碼時(shí)對(duì)應(yīng)數(shù)碼管位閃爍或顯示“*”驗(yàn)證成功和失敗有不同的聲光提示組合。2.2 硬件平臺(tái)與模塊驅(qū)動(dòng)規(guī)劃我們基于經(jīng)典的藍(lán)橋杯CT107D開發(fā)板單片機(jī)為IAP15F2K61S2進(jìn)行設(shè)計(jì)。需要驅(qū)動(dòng)的核心模塊如下CPUIAP15F2K61S2與STC89C52核心兼容但功能更強(qiáng)。重點(diǎn)利用其內(nèi)部的EEPROM避免外擴(kuò)。顯示模塊8位共陽數(shù)碼管通過74HC138譯碼器進(jìn)行位選通過74HC573鎖存器段選。這是顯示交互的核心。輸入模塊4x4矩陣鍵盤。這是密碼和命令的輸入來源。輸出控制模塊繼電器控制“門鎖”的開關(guān)。通常連接在某個(gè)P口如P0^4通過三極管驅(qū)動(dòng)。蜂鳴器用于提示音。通常由ULN2003驅(qū)動(dòng)連接在某個(gè)P口如P0^5。LED指示燈可用于指示系統(tǒng)狀態(tài)如電源、報(bào)警、設(shè)置模式。存儲(chǔ)模塊單片機(jī)內(nèi)部EEPROM。用于保存系統(tǒng)密碼、操作日志等關(guān)鍵數(shù)據(jù)。驅(qū)動(dòng)這些模塊是基礎(chǔ)。但比賽和項(xiàng)目的分水嶺在于代碼組織。我們不能把所有功能都堆在main.c里。一個(gè)清晰的驅(qū)動(dòng)層劃分是必須的。2.3 軟件架構(gòu)狀態(tài)機(jī)與模塊化這是本項(xiàng)目的靈魂。我們將采用“前后臺(tái)系統(tǒng)”架構(gòu)結(jié)合“狀態(tài)機(jī)”思想。后臺(tái)一個(gè)精準(zhǔn)的定時(shí)器中斷如Timer01ms或2ms中斷一次。它負(fù)責(zé)提供系統(tǒng)“心跳”用于數(shù)碼管動(dòng)態(tài)掃描、按鍵消抖計(jì)時(shí)、軟件延時(shí)計(jì)時(shí)等所有與時(shí)間相關(guān)的任務(wù)。這是系統(tǒng)穩(wěn)定運(yùn)行的基礎(chǔ)。前臺(tái)主循環(huán)while(1)。它負(fù)責(zé)根據(jù)當(dāng)前系統(tǒng)狀態(tài)調(diào)用相應(yīng)的功能函數(shù)。這里就是狀態(tài)機(jī)發(fā)揮作用的地方。我們定義幾個(gè)核心的系統(tǒng)狀態(tài)枚舉類型typedef enum { SYS_MODE_NORMAL 0, // 正常待機(jī)/輸入模式 SYS_MODE_INPUT, // 密碼輸入中 SYS_MODE_CHECK, // 驗(yàn)證中短暫狀態(tài) SYS_MODE_OPEN, // 開門狀態(tài)繼電器吸合持續(xù)數(shù)秒 SYS_MODE_ERROR, // 密碼錯(cuò)誤 SYS_MODE_LOCKED, // 系統(tǒng)鎖定多次錯(cuò)誤后 SYS_MODE_ADMIN, // 管理員模式用于修改密碼 SYS_MODE_SET_PWD // 設(shè)置密碼子狀態(tài) } System_Mode_t;主循環(huán)的結(jié)構(gòu)將變得非常清晰System_Mode_t current_mode SYS_MODE_NORMAL; while(1) { key_value Key_Scan(); // 按鍵掃描函數(shù) switch(current_mode) { case SYS_MODE_NORMAL: // 顯示歡迎信息或時(shí)鐘 if(key_value KEY_ADMIN) { // 按下特定鍵進(jìn)入管理 current_mode SYS_MODE_ADMIN; } else if(key_value ! KEY_NULL) { // 開始輸入密碼 current_mode SYS_MODE_INPUT; input_index 0; } break; case SYS_MODE_INPUT: // 處理密碼輸入顯示‘*’或數(shù)字 Input_Process(key_value); break; // ... 其他狀態(tài)的處理 case SYS_MODE_OPEN: // 控制繼電器打開倒計(jì)時(shí)結(jié)束后回到NORMAL Door_Open_Process(); break; } Display_Process(); // 顯示函數(shù)根據(jù)狀態(tài)更新顯示內(nèi)容 }這種結(jié)構(gòu)使得邏輯條理分明添加新功能比如增加一個(gè)“脅迫報(bào)警”功能輸入特定密碼開門同時(shí)靜默報(bào)警只需要增加新的狀態(tài)和對(duì)應(yīng)的處理函數(shù)即可不會(huì)影響原有代碼。3. 核心模塊驅(qū)動(dòng)與關(guān)鍵代碼解析3.1 定時(shí)器中斷系統(tǒng)的脈搏幾乎所有需要定時(shí)的操作都依賴于此。我們配置Timer0為16位自動(dòng)重裝模式中斷頻率為1ms假設(shè)使用11.0592MHz晶振計(jì)算重裝值。void Timer0_Init(void) { AUXR 0x7F; // 定時(shí)器時(shí)鐘12T模式 TMOD 0xF0; // 設(shè)置定時(shí)器模式 TMOD | 0x01; // 定時(shí)器0模式116位非自動(dòng)重裝注意IAP15可用模式0自動(dòng)重裝這里為通用性 TL0 0x66; // 設(shè)置定時(shí)初值1ms TH0 0xFC; // 設(shè)置定時(shí)初值 TF0 0; // 清除TF0標(biāo)志 TR0 1; // 定時(shí)器0開始計(jì)時(shí) ET0 1; // 允許定時(shí)器0中斷 EA 1; // 打開總中斷 } void Timer0_ISR() interrupt 1 { static unsigned int ms_count 0; TL0 0x66; // 重裝初值 TH0 0xFC; ms_count; if(ms_count 2) { // 每2ms執(zhí)行一次 ms_count 0; Key_Scan_Flag 1; // 置位按鍵掃描標(biāo)志 Display_Scan_Flag 1; // 置位數(shù)碼管掃描標(biāo)志 } // 軟件計(jì)時(shí)器 if(door_open_timer 0) door_open_timer--; if(error_lock_timer 0) error_lock_timer--; // ... 其他需要計(jì)時(shí)的變量 }注意在中斷服務(wù)程序ISR中代碼必須盡可能短小高效。我們只設(shè)置標(biāo)志位真正的掃描和處理邏輯放到主循環(huán)中根據(jù)標(biāo)志位執(zhí)行。這就是“后臺(tái)計(jì)時(shí)前臺(tái)處理”的思想。另外重裝初值的操作一定要準(zhǔn)確且放在中斷函數(shù)開頭或結(jié)尾避免計(jì)時(shí)誤差累積。3.2 數(shù)碼管動(dòng)態(tài)掃描穩(wěn)定無閃爍的顯示顯示是門面閃爍或重影會(huì)極大影響體驗(yàn)。我們的顯示函數(shù)Display_Process()會(huì)在主循環(huán)中根據(jù)Display_Scan_Flag標(biāo)志被調(diào)用。unsigned char display_buffer[8]; // 顯示緩沖區(qū)存放8個(gè)數(shù)碼管的段碼值 unsigned char display_index 0; // 當(dāng)前掃描的位 void Display_Process(void) { if(Display_Scan_Flag) { Display_Scan_Flag 0; // 先關(guān)閉所有位選消隱 P2 (P2 0x1F) | 0xE0; // 控制74HC138的位選鎖存器通道 P0 0xFF; // 段碼全滅或根據(jù)硬件是共陽共陰決定 P2 0x1F; // 送入位選信號(hào) P2 (P2 0x1F) | 0xC0; // 選擇控制位選的74HC573 P0 0x01 display_index; // 選中第display_index位數(shù)碼管 P2 0x1F; // 送入段選信號(hào) P2 (P2 0x1F) | 0xE0; // 選擇控制段選的74HC573 P0 display_buffer[display_index]; // 輸出該位對(duì)應(yīng)的段碼 P2 0x1F; // 指向下一位實(shí)現(xiàn)動(dòng)態(tài)掃描 display_index; if(display_index 8) display_index 0; } }關(guān)鍵點(diǎn)消隱在切換位選前先關(guān)閉段選或位選可以徹底消除切換過程中的“鬼影”。P2口操作CT107D板通過P2口的高三位P2.7 P2.6 P2.5控制74HC138進(jìn)而選擇操作哪個(gè)鎖存器位選或段選。P2 0x1F操作是為了在操作P0口時(shí)不影響P2高三位對(duì)其他外設(shè)的控制。這是這塊開發(fā)板硬件連接決定的必須熟練掌握。緩沖區(qū)display_buffer是核心。主程序根據(jù)系統(tǒng)狀態(tài)更新這個(gè)緩沖區(qū)的內(nèi)容。顯示驅(qū)動(dòng)函數(shù)只負(fù)責(zé)把它掃描出來實(shí)現(xiàn)了顯示與邏輯的分離。3.3 矩陣鍵盤掃描可靠的輸入捕獲鍵盤掃描同樣放在主循環(huán)由Key_Scan_Flag觸發(fā)。我們采用“行列反轉(zhuǎn)法”或“逐行掃描法”。這里以穩(wěn)定的“行列反轉(zhuǎn)法”為例unsigned char Key_Scan(void) { unsigned char key_value KEY_NULL; static unsigned char key_last KEY_NULL; static unsigned char key_debounce_timer 0; if(Key_Scan_Flag) { Key_Scan_Flag 0; P3 0x0F; // 低四位行輸出0高四位列置1輸入 if((P3 0xF0) ! 0xF0) { // 有按鍵按下 if(key_debounce_timer DEBOUNCE_TIME) { key_debounce_timer; } else { // 消抖時(shí)間到確認(rèn)按下 key_value Key_Get_Code(); // 獲取鍵值 if((key_last KEY_NULL) (key_value ! KEY_NULL)) { key_last key_value; return key_value; // 返回新按下的鍵值 } } } else { // 無按鍵按下 key_debounce_timer 0; key_last KEY_NULL; } } return KEY_NULL; } unsigned char Key_Get_Code(void) { unsigned char temp, row, col; P3 0x0F; temp P3 0xF0; if(temp 0xF0) return KEY_NULL; col (~temp) 4; // 獲取列號(hào)0-3 P3 0xF0; temp P3 0x0F; row ~temp 0x0F; // 獲取行號(hào)0-3 // 將行號(hào)和列號(hào)轉(zhuǎn)換為自定義的鍵值例如0-15 return (row * 4 col); }實(shí)操心得消抖是必須的。DEBOUNCE_TIME一般設(shè)為10-20對(duì)應(yīng)10-20ms。key_last用于實(shí)現(xiàn)“按下一次只返回一次鍵值”防止主循環(huán)過快導(dǎo)致一次物理按下被誤認(rèn)為多次按下。這是實(shí)現(xiàn)可靠單次按鍵響應(yīng)的關(guān)鍵技巧。3.4 EEPROM讀寫密碼的持久化存儲(chǔ)IAP15單片機(jī)內(nèi)部集成了EEPROM使用非常方便。重點(diǎn)在于理解其扇區(qū)結(jié)構(gòu)和讀寫時(shí)序。// 扇區(qū)擦除最小擦除單位為一個(gè)扇區(qū)512字節(jié) void EEPROM_Sector_Erase(unsigned int addr) { IAP_ADDRH (unsigned char)(addr 8); IAP_ADDRL (unsigned char)(addr); IAP_CMD 0x03; // 扇區(qū)擦除命令 IAP_TRIG 0x5A; IAP_TRIG 0xA5; IAP_Disable(); // 關(guān)閉IAP功能 } // 寫一個(gè)字節(jié) void EEPROM_Write_Byte(unsigned int addr, unsigned char dat) { IAP_ADDRH (unsigned char)(addr 8); IAP_ADDRL (unsigned char)(addr); IAP_DATA dat; IAP_CMD 0x02; // 寫命令 IAP_TRIG 0x5A; IAP_TRIG 0xA5; IAP_Disable(); } // 讀一個(gè)字節(jié) unsigned char EEPROM_Read_Byte(unsigned int addr) { unsigned char dat; IAP_ADDRH (unsigned char)(addr 8); IAP_ADDRL (unsigned char)(addr); IAP_CMD 0x01; // 讀命令 IAP_TRIG 0x5A; IAP_TRIG 0xA5; dat IAP_DATA; IAP_Disable(); return dat; }存儲(chǔ)策略設(shè)計(jì) 我們不會(huì)在每個(gè)扇區(qū)只存一個(gè)密碼。通常我們固定使用第一個(gè)扇區(qū)的開頭幾十個(gè)字節(jié)。例如地址 0x0000 - 0x0005: 存儲(chǔ)管理員密碼6位。地址 0x0010 - 0x0015: 存儲(chǔ)用戶1密碼。地址 0x0020 - 0x0025: 存儲(chǔ)用戶2密碼。地址 0x0100 開始 循環(huán)記錄操作日志時(shí)間戳、用戶ID、結(jié)果。重要警告EEPROM有擦寫壽命通常10萬次。絕對(duì)避免在程序運(yùn)行中頻繁寫入密碼修改是低頻事件可以接受。但像“記錄每次按鍵”這樣的操作如果直接寫EEPROM很快就會(huì)將其寫壞。正確的做法是在RAM中緩存定時(shí)或滿足條件如一次開門操作完成后再一次性寫入。對(duì)于日志可以采用循環(huán)隊(duì)列的方式寫滿一個(gè)扇區(qū)再擦除下一個(gè)。4. 狀態(tài)機(jī)邏輯的詳細(xì)實(shí)現(xiàn)與流程控制有了驅(qū)動(dòng)基礎(chǔ)我們深入核心的業(yè)務(wù)邏輯——狀態(tài)機(jī)。我們以“用戶輸入密碼開門”這個(gè)主流程為例詳細(xì)拆解。4.1 狀態(tài)定義與全局變量首先定義更詳細(xì)的狀態(tài)和必要的全局變量。// 系統(tǒng)狀態(tài)枚舉同上略 System_Mode_t sys_mode SYS_MODE_NORMAL; // 密碼相關(guān) unsigned char admin_password[6] {1,2,3,4,5,6}; // 默認(rèn)管理員密碼實(shí)際從EEPROM讀取 unsigned char user_password[6] {6,6,6,6,6,6}; // 默認(rèn)用戶密碼 unsigned char input_buffer[6]; // 輸入緩沖區(qū) unsigned char input_index 0; // 當(dāng)前輸入位置 // 安全相關(guān) unsigned char error_count 0; // 連續(xù)錯(cuò)誤次數(shù) unsigned int lock_timer 0; // 鎖定剩余時(shí)間單位秒由定時(shí)器遞減 // 門控制相關(guān) unsigned int door_open_timer 0; // 開門保持時(shí)間4.2 主循環(huán)中的狀態(tài)分發(fā)主循環(huán)while(1)的結(jié)構(gòu)非常簡潔它只負(fù)責(zé)根據(jù)sys_mode調(diào)用對(duì)應(yīng)的處理函數(shù)。void main() { System_Init(); // 初始化定時(shí)器、IO口、讀取EEPROM密碼等 sys_mode SYS_MODE_NORMAL; while(1) { // 1. 按鍵掃描底層驅(qū)動(dòng)返回鍵值 unsigned char key Key_Scan(); // 2. 狀態(tài)機(jī)處理 switch(sys_mode) { case SYS_MODE_NORMAL: Normal_Mode_Process(key); break; case SYS_MODE_INPUT: Input_Mode_Process(key); break; case SYS_MODE_CHECK: Check_Mode_Process(); // 通常無按鍵處理只做驗(yàn)證和狀態(tài)跳轉(zhuǎn) break; case SYS_MODE_OPEN: Open_Mode_Process(); break; case SYS_MODE_ERROR: Error_Mode_Process(); break; case SYS_MODE_LOCKED: Locked_Mode_Process(); break; case SYS_MODE_ADMIN: Admin_Mode_Process(key); break; // ... 其他狀態(tài) } // 3. 顯示刷新根據(jù)當(dāng)前狀態(tài)和全局變量更新display_buffer Display_Update(); // 4. 其他后臺(tái)任務(wù)如喂狗如果使能了看門狗 } }4.3 關(guān)鍵狀態(tài)處理函數(shù)剖析我們挑兩個(gè)最復(fù)雜的狀態(tài)SYS_MODE_INPUT和SYS_MODE_ADMIN來看看。Input_Mode_Process函數(shù)void Input_Mode_Process(unsigned char key) { if(key KEY_NULL) return; // 無按鍵直接返回 if(key 0 key 9) { // 輸入數(shù)字 if(input_index 6) { input_buffer[input_index] key; input_index; // 更新顯示例如讓對(duì)應(yīng)位置的數(shù)碼管顯示‘*’ Display_Show_Input(input_index, *); Beep_Short(); // 短鳴提示 } else { Beep_Long(); // 輸入已滿長鳴警告 } } else if(key KEY_CLEAR) { // 清除鍵 input_index 0; memset(input_buffer, 0, 6); Display_Clear_Input(); Beep_Short(); } else if(key KEY_ENTER) { // 確認(rèn)鍵 if(input_index 6) { sys_mode SYS_MODE_CHECK; // 轉(zhuǎn)入驗(yàn)證狀態(tài) Beep_Short(); } else { // 輸入位數(shù)不足提示錯(cuò)誤 Display_Show_Error(SHORT); sys_mode SYS_MODE_ERROR; error_count; } } else if(key KEY_CANCEL) { // 取消鍵 sys_mode SYS_MODE_NORMAL; input_index 0; Display_Show_Welcome(); } }這個(gè)函數(shù)處理了密碼輸入過程中的所有交互數(shù)字錄入、刪除、確認(rèn)和取消。它緊密地更新了input_buffer和顯示。Check_Mode_Process函數(shù)void Check_Mode_Process(void) { // 這個(gè)狀態(tài)通常由定時(shí)器或直接調(diào)用觸發(fā)不依賴按鍵 // 模擬一個(gè)短暫的“驗(yàn)證中”顯示增強(qiáng)體驗(yàn) static unsigned char check_delay 0; if(check_delay 0) { Display_Show_Message(CHECk); } check_delay; if(check_delay 50) { // 延時(shí)約100ms后執(zhí)行驗(yàn)證 check_delay 0; if(Password_Compare(input_buffer, user_password)) { // 密碼正確 sys_mode SYS_MODE_OPEN; door_open_timer 3000; // 開門保持3秒 Relay_Control(ON); // 打開繼電器 error_count 0; // 清空錯(cuò)誤計(jì)數(shù) Log_Write(LOG_TYPE_OPEN, USER_ID_NORMAL); // 寫日志 Display_Show_Message(OPEN ); Beep_Success(); // 成功提示音 } else { // 密碼錯(cuò)誤 sys_mode SYS_MODE_ERROR; error_count; if(error_count 3) { sys_mode SYS_MODE_LOCKED; lock_timer 60; // 鎖定60秒 Display_Show_Message(LOCkd); Beep_Alarm(); // 報(bào)警音 } else { Display_Show_Message(Err ); Beep_Fail(); } Log_Write(LOG_TYPE_FAIL, USER_ID_NORMAL); } // 清理輸入緩沖區(qū) input_index 0; memset(input_buffer, 0, 6); } }驗(yàn)證狀態(tài)是一個(gè)短暫的過渡狀態(tài)。這里我們加入了一個(gè)簡單的延時(shí)讓“驗(yàn)證中”的提示能夠被用戶看到而不是瞬間跳轉(zhuǎn)提升了交互的友好度。驗(yàn)證邏輯本身很簡單就是內(nèi)存數(shù)組的比較。但這里連接了安全策略錯(cuò)誤計(jì)數(shù)鎖定和日志記錄體現(xiàn)了系統(tǒng)的完整性。Admin_Mode_Process函數(shù)簡化版 管理員模式是一個(gè)子狀態(tài)機(jī)。進(jìn)入后可能需要先驗(yàn)證管理員密碼然后提供菜單如“1.修改用戶密碼”“2.查看日志”“3.恢復(fù)出廠設(shè)置”。void Admin_Mode_Process(unsigned char key) { static Admin_SubMode_t sub_mode ADMIN_SUB_WAIT_PWD; switch(sub_mode) { case ADMIN_SUB_WAIT_PWD: // 類似用戶輸入驗(yàn)證管理員密碼 if(密碼正確) { sub_mode ADMIN_SUB_MENU; Display_Show_Menu(); } else if(密碼錯(cuò)誤或取消) { sys_mode SYS_MODE_NORMAL; sub_mode ADMIN_SUB_WAIT_PWD; } break; case ADMIN_SUB_MENU: if(key KEY_1) { sub_mode ADMIN_SUB_SET_USER_PWD; Display_Show_Message(SETUP); } else if(key KEY_2) { // 進(jìn)入查看日志子流程... } else if(key KEY_CANCEL) { sys_mode SYS_MODE_NORMAL; sub_mode ADMIN_SUB_WAIT_PWD; } break; case ADMIN_SUB_SET_USER_PWD: // 引導(dǎo)用戶輸入新密碼兩次確認(rèn) // 確認(rèn)一致后寫入EEPROM并更新user_password數(shù)組 // 完成后返回MENU狀態(tài) break; } }管理員模式的設(shè)計(jì)展示了狀態(tài)機(jī)可以嵌套。sys_mode是頂層狀態(tài)sub_mode是管理員模式下的子狀態(tài)。這種設(shè)計(jì)讓復(fù)雜流程變得清晰可控。5. 系統(tǒng)優(yōu)化、調(diào)試與問題排查實(shí)錄5.1 顯示優(yōu)化解決閃爍與重影問題數(shù)碼管在顯示變化內(nèi)容時(shí)感覺有閃爍或殘留影像重影。排查與解決檢查消隱代碼確保在切換位選前已經(jīng)關(guān)閉了段選輸出0xFF或0x00取決于共陽/共陰。這是最常見的原因。調(diào)整掃描頻率動(dòng)態(tài)掃描的頻率太低會(huì)導(dǎo)致閃爍。我們的定時(shí)器中斷是1ms每2ms掃描一位8位掃描完需要16ms刷新率約62.5Hz高于人眼的視覺暫留通常不會(huì)閃爍。如果還閃嘗試提高掃描頻率如1ms掃一位。檢查延時(shí)確保Display_Process函數(shù)執(zhí)行時(shí)間很短。如果其中包含了復(fù)雜的計(jì)算或函數(shù)調(diào)用可能導(dǎo)致某位數(shù)碼管點(diǎn)亮?xí)r間過長其他位過短造成亮度不均或閃爍。所有需要時(shí)間的數(shù)據(jù)處理如數(shù)字轉(zhuǎn)段碼應(yīng)在更新display_buffer時(shí)完成掃描函數(shù)只負(fù)責(zé)搬運(yùn)數(shù)據(jù)。硬件排查檢查74HC138和74HC573的電源、地線是否連接良好驅(qū)動(dòng)電流是否足夠??梢試L試減小限流電阻在允許范圍內(nèi)增加亮度有時(shí)亮度不足也會(huì)讓人感覺“閃”。5.2 按鍵失靈或連擊問題按鍵有時(shí)沒反應(yīng)有時(shí)按一次卻觸發(fā)多次。排查與解決消抖參數(shù)檢查DEBOUNCE_TIME是否合適。10-20ms是通用值。如果環(huán)境干擾大可以適當(dāng)增加??梢杂檬静ㄆ骺窗存I波形確定抖動(dòng)時(shí)間。“按下一次只響應(yīng)一次”邏輯確保你的Key_Scan函數(shù)中只有在按鍵從“釋放”到“穩(wěn)定按下”的邊沿時(shí)才返回鍵值。參考我們上面代碼中的key_last變量用法。掃描頻率按鍵掃描不能太慢否則會(huì)漏掉快速按鍵也不能太快否則可能一次物理按下還在抖動(dòng)期內(nèi)就被掃描了多次。我們的1ms標(biāo)志位在主循環(huán)中掃描頻率是合適的。上拉電阻確認(rèn)矩陣鍵盤的列線是否有上拉電阻。CT107D板子通常已硬件上拉但如果是自己搭建的電路必須加上。5.3 EEPROM數(shù)據(jù)丟失或錯(cuò)誤問題存入的密碼下次上電后讀出來不對(duì)。排查與解決地址對(duì)齊確保讀寫的地址是正確的。特別是跨扇區(qū)時(shí)要清楚每個(gè)扇區(qū)的起始地址。擦除后再寫EEPROM寫入前必須確保該地址所在的扇區(qū)已經(jīng)被擦除值為0xFF。如果你在非0xFF的位置直接寫入結(jié)果可能是錯(cuò)誤的“與”操作。修改密碼的流程必須是讀取整個(gè)扇區(qū)到RAM - 在RAM中修改數(shù)據(jù) - 擦除整個(gè)扇區(qū) - 將整個(gè)扇區(qū)數(shù)據(jù)寫回。雖然效率低但是最安全。操作時(shí)序嚴(yán)格按照數(shù)據(jù)手冊(cè)的步驟打開IAP功能 - 設(shè)置命令/地址/數(shù)據(jù) - 觸發(fā)寫0x5A, 0xA5- 關(guān)閉IAP功能。兩個(gè)觸發(fā)命令必須連續(xù)。電源穩(wěn)定性在寫EEPROM期間電源電壓不能有劇烈波動(dòng)否則可能導(dǎo)致寫入失敗或數(shù)據(jù)錯(cuò)誤。確保電源電路電容充足。5.4 系統(tǒng)跑飛或死機(jī)問題程序運(yùn)行一段時(shí)間后沒有任何反應(yīng)。排查與解決看門狗強(qiáng)烈建議啟用單片機(jī)的看門狗WDT。在初始化中配置好看門狗超時(shí)時(shí)間在主循環(huán)中定期喂狗。如果程序跑飛無法按時(shí)喂狗看門狗會(huì)復(fù)位單片機(jī)讓系統(tǒng)恢復(fù)。void WDT_Init(void) { WDT_CONTR 0x37; // 使能看門狗預(yù)分頻約1秒超時(shí) } void Feed_Dog(void) { WDT_CONTR | 0x10; // 喂狗操作 } // 在主循環(huán)合適位置調(diào)用Feed_Dog()數(shù)組越界或指針錯(cuò)誤這是C語言編程最常見的問題。仔細(xì)檢查所有數(shù)組的訪問是否在邊界內(nèi)指針在使用前是否已正確初始化。中斷沖突確保中斷服務(wù)程序執(zhí)行時(shí)間非常短。如果在一個(gè)中斷里做了太多事情比如復(fù)雜的數(shù)學(xué)運(yùn)算、調(diào)用可能阻塞的函數(shù)可能導(dǎo)致其他中斷無法及時(shí)響應(yīng)或者主循環(huán)“餓死”。堆棧溢出如果函數(shù)嵌套調(diào)用太深或者局部變量特別是大數(shù)組太多可能導(dǎo)致堆棧溢出覆蓋其他內(nèi)存區(qū)域。優(yōu)化函數(shù)設(shè)計(jì)將大數(shù)組定義為靜態(tài)static或全局變量。5.5 功耗與可靠性考量進(jìn)階雖然比賽項(xiàng)目可能不強(qiáng)調(diào)這個(gè)但真實(shí)產(chǎn)品必須考慮??臻e模式在SYS_MODE_NORMAL且長時(shí)間無操作時(shí)可以讓單片機(jī)進(jìn)入空閑Idle模式或掉電Power Down模式大幅降低功耗。通過外部中斷如按鍵喚醒。輸入去抖濾波除了軟件消抖可以在硬件上對(duì)按鍵信號(hào)加入RC濾波電路進(jìn)一步提高抗干擾能力。繼電器保護(hù)繼電器線圈是感性負(fù)載斷開時(shí)會(huì)產(chǎn)生很高的反向電動(dòng)勢(shì)。必須在繼電器線圈兩端并聯(lián)一個(gè)續(xù)流二極管如1N4007陰極接電源正極陽極接驅(qū)動(dòng)三極管的集電極以保護(hù)驅(qū)動(dòng)三極管不被擊穿。電源濾波在單片機(jī)的VCC和GND引腳附近放置一個(gè)0.1uF的瓷片電容進(jìn)行高頻濾波再配合一個(gè)10uF以上的電解電容進(jìn)行低頻濾波可以有效抑制電源噪聲提高系統(tǒng)穩(wěn)定性。從一道國賽真題出發(fā)我們構(gòu)建了一個(gè)相對(duì)完整的門禁系統(tǒng)原型。這個(gè)過程涵蓋了嵌入式開發(fā)的核心硬件模塊驅(qū)動(dòng)、狀態(tài)機(jī)軟件架構(gòu)、人機(jī)交互設(shè)計(jì)、數(shù)據(jù)存儲(chǔ)以及系統(tǒng)調(diào)試。它不再是一個(gè)孤立的“題目”而是一個(gè)可以觸摸、可以改進(jìn)、可以擴(kuò)展的“項(xiàng)目”。當(dāng)你能夠獨(dú)立完成這樣一個(gè)系統(tǒng)并解決其中遇到的各種稀奇古怪的問題時(shí)你對(duì)單片機(jī)的理解就不再局限于書本和實(shí)驗(yàn)箱而是真正具備了解決實(shí)際工程問題的能力。這也正是藍(lán)橋杯這類競賽希望引導(dǎo)我們達(dá)到的目標(biāo)——以賽促學(xué)學(xué)以致用。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
三级特黄60分钟播放| 亚洲一区二区中文字幕| 国产日产欧产美韩系列麻豆免费| 99热精品在线| 制度丝袜99| 日日干日日摸| 日韩美女,国产传媒,视频一区| 亚洲人妻中文高清| 99亚洲国产精品色一区二区三区| 国产精品经典一卡久久久| 99色热国产视频精品| 青青草影视蜜久久| 97超碰免费人人性爱| 成人在线视频网| 69av一区二区三区| 97在线/亚洲| 久久人人爽爽爽人久久久| 国产精品成人蜜臀AV在线| 三四中文字幕| 九九九九97| 97 亚洲 日韩 欧美 在线| 婷婷综合网| 两女互慰AV高潮喷水在线观看| 久操B网| 亚洲精品三区在线观看| 亚洲欧美另类图片| 超碰地址久久| 日本一区二区三区四区五区六区七区八区九区| 久久神马影院| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 国产东北女人在线视频| 久久久精品网站| 狠狠爱夜夜干| 精品人妻一区二区免费蜜桃| 青草视频在线看看看看看看看看看| 国产美女销魂在线观看不卡| 人妻丝袜美腿中文字幕| 性猛交| 亚洲天天自拍| 99999久久精| 亚洲激情天堂网| 亚洲色图大香| 色一射色一射| 校园春色欧美色图| 狠狠图片青青草| 久久久影院| 全免费a敌肛交毛片免费| 久久91精品国产9丨久久分亭 | 刺激性视频黄页| 亚洲一区二区麻豆影院| 99久久久无码| 色999亚洲人成色| 日本色色色色色视频| 中文色综合| 人人性爱视频免费| 香蕉视频精品亚洲一区二区三区在线播| 天天干1区2区在线| 亚洲中文字幕久久无码精品| 亚洲综合草草| 国产丝袜啪啪| 一级一性爱免费视频| 综合 亚洲 欧美| 国产精品女aA片爽爽视频| 男人天堂2019| 国产精品久久久无码aV去| 久久久精品久久| 91欧美综合在线| 日本黄色XXX| 97国产精品在线观看| baiduhicn.com。| 福利五区| 韩国一级做a久久久久| 97超碰人人模人人拍人人| 国产精品久久天天干| 日韩熟女乱伦中出| xxx0国产在线播放| 粉嫩绯色AV一区二区在线| 伊人久久婷婷| 传媒免费一区二区三区| 91日韩网站| 91 欧美| 久久久96| 2025亚洲男人天堂| 91操人| 国产精品网址| 欧美性暴力| 天操天操夜操夜月月年年操操| 四虎884a| 国产家庭乱伦性爱视频| 国产免a费看黄片在线| 秋霞影音一区二区三区| 影视综合无码少妇| 亚洲αv一区二区三区| {男男暴菊gay无套网站| 蜜臀99久久| 东京热大香蕉| 国产亚洲精品美女久久久| 亚洲成人在线高清| 欧美性爱日韩性爱| 超碰在线国产| 中文字幕一二三区| 九九九精品一区二区无码| 日韩久久艹| 韩国嫰模上门援交视频| 91亚洲人| 色青青久久影视| 午夜性| 青青草五月份天| 久久久久夜夜夜夜| 欧美日韩m| 欧美高清色| 波多野结衣先锋影音| 色哟哟综合| 亚欧无码在线| 精品九九九九九九九| 无码视频一区二区| 成人草草视频| 中文字幕乱在线伦视频中文字幕乱码在线 | 国产精品美女久久久久久网站| 国产操逼网站亚洲一级黄色| 一级片在线观看高清无码| 高清无码久操视频| 天天亚洲综合| 黑人精品XXX一区一二区| 日韩精品高清资源在线| 中文字幕十五区| 欧美91网站| 亚洲乱码精品一区二区| 99热亚洲天堂| 在线视频97| 天天日天天插| 九九九九9999| 搡老女人老妇女老妇老熟女怎么读| 96一区二区三区| 蜜乳AV一区二区三区四| 极品少妇久久久| 97av在线视频| 日韩欧美aⅴ综合网站发布| 丰满少妇高潮无码| 91精品国产麻豆国产自产在| 欧美人妻一区二区| 大稥蕉免费视频这里只有精品| 在线观看无码三级少妇| 热99这里有精品综合久久 | 色色97爱| 亚洲蜜臀精品视频久久| 色色五月天婷婷| 亚洲97精品| 久久精品国产96精品亚洲拳交| 国产亚卅97| 亚洲性爱免费电影| 欧美黑人与女人91| 伊人久久88国产女| 爱丝福利| 91成人久久| 在线播放成人高清免费视频| 99亚洲人人| 熟女被操视频网址| 人妻献身系列第54部| 超碰97导航| 日韩中文欧美| 奇米四色影视777久久久| 日韩视频小说在线观看 | 久久久一区二区三区三州| 水滴偷拍| 欧美性爱一区| 素颜老阿姨乱情色| 日日干日日操五月天伦理视频| 成人午夜视频免费播放| 天天日天天色| 9色在线| 91成人18| 欧美色另类| 亚州男人的天堂| 二区熟妇韩日| 色色五月婷婷| 国产免费久久久久| 日韩无码a片| aaa亚无码专区| 免费试看60秒| 一级性爱视频免费在线| 亚洲欧美天| 尤物视频偷拍免费| 九九九不卡| 欧美91在线| 丝袜美腿91| 国产肏屁眼视频| 亚洲国产欧美日韩人妻日中文| 丁香婷婷久久| 东京热激情视频一二三区| www鬼畜国产男人的天堂| 久久综合精品一区二区三区| 婷色五月| 色999人与兽| 97亚洲综合电影| 狠狠干精品一二三四五六2022| 操亚州| 麻豆 美女 丝袜 人妻 中文| 亚洲另类欧美精品| 亚欧高清在线| 日本 免费 一区二区三区 久久香蕉 | 97国产伦理| 欧美,日韩,中文,另类| 青青久久艹| 啊啊啊啊啊啊啊啊在线观看| 眼镜人妻101.com| 人妻少妇精品一区二区三区| 丁香六月婷婷综合| 久久华人网| 四虎在线视频| a天堂视频| 5252色欧美在线| 国产精品香蕉| 国产精品久久久久久片| 九一精品牛牛一区二区| 日韩人妻资源在线看| 黄色视频特级毛片| 69精品在线| 91欧美美女日韩国产婷婷| 久久精9| 亲子敌伦对白在线播放| 日韩精品一区二区三区色欲| 高潮综合网| 国产无吗在线播放| 欧美熟妇精品黑人巨大一二三区| 国产精品久久久久婷婷二区次| 多毛小伙内射老太婆| 国产精品久久久视频| 色狠狠一区二区三区香蕉| 乱伦Av网| 18+91网站| 337p大胆噜噜噜噜噜91Av| 天美传媒麻豆一区二区三区国产精| 久草免费福利在线播放| 狠狠入| 丁香五月久久| 性夜影院爽黄A爽免费动漫| 久操综合在线| 色操逼网| 99热在线只有精品| 人妻无码久久一区二区三区免费| 亚洲一区二区三区中文字幕| 91精品操美女| 91九色精品熟女内射| 丝袜美腿av女优在线| 一线黄色免费性爱片| 青青草密桃在线播放| 青青草依人大香蕉| 丁香六月啪| 国产久9| 欧美福利视频啊啊啊啊| 日韩精品国模| 操人妻少妇中文 | 丝袜综合| 在线观看亚洲专区| 福利在线视频一区二区| 成人福利视频网| 三级色影综合网| 国产极品久久久| 五月激情影院| 97综合网| 78m啪啪啪| 欧美色图中文字幕| 九九夜精品九九在线| 爱爱动态试试看6 0秒| 91人妻少妇| 99这里只有精品| 91搞逼视频| 骚妻少妇精品性色无码四色A V| 性爱视频久久| 日韩一级特黄av毛片| 久久专区| 啊啊啊啊啊在线| 极品美女嘿咻| 黄网站黄视频网站进入口| WWW操逼| 亚洲欧美综合| 国产又色又粗又黄又爽| 91久久免费视频互動交流| 久久亚洲AV无码专区首页| 成人天天爽| 一区二区视频在线播放| 久久久久久久9999| 国产精品不卡一区二区三区| 日本熟女中文| 久热这里| 国产久久一区二区三区野外在线| 中文字幕一区日韩精| 午夜操逼不卡| 日本一区二区做爱的视频| 人妻少妇精品视频一区二区三区| 丝袜 中出 制服 人妻 美腿 中文字幕| 涩涩久久精品| 国产蜜臀精品一区二区尤物| 午夜啊啊| 久草电影网| 91制服丝袜| 九九国产热| 欧美色图校园春色| 在线岛| www.av在线观看| 国产一区二区三区视频在线看| 香蕉国产精品麻豆亚洲欧美日韩 | 手机在线看片免费人成视频| 日韩中文欧美| 好爽免费视频,| 国语少妇精| 精品国产一区二区三区四区在线看 | 亚洲丝袜色| 91美女在线视频| 久久一区,青青青青草视频在线播放| 久久激情视频| 免费久久一级毛片大黄| 欧美少妇大量自拍视频在线观看| 久久三区四区| 天天干天天拍| 老熟女91| 超碰天天操你比| 国产综合网站在线播放| 蜜桃精品一区二区三区ww| 九9热伊人| 中文字幕第9页萱萱影音先锋| 人人摸人人叼| 国产精品久久久九九九| 欧美伊人久久综合网| 荡小穴在线观看| 欧美碰碰综合色| 狠狠五月天| 亚洲资源站| 日韩素人无码一区二区三区三州| 懂色av中文字幕| 狠狠色噜噜狠狠狠狠狠色综合久久| 久久久久久亚洲精品中文字幕人妻| 久操在97| 久久免费老司机精品| 日韩欧美偷拍美女视频| 男人a天堂手机在线版| 国产av青草| 翔田千里无码一区| 精品人妻一区二区蜜桃视频| 欧美精品 - 91爱爱| 无码高清少妇久久| 欧美日韩中文字幕不卡| 亚洲精品蜜桃久久久久久久| 色欲日韩欧美在线一区| 黑人精品一区二区在线播放| 日本精品人妻少妇一区二区| 亚洲图片另类| 东京成人一区| 激情接吻视频久久久久久| 欧美久久人体| 日本丝袜美腿人妻九九| 404操逼福利视频| 天美精品一区二区三区四区在线观看| 美国aaaaa一级黄片| 麻豆一区二区三区在线看 | 一级性爱视频免费观看 | 亚洲综合小说另类图欧美视频激情小说色五月天 | 天天日日日射| 亚洲色图在线视频| 五月婷婷色色| 懂色AV一区二区三区| 亚洲美乱| 天天夜躁日日躁狠狠2002| 欧美午夜色妇色鬼| 亚洲图片日本AⅤ欧美在线| 中文字幕人乱码中文字的预防方法 | 亚洲一二三四区在线免费看视频| 亚洲乱色视频一区、二区在线| 亚洲无码视频免费在线观看网址!| 中文字幕乱偷人妻久久艾草网| 成人资源中文字幕在线观看天天 | 久99在线免费观看视频| 超碰在线974| 天天爽天天爽| 黄污污污污| 岛国在线一区二区三区| 91成人久久 | 人妻超碰青青草98| 欧美精品久久| 四虎影视 亚洲无码| 亚洲图片偷拍欧美| 日韩精品午夜操呦呦不卡影院 | 五月丁香色综合| 婷婷综合在线| 玖玖爱综合| 一区二区激情国产熟女 | 婷婷伊人綜合中文字幕小说| 四色永久成人网站| 婷婷午夜| 国模限制级电影| 性色av婷婷久久一区二区点复制| 亚洲最大无码中文字幕网站| 激情啪啪拍91| 久久精彩免费视频| 亚洲情色婷婷五月天| 999熟女精品| 十八禁电影伊人网| 超碰2017| 日本熟女中文字幕一区| 婷婷久月| 天天操天天干美女网址导航| 亚洲国产蜜臀系列在线观看| 麻豆视频一区二区| 国产成人亚洲精品无码古代早漏男| 熟妇综合一区二区三区| 丁香五月婷婷基地| 四虎精品永久在线观看| 干干干天天| 免费网站观看www在线观| 日韩欧美性吧婷婷乱伦大香蕉| 男人的天堂一区三区| 殴美大黄片| 2020中文字幕| 女上位精品在线| 欧美一区二区三区互相| 综合色播| 国内毛片四区| 国产亚洲精品自在线亚洲情侣 | 日韩一级欧美一级国产一级台湾| 亚洲无码一区二区三区三州| 人妻精品综合中文字幕在线| 国产精品白丝AV| 亚洲天天操| 日韩国产中文字幕| 懂色av中文字幕| 高清国产性猛交xxxx乱大交| 精品免费国产二区三区| 成全在线观看免费观看| 国产67194| 日韩猛交| 97超碰超欧美。| 熟女乱伦二区| 少妇国产不卡| 亚洲人妻在线精品| 亚洲精品久| 九九九九九九九| 国产成人在线观看综合| 国内精品99999| 操逼网站视频漫画国产| 色路综合| 亚洲美欧999| 奇米狠999| 强乱老妇中文字幕| 色色色欧美| 国产精品第一页国产大屁股视频免费区i| 国产欧美岛国精品一区| 欧亚三区动漫| 欧美在线视频播放| 爱欲AV| 亚洲午夜福利在线影院| 日韩黄色片子| 丰满人妻-区二区三区| 玖玖97综合 | 欧美性生活免费网| 午夜毛片亚洲精品片国产久久久| 97久久久精品| 色综合久久888| 无码国产Av| 精品传媒在线一区| 精品国产国产AV| 强奸乱伦AV网站| 999综合网| 九九九网站| 综合av影片| 欧美日韩情色一区二区| 99热自拍| 日韩精品免费高清视频在线| 久久精品国内Av熟女高清| 伊人麻豆传媒| 老鸭窝黄色视频网站| 91色艳| 自拍大香蕉乱插| 女性喷水高潮在线观看| 国产精品片| 欧美综合天天| 日本一级真人黄色性爱视频| 黄色成品网站| 亚洲情色一区综合| AV天堂电影网| 久热久操| 怡红院网站在线视频| 大香蕉2017| 人妻欧美| 欧美激情另类一区二区| 亚洲午夜av| 久久香蕉网| 国模限制级电影| 国产第11页| 99在线精品观看视频中文| 久污| 久夜操| 尤物视频视频官网| 夜草网站| 午夜寂寞欧美| 亚洲欧美国产其他二区| 午夜精品久久久久久久男人的天堂 | 亚洲成人一二三区| 欧美性Fer办公室秘书| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 亚洲黄色a级片| 黄色免费一级在线毛片| 91丝袜在线观看| 花花AV导航| 四虎午夜影院| 日韩黄片视频试看| 91国产精品熟女| 无码免费一区二区三区啪啪| 精品无码一区二区| 日韩综合第八区国产精品| 蜜桃AV天堂| 97香蕉网| 人妻嗯啊啊在线播放| www.男人天堂| 午夜视频黄| 国产精品久久久久久久久久二区三区| 天天日天天看| 综合伊人网12色| 天天弄天天操| 91色综合色| 欧美九九爱| 天天夜夜久久| 亚洲麻豆av一区二区| 亚洲砖码砖专无区2023| 亚洲欧美在线综合| 中文字幕aⅴ在线视频| 人妻在线臀日韩| 91狠狠狠| 精品人妻免费观看| 久悠悠av| 97色网| 蜜臀精品1区2区| 97天堂| 亚洲综合色男人网| 亚洲AV无码黄色强奸| 久无码| 色欲天天综合久久久无码网中文| 欧美人妻精品| 啊啊啊网站| 亚欧美综合| 精品一区二区三区蜜桃臀赵总 | 啪啪免费| 国产欧美日韩臀| 人人贴人人摸| 中文字幕少妇色 | 天天看天天日天天操| 久久99久久99久久99人受| 五月天久久人妻| 强奸少妇AV导航网| 2020中文在线一区二区三区| 欧美日韩精品青青| 国产一级内射无挡观看| com 首页 18岁 禁区 女优 免费 精选 同城 | 亚洲一二三精品久久网| 99久久久久| www.人人摸在线视频| 97精品国产97久久久久久户外免费| heyZO天然素人无码AⅤ专区| 97超碰9| 天美传媒在线一区| 亚州精人品大香蕉| 人人妻人射| 亚洲AV色图| 亚洲精品国产av天美传媒| 图色综合网| 青青草日韩无码| 先锋精品av色鲁| 国产精品一级毛片不卡视| 极品销魂美女一区二区 | 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 美腿丝袜高跟网免费视频免费视频| 国产中文大片资源中文字幕| 亚洲97在线| 亚洲天堂电影网| 亚洲 欧美 另类 日韩 人妻一区 | 亚洲成人性爱在线观看| 操逼www.| 免费看欧美美女黄色大片| 亚洲免费人妻在| 91原创在线观看| 福利伊人玖玖国产| 无码乱人伦中文视频| 91在线视频免费播放| 欧美精品成人在线播放| 国产久久av| 国产又粗又又黄又猛| 青草视频在线看看看看看看看看看| 亚欧高清v| 男女性感激情网站| 日本三级R| 性生活久久久久久久久久| 欧美色亚洲色| 亚洲精品97| 性饥渴少妇av无码毛片| 欧美顶级黄色大片免费| 热久久这里只有精品| 久操不卡视频| 免费的av网| 亚洲色图 图片| 无码人妻一区二区三区免费九色| 玖玖爱免费观看视频| 91欧美高清| 欧美在线55555| 中文字幕av一区二区三区人妻少妇| 伊香蕉综合久久久久久久噜噜噜 | 99青草| 小电影欧美91| 91女优在线观看| 91人妻人人澡人人爽人人精品| 中文字幕99999| 亚洲成人性爱在线观看| 操B久久| 淫荡网址| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 视频在线97| 日韩无码a片| 色哟哟-国产专区| 97在线视频免费看| 欧美另类综合久久| 天天欧美色| 欧美高清16| 91人人臊| 99中文字幕| 美国美女AV在线| 国产精品制服丝袜中文字幕日韩一区二区三区| 日韩精品人妻中文字幕不卡乱码| 亚洲一区二区三区中文字幕| 最新精品久久蜜桃| 欧美特大黄一级片片免费| 凌辱美少妇久久aV| 成年女人一区| 欧美性暴力猛交| 六月婷激情福利天堂69| 亚洲国产精品无码AV久久久| 日本人妻天堂网站在线播放| 情色图区| 亚洲另类久操网| 亚洲国产婷婷在线播放| 中国的操老妇女| 岛国福利在线精品播放| 国产欧美一区激情交| 热热色国产一二区AV| 99久久99九九99九九九| 欧美性爱日韩高清| 亚洲se电影| 色蜜AV| 中文字幕欧美日韩三级| 中文字幕女同在线| 日韩精品1区2区中文字幕| 校园春色之综合网| 国产a级午夜毛片| 国产精品久久久久久照片| 精久久久| 91新在线欧美| 天天操av懂色| 欧美Aⅴ| 中文字幕日韩情色| 国产天天骚| 成人性爱电影一区二区| 亚洲高清视频在线免费观看| 欧美日韩大陆黑人少妇99| 午夜精品五区| 超碰欧美COM| 97伪v| 又大又黄国产| 99九九久久| 无码一区二区三区四区五区六区七区八区九区十区视频 | 久久亚洲欧美中文字幕国语| 亚洲无992tv| 天天射天天色成人| 9久精品视频在线观看| 天天看少妇| 人人爽夜夜操| 亚洲精品男人的天堂| 午夜精品久久久久久久99蜜桃一| 中出20p| 99操| 欧美日韩色| 亚洲春色欧美| 国产sv美女内射| 人妻大香蕉| 人人妻人人玩人人澡人人爽| 天天躁日日躁AAAAXXXX国产 | 秋霞成人做爱| 亚洲加勒比久久日本道| 激情五月天插| 骚逼高潮久久精品| 在线观看一卡二卡| 农村妇女精品一区二区| 亚洲欧美清纯| 综合五月婷婷亚洲一区| 9色在线| 欧美第38页| 91痴汉| 国产一区二区三区高清视频| www亚洲免费| 2020中文字幕在线观看| 亚洲综合首页| 亞洲久久直播| 熟女网站最新| 揉揉日日日日| 天天综合中文字幕 91| 日韩熟女操逼| 性色avv| 97国产超碰| 亚洲综合精品国产一区| 欧美午夜视频| 干少妇视频| 日韩欧视频| 爱av免费| 裸体1区| 国产精品999aaa| 久久久工口| 丝袜美腿亚洲| 精品一区二区三区蜜桃臀赵总| 亚洲综合图色在线| 天天躁日日躁成人字幕aⅴ| 神马福利久草| 97热视频在线观看| 中文字幕亚洲在线一区| 九九九偷拍| 人人爱操| 婷婷av在线中文字幕| 一,爱啪啪,在线免费视频| 青娱乐蜜桃臀AV色婷| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 日韩女模中文造逼| 台湾佬中文娱乐自偷自拍| 人妻第一页| 荡小穴在线观看| 女人天堂av在线播放| 久操在97| 国产www色在线观看| 五月天AV资源| 欧美淫穴| 在线免费观看高清无码视频| 日日日啊啊啊| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 亚洲清纯唯美| 久热这里只有精品9| 天美av在线观看| 丁香婷婷色五月| 欧美不卡在线美女| 国产www色在线观看| 美欧色综合| 九九九九一区| 超碰亚洲欧美日韩无| 国产精品免费久久久久久久久久| 99无码精品| 亚洲熟女偷拍在线观看| 亚洲图片 91| 亚洲国产成人福利在线观看| 欧美综色欧| 老汉网| 久久人人爽爽爽人久久久| 日本免费中文字幕在线| a级免费在线观看| 国产成人资源| 日韩黄片影院| 超碰一区二区| 一级性爱aaaa| 天天综合网91| 欧美国产婷婷久久| 亚洲国产福利视频| 亚洲97p| AV高清一区| 97青青操视频| 野狼激情网| 婷婷99狠狠| 亚洲成人综合在线| 精品国产肉丝袜在线拍国语| 91av一区二区在线观看| 亚洲黄色视频在线观看视频| 翔田千里AV无码秘 三区| ...日韩成人一区二区三区字幕| 色九月综合| 青青草国产一区二区三区| 麻豆人妻偷人精品无码视频| 人人噜夜夜操| 欧美日综合| 国产精品另类| 国产精品成人午夜福利| 大香蕉中文| www.av家庭乱伦| av网站在线看| 神马久久久久久久| 四虎影视永久在线免费| 美国日韩黄色片| 最新欧洲欧美日本激情网站| 亚洲色图20p| 91中出在线| 日韩成人人妻网站| 中文字幕一区二区视频在线观看| 99精品九九九九九九| 国产精品香蕉| 久久久久久网址| 国产精品久久久久久久久久久久久久吹 | 伊人热综合| 国产福利小视频高清在线观看| 色婷婷综合视频| 性性欧美| 啊啊啊久久| 射久久| 久久色情| 国产乱码精品久久久久久 | av大香蕉网站| 抽插亚洲无码| 欧美性爱第一区| 午夜精品99久久久久传媒| 色五月激情AV在线| 国产又色又粗又黄又爽| 免费的黄片wwwwww| 久久久精久久久| 老熟女乱伦一区| 国产亚洲色婷婷久久99精品91| 国产视频第2页| 激情五月天插| 中文字日本乱码| 亚洲综合骚逼| 懂色天天爱天天日天天射天天澡| 九色视频91| 很很很很操| 高清一区AV无码| 久久骚| 欧美精品999| 屌妞视频久久久久久久| 岛国免费视频在线| 91天射| 永久免费发布性爱网| 国产99999久久精品| 秋霞网无码| #NAME?| 97电影院超碰| av天堂天堂av日韩| 天干天干天干天天做| wwwcaobibi| 女生看匆91网站| 五月色综合| 久夜操| 亚洲AV无码成人精品久久| 精品中文日韩字幕视频| 开心五月婷婷| 免费日韩黄片| 久久日韩肥臀| 免费A V在线播放| 欧亚乱色熟一区二区三四区| 乱抡国产91| 欲女人妻性色av| 大香蕉 222| 一区三区啪啪| a片久久久久久久久久久久| 国产丸一视频| 蜜桃久久精品一区二区三区| 婷婷超| 91草草草| 99xav| 这里都是精品在线观看| 伊色久人大在线| 久草男人天堂| 婷婷五月天成人网| 黄网色一区二区三区四区精品| 97精品视频| 久久久久久久久9| 熟女露脸激情自拍视频| 熟女高潮合集-永久久久-成人AV | 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 日韩Va亚洲va欧美Ⅴa久久| 亚洲无线码欧洲精品区别| 久久久久免费看少妇A片特黄| 亚洲欧洲日韩中文字幕一区| 欧美激情色婷婷花野真衣一区二区| 91neishe| 青青网三级视频| 日韩欧美tv一区二区在线观看| 97色色色| 丁香婷婷激情五月天无毒不卡| 色五月婷婷五月天| 久九九九九九九热| 亚洲欧洲日产国产综合网| 天天看天天在线精品| 十八禁av无码免费网站APP| 啪啪啪东京| 无码久久国产 | 爱射综合| 国产av激情无码久久天堂| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 大香蕉性欧美| 天天干夜夜鈤| 蜜桃臀一区二区三区久久| 久久久久国产| 9997se| 精品人妻一区二区三区免费视频| 亚洲欧洲激情卡通另类文学四射小说网站 | 91蜜臀熟女| 熟妇高潮一区二区免费视频| 欧美日韩亚洲高清不卡一区二区三区| 91新在线欧美| 九九九国产精品| 77国产精品| 日本道日本道中文字幕日本道最新日本道在线观看| 久久人妇| 欧美综合网A| 操逼不卡中文字幕| 国产久久一区二区午夜| 欧美大香蕉在线观看| 观看视频图片一区二区三区| 亚洲国产中文字幕| 粉嫩av一区二区三区天美传媒| 中文AV制服乱伦| 精品久久人妻成人网| 欧洲色| 人人摸人人叼| 免费的av网| 免费网色网站| 亚洲乱色熟女一区| 一区AV| 亚州情色j区| 制服中出中文人人精品| 欧美精品一区二区少妇免费A片 | 黄片色区软件| 色网在线| 男人天堂欧美| 亚洲免费人妻在| 男女性扦B| 国产福利视频精品视频| 九九视品黄色| 亚洲免费在线探花| 久久大香蕉手机高清视频| 色老大| 日韩亚洲中文字幕在线| 神马久久中文字幕| 欧洲亚洲人人爽爽视频| 国产路线专区| 97天天综合网| 97人妻免费中文字幕| 丝袜狠狠草尤物 91| 天天视频黄网站| 夜夜春夜夜操| 色婷婷久久| 久久久不卡区一区二区三区久久久| 日韩 欧美 视频 在线 一区| 黑丝制服中文字幕| 夜夜爽妓女| 成人AV在线电影| 蜜臀无码视频在线观看| 熟妇国产免费一区| 国产情侣自拍在线播放| 曰韩人妻中文字幕在线| 亚洲久草AV色图| 狠狠色婷婷| 日本操色导航| 亚洲综合第一页| 长长久久免费视频| 超碰成人公开| 日韩亚洲中文有码视频| 亚洲成成熟女人综合一区二区| ,国产乱人伦精品一区二区三区| 日韩一级片在线看| 波多野结衣AV无码一区| 亚洲av总站| 久久女婷| 欧美顶级黄片AAAAA在线免费看| 日韩精品国产一区二区| 老熟妇91| 国产精品乱码久久久久久久久| 欧美日综合| 94色色电影网| 另类欧美综合| 97亚洲欧美| 综合五月天| 国产在线视频午夜精华在| 级品肉射| 日本新免费二区三区| 欧美97视频| 熟啊v色欧美热| 丁香五月AV| 超碰97资源大奶| 这里是精品| 屌妞视频久久久久久久久久久久| 男人天堂2019亚洲| 一区二区三区黄片免费观看| www.大香| 人人操人人摸人人看人人插| 久久黄色视频一区二区三区 | 后入式视频国产自| 97色欧洲| 五月丁香六月综合缴清无码| 亚洲狠狠入| 超碰成人人人爽人人爽| 精品人成视频在线观看| 人妻少妇精品无码专区二区密桃| 国产400孕妇孕交群| 奇米四色网| 日韩精品一区的| wwwcaobibi| 久久精品一区二区三区不卡| 粉嫩AV一区夜夜嗨| 揉揉揉夜夜| 一二三区操逼国产91| 97视频免费在线观看| 黄色高清无码无码破解免费暗网| 能看的AV| 午夜福利一区二区三区四区五区色婷婷| 亚洲人精品久久久| 精品午夜福利| 国产亚洲精品一区二区三区| 亚洲精品一区二区日本| 日韩不卡毛片Av免费高清| 99性爱在线观看| 一本道综合色图| 亚洲第一页综合在线| 激情五月综合开心五月| 国产伦精品一区二区三区视频女| 亚洲日韩AV视色| 91超碰丝袜制服| 中文自拍欧美影视| 亚洲熟久久| 黄片免费日韩| 久久久9视频| 大香蕉国产中文自拍| 人妻少妇精品| 日韩精品中文字幕一| 色人久久| 97视频在| 国产家庭乱伦表演| 天天日夜夜| 精品久久久久综合无码| www.天天干| 国产97免费视频| 五月婷婷色| 97se亚洲综合自| 日韩欧美亚洲一区二区三区影院| 思思热在线视频精品| 久久熟女久| 婷婷99狠狠躁天天躁| 麻豆熟妇乱妇熟色A片在线看| 色999亚洲人成色| 综合久久9| 亚洲综合图文| 熟女精品va中文字幕| 综合性视频99| 懂色AV一区二区三区| 久草尤物| 亚洲精品97久久中文字幕| 日韩有码一区三区| 亚洲精品一区二区精品| 亚洲性少妇| 久久精彩免费视频| 亚洲无992tv| 日本好吊色视频| 日韩有码一区三区| 国产欧美一级在线观看| 欧美色图电影| 好屌色综合| 在线精品福利免费播放| 天天综合网91| 丰满人妻一区| 日韩偷拍色图| 在线国产一区二区av| 99久久久无码国产精品性啊聊| 亚洲 欧美 另类 日韩 人妻一区| 素人播放一区| 97综合国产| 男人的天堂VA在线| 九九热免费国产视频婷婷伊人| 亚洲天堂7777| 黄页视频网站野外| 亚洲精品一区二区精华| 性夜影院爽黄A爽免费动漫| 亚洲一区二区中文字幕| 无码一区二区三区四区五区六区七区八区九区十区视频 | 福利操逼| 性感美女91影视| 18禁久极品美女久久哦哟呀!| 乱伦1色页| 亚洲AV成人无码一二三久久| 日本欧美中文字幕| 日本人妻伦在线中文字幕| 立川理惠被中出无码| 欧美激情区| 日本天天干天天操一区| 国产精品ⅴ无码大片在线看.| 日本三级精品| 中出欧美| 啪啪啪精品| 成人免费不卡在线视频| 久久激情五月| 青青草在线视频人人想人人上 | 国产怡红院| 人妻社区男人天堂| 欧美淫乱视频| 久热网| 亚洲h片在线免费观看| 1禁看欧美黄片免费看| 中文字幕后石码四区五区| 精品1区2区3区| 精品人妻一二三| 人妻色偷色噜| 色波多| 国产做?爰片久久毛片?片美国| 久操不卡视频| 日夜干射色啊| 中文 人妻 制服| 中美日韩毛片| 日本有码久久| 亚洲揄拍网| 亚洲成人贴图| 中文字幕日本久久| 99九九久久| 国产精品久久久吖| 色嗨嗨在线| 夜夜爽爽夜夜精品视频| 人妻天天爽夜夜爽2| 国产一区二区三三视频| 丝袜狠狠草尤物人妻av91| 精品一区二区2| 五月婷亚洲精品天堂| 91久热| 91老熟女逼| 久久精品国产亚洲AV先锋| 婷婷五月天网| 青青草在线视频人人想人人上| 加勒比综合88| 久久婷婷亚洲| 精品中文日韩字幕视频| 天天伊人| 欧美图片偷拍| 大香交| 国产动漫操逼视频| 区二区亚洲婷| 国产日韩欧美中文在线播放| 99久久无色码| 中国AV美女| 亚欧性爱无码| 999久久芭蕾| 日日日日日| 精品人妻一区二区三区四区石在线| 蜜臀99精品国产高清在线观看| 久久婷婷五月综合| q2午夜理论片夜色av| 欧美v亚洲v日韩v最新在线二区| 97亚洲资源| 天天视频网站黄| 思思热在线视频精品| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 欧美熟女操屄| 久久亚洲天天做| 秋霞免费AV| 欧美色图电影| 国产精品久久久久久久免牛肉蒲团| 国产福利一区二| 丝袜美腿91| 一区二区三区四区姦女| 亚欧韩av| 丝袜AV一区二区三区| 香一区二区三区| 亚洲女毛多水多21P| 日欧操屄| 天天干人人乐| 国产一区二区精品久久久不卡蜜臀|