欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

433MHz無線遙控解碼:從信號捕獲到協(xié)議逆向的嵌入式實戰(zhàn)

433MHz無線遙控解碼:從信號捕獲到協(xié)議逆向的嵌入式實戰(zhàn) 簡介本資源是一套面向嵌入式初學者與射頻工程實踐者的433MHz無線遙控解碼完整源碼方案適用于基于51單片機和STM32平臺的無線通信入門開發(fā)與教學實驗。資源聚焦于常見紅外/RF遙控協(xié)議的接收與解析解決無線信號捕獲、脈寬識別、編碼還原等核心問題特別適配低成本433MHz ASK/OOK調(diào)制模塊的實際應用調(diào)試。壓縮包共2個文件17KB含一份詳盡的Word文檔說明涵蓋21鍵遙控器編碼規(guī)則、時序定義及協(xié)議分析與一個結(jié)構(gòu)清晰、注釋完整的C語言源文件W433.c覆蓋初始化配置、外部中斷捕獲、定時器計時、數(shù)據(jù)幀校驗與按鍵映射全流程。目前已有711人學習下載代碼模塊劃分合理關(guān)鍵邏輯逐行注釋便于新手理解脈沖寬度測量原理、狀態(tài)機解碼機制及跨平臺移植要點。1. 項目概述從“黑盒”到“白盒”的探索手里拿到一個433MHz的無線遙控器想讓它控制自己做的智能設備卻發(fā)現(xiàn)它和你的接收模塊“雞同鴨講”這種場景對硬件愛好者和物聯(lián)網(wǎng)開發(fā)者來說太常見了。市面上大量的廉價無線遙控套裝發(fā)射器和接收器往往是配對好的但對于想自定義功能、集成到智能家居系統(tǒng)或者逆向?qū)W習無線通信原理的人來說這無異于一個“黑盒”。今天要聊的就是如何撬開這個“黑盒”的核心——433MHz無線射頻模塊的遙控解碼源程序。簡單來說這個項目就是通過分析433MHz無線遙控器發(fā)射的信號編寫程序?qū)⑵洹胺g”成單片機或電腦能理解的數(shù)字指令。433MHz是一個無需許可的ISM工業(yè)、科學和醫(yī)療頻段因其穿透性強、成本低廉被廣泛應用于車庫門遙控、無線門鈴、智能開關(guān)、玩具遙控等領(lǐng)域。然而這些設備使用的編碼協(xié)議五花八門并非通用標準這就使得解碼工作成為連接舊有硬件與新智能系統(tǒng)的關(guān)鍵橋梁。這項工作適合誰呢如果你是嵌入式開發(fā)初學者想通過一個有趣的項目深入理解GPIO中斷、定時器和無線通信如果你是智能家居DIY玩家想把家里的傳統(tǒng)射頻遙控設備接入Home Assistant或Node-RED或者你是一名安全研究員對物聯(lián)網(wǎng)設備的無線通信安全感興趣那么這個從信號捕獲到解碼還原的完整過程都將為你提供寶貴的實戰(zhàn)經(jīng)驗。整個過程不依賴于昂貴的專業(yè)設備一塊最常見的Arduino開發(fā)板如UNO或Nano加上一個售價僅幾元的超再生或超外差接收模塊就能開啟你的無線解碼之旅。2. 解碼原理與核心思路拆解在動手寫代碼之前我們必須先搞清楚我們要解碼的究竟是什么。一個433MHz的遙控器按下按鍵時并非直接發(fā)射一串“0”和“1”的數(shù)字信號。它發(fā)射的是一串經(jīng)過編碼調(diào)制的無線電波。我們的解碼工作本質(zhì)上是對這串無線電波進行“降維打擊”將其還原為最初的數(shù)字編碼序列。2.1 信號構(gòu)成脈寬調(diào)制的奧秘絕大多數(shù)廉價的固定碼也稱學習碼遙控器使用的是脈寬調(diào)制PWM Pulse Width Modulation編碼方式。請注意這里的PWM并非指輸出模擬電壓而是指用不同寬度的脈沖來代表數(shù)據(jù)位“0”和“1”。一種最常見的編碼格式是“EV1527”格式這是一個芯片型號其編碼方式成了事實標準。在這種格式下一個“0”比特由一個短的高電平脈沖通常約300μs和一個長的低電平間隙通常約900μs組成。一個“1”比特由一個長的高電平脈沖通常約900μs和一個短的低電平間隙通常約300μs組成。同步頭在數(shù)據(jù)流開始前會有一個特別長的低電平脈沖通常遠長于數(shù)據(jù)位的低電平例如9ms以上后面緊跟一個高電平脈沖用于告訴接收端“注意數(shù)據(jù)要開始了”因此接收模塊輸出的信號就是一個高低電平變化的數(shù)字信號盡管可能有毛刺我們的單片機需要測量每一個高電平和低電平的持續(xù)時間并根據(jù)這些時間長度來判斷它接收到的是同步頭、數(shù)據(jù)“0”還是數(shù)據(jù)“1”。2.2 方案選型為什么是“外部中斷定時器”解碼方案主要有兩種思路輪詢法和中斷法。輪詢法是讓單片機的主循環(huán)不斷讀取接收模塊數(shù)據(jù)引腳的電平并記錄狀態(tài)變化的時間。這種方法實現(xiàn)簡單但會嚴重占用CPU資源并且在執(zhí)行其他任務時極易丟失信號邊沿導致解碼失敗。中斷法則是利用單片機的外部中斷External Interrupt功能。我們將接收模塊的數(shù)據(jù)引腳連接到單片機支持外部中斷的IO口如Arduino UNO的2、3號引腳。當引腳電平發(fā)生改變從高到低或從低到高時CPU會立即暫停當前工作跳轉(zhuǎn)到中斷服務程序ISR中處理。在ISR里我們通過讀取一個高精度定時器如micros()函數(shù)的當前值計算出距離上一次電平變化過去了多長時間從而得到脈沖寬度。注意中斷服務程序的設計原則是“快進快出”。絕對不能在ISR內(nèi)進行復雜的數(shù)學運算、字符串操作或調(diào)用可能阻塞的函數(shù)如delay(),Serial.print()。我們的ISR只應做一件事記錄時間戳。判斷脈沖類型、組裝數(shù)據(jù)幀等邏輯應放在主循環(huán)中根據(jù)ISR設置的狀態(tài)標志位來處理。選擇“外部中斷定時器”方案是因為它精準、高效、可靠。它能捕獲每一個信號邊沿為精確測量脈沖寬度奠定了基礎這是成功解碼的前提。這也是絕大多數(shù)成熟解碼庫如RCSwitch for Arduino所采用的核心方法。2.3 協(xié)議自學習與兼容性考量一個健壯的源程序不應只針對某一種固定的脈沖寬度。不同廠家、不同批次的遙控器其脈沖寬度可能有細微差異。因此我們的程序需要具備一定的“自學習”或“自適應”能力。一種常見的做法是在程序初始化后首先進入一個“學習模式”。按下遙控器按鍵程序捕獲完整的信號。自動分析捕獲到的高、低電平時間序列統(tǒng)計出短脈沖、長脈沖的大致范圍并計算出區(qū)分它們的合理閾值例如取長短脈沖時間的中間值。將這些閾值保存下來用于后續(xù)的解碼判斷。這樣我們的解碼程序就能適應不同參數(shù)的遙控器提升了通用性。這也是將“源程序”從一次性腳本升級為可復用工具的關(guān)鍵一步。3. 硬件準備與電路連接工欲善其事必先利其器。解碼工作對硬件要求不高但正確的連接是成功的第一步。3.1 核心器件選型單片機開發(fā)板Arduino UNO或Nano是首選。它們價格低廉社區(qū)支持完善IO口直接支持5V邏輯與接收模塊匹配性好。ESP8266如NodeMCU或ESP32也可用且自帶Wi-Fi便于直接聯(lián)網(wǎng)但需要注意其邏輯電平是3.3V。433MHz接收模塊常見的有兩種超再生接收模塊價格極低通常1-2元靈敏度一般抗干擾能力較弱輸出信號毛刺較多。適合近距離、環(huán)境簡單的場景。標識通常是“XY-MK-5V”或類似。超外差接收模塊價格稍高通常5-10元靈敏度高抗干擾能力強輸出信號干凈穩(wěn)定。強烈推薦使用這種能極大減少解碼過程中的誤觸發(fā)。標識通常是“XY-FST”或“MX-RM-5V”。關(guān)鍵區(qū)別超外差模塊通常有一個銀色的金屬屏蔽罩而超再生模塊通常是一個裸露的線圈。433MHz發(fā)射模塊與遙控器用于發(fā)射信號測試解碼結(jié)果??梢灾苯佑门涮椎倪b控器也可以用一個發(fā)射模塊連接另一個Arduino來模擬發(fā)射。杜邦線用于連接。USB數(shù)據(jù)線為Arduino供電和編程。3.2 電路連接示意圖與要點連接非常簡單遵循“電源-地-信號”三線制433MHz接收模塊 Arduino UNO VCC - 5V GND - GND DATA - Digital Pin 2 (或其它支持外部中斷的引腳如3)重要提示電源穩(wěn)定性確保電源能提供足夠的電流。使用電腦USB口或可靠的手機充電器給Arduino供電。避免使用劣質(zhì)電源噪聲可能導致接收模塊工作異常。天線接收模塊上的彈簧狀或直針狀天線務必保持豎直長度約為17cm433MHz波長的1/4時效果較好。不要隨意彎折或剪短。共地所有設備的GND必須連接在一起這是電路正常工作的基礎。3.3 環(huán)境搭建與初步測試在連接好硬件后先不寫解碼程序做一個最簡單的測試來驗證硬件是否工作正常。打開Arduino IDE創(chuàng)建一個新項目。編寫一個簡單的引腳狀態(tài)讀取程序并上傳void setup() { Serial.begin(115200); pinMode(2, INPUT); // 將接收模塊DATA引腳連接的GPIO設置為輸入模式 } void loop() { int sensorValue digitalRead(2); Serial.println(sensorValue); delay(100); // 每100ms讀取一次 }打開串口監(jiān)視器將波特率設置為115200。按下遙控器按鍵觀察串口輸出的數(shù)字。你應該能看到在靜止時輸出是穩(wěn)定的“1”或“0”取決于模塊默認電平按下按鍵時數(shù)字會快速在0和1之間跳動。這說明接收模塊收到了信號并輸出了波形硬件通路是正常的。如果沒有任何變化請檢查連接、電源和天線。4. 核心解碼程序設計與實現(xiàn)接下來我們將構(gòu)建解碼程序的核心骨架。我們將以Arduino平臺為例使用外部中斷和定時器來實現(xiàn)。4.1 全局變量與中斷服務程序首先定義一些關(guān)鍵的全局變量和中斷服務程序框架。// 引腳定義 #define RECEIVER_PIN 2 // 接收模塊連接至D2該引腳支持外部中斷0UNO上 // 解碼狀態(tài)變量 volatile unsigned long lastTime 0; // 記錄上一次中斷發(fā)生的時間戳必須用volatile volatile unsigned int pulseWidth 0; // 存儲兩次中斷之間的時間差即脈沖寬度 volatile bool pulseReceived false; // 標志位通知主循環(huán)已捕獲到一個完整的脈沖時間 // 中斷服務程序在RECEIVER_PIN電平變化時觸發(fā) void handleInterrupt() { unsigned long currentTime micros(); // 獲取當前時間微秒級 if (lastTime 0) { // 計算距離上次電平變化的時間間隔 pulseWidth currentTime - lastTime; pulseReceived true; // 設置標志位 } lastTime currentTime; // 更新上一次變化的時間戳 }關(guān)鍵點解析volatile關(guān)鍵字用于告訴編譯器這些變量可能被中斷服務程序意外地修改禁止對其進行激進的優(yōu)化如緩存到寄存器確保主循環(huán)每次讀取的都是最新值。micros()函數(shù)返回Arduino啟動后的微秒數(shù)精度為4微秒16MHz晶振下足夠用于測量數(shù)百微秒的脈沖。這個ISR極其精簡只做了計算時間差和設置標志位兩件事符合“快進快出”原則。4.2 主循環(huán)中的解碼狀態(tài)機主循環(huán)負責檢查pulseReceived標志并根據(jù)連續(xù)的脈沖寬度序列來解析數(shù)據(jù)。我們需要實現(xiàn)一個簡單的狀態(tài)機。// 解碼相關(guān)變量 unsigned int syncLowWidth 0; // 同步頭低電平寬度 unsigned int syncHighWidth 0; // 同步頭高電平寬度 unsigned int zeroLowWidth 0; // 邏輯‘0’的低電平寬度短間隙 unsigned int oneLowWidth 0; // 邏輯‘1’的低電平寬度長間隙 unsigned int bitHighWidth 0; // 數(shù)據(jù)位高電平寬度通常固定 #define MAX_PULSES 128 // 預計最大脈沖數(shù)防止緩沖區(qū)溢出 unsigned int pulseBuffer[MAX_PULSES]; // 存儲一次按鍵的所有脈沖寬度 unsigned int pulseIndex 0; // 脈沖緩沖區(qū)索引 bool receiving false; // 是否正在接收一幀數(shù)據(jù) // 閾值可通過學習模式校準 unsigned int shortPulseMax 500; // 短脈沖最大閾值微秒 unsigned int longPulseMin 700; // 長脈沖最小閾值微秒 unsigned int syncPulseMin 5000; // 同步脈沖最小閾值微秒 void loop() { if (pulseReceived) { pulseReceived false; // 清除標志位 unsigned int width pulseWidth; // 讀取捕獲的脈沖寬度 // 判斷是否為同步頭一個超長的低電平脈沖 if (width syncPulseMin !receiving) { // 檢測到同步頭起始開始記錄一幀數(shù)據(jù) receiving true; pulseIndex 0; syncLowWidth width; // 記錄同步頭低電平寬度 return; // 等待同步頭的高電平部分 } if (receiving) { // 將脈沖寬度存入緩沖區(qū) if (pulseIndex MAX_PULSES) { pulseBuffer[pulseIndex] width; } else { // 緩沖區(qū)溢出重置接收狀態(tài) receiving false; Serial.println(Error: Pulse buffer overflow!); } // 簡單判斷一幀是否結(jié)束如果連續(xù)一段時間如20ms沒有新脈沖 // 這里用一個更簡單的方法假設固定脈沖數(shù)例如EV1527格式是24位數(shù)據(jù)1位停止位共約50個脈沖 if (pulseIndex 50) { // 這是一個示例值實際需要根據(jù)協(xié)議調(diào)整 receiving false; decodePulseBuffer(); // 調(diào)用函數(shù)解碼緩沖區(qū)中的數(shù)據(jù) } } } // 這里可以添加超時判斷如果receiving為真但很久沒有新脈沖則重置 static unsigned long lastPulseTime 0; if (receiving (micros() - lastTime 20000)) { // 20ms無新脈沖視為超時 receiving false; Serial.println(Timeout waiting for next pulse.); } }4.3 解碼函數(shù)與數(shù)據(jù)組裝decodePulseBuffer函數(shù)是解碼邏輯的核心它將脈沖寬度序列翻譯成二進制位和數(shù)據(jù)字。void decodePulseBuffer() { // 首先識別同步頭的高電平部分通常是pulseBuffer[1] syncHighWidth pulseBuffer[1]; // 分析數(shù)據(jù)位前的幾個脈沖估算出代表“0”和“1”的高低電平寬度 // 通常數(shù)據(jù)位從索引2開始0:同步低1:同步高2:第一位數(shù)據(jù)的高電平... // 這是一個簡化的示例實際分析需要更健壯的邏輯 unsigned int firstHigh pulseBuffer[2]; unsigned int firstLow pulseBuffer[3]; unsigned int secondHigh pulseBuffer[4]; unsigned int secondLow pulseBuffer[5]; // 假設高電平寬度固定低電平寬度區(qū)分0和1 bitHighWidth (firstHigh secondHigh) / 2; // 取平均 // 根據(jù)前兩個低電平的寬度初步判斷哪個是“0”短哪個是“1”長 if (firstLow secondLow) { zeroLowWidth firstLow; oneLowWidth secondLow; } else { zeroLowWidth secondLow; oneLowWidth firstLow; } // 開始解碼數(shù)據(jù)位 unsigned long decodedData 0; // 用于存儲解碼出的數(shù)據(jù) int bitCount 0; // 從第2個脈沖第一個數(shù)據(jù)位的高電平開始每兩個脈沖高低代表一個數(shù)據(jù)位 for (int i 2; i pulseIndex; i 2) { if (i 1 pulseIndex) break; // 防止數(shù)組越界 unsigned int high pulseBuffer[i]; unsigned int low pulseBuffer[i 1]; // 檢查高電平寬度是否合理應與bitHighWidth相近 if (abs((int)(high - bitHighWidth)) 200) { // 允許200微秒的誤差 Serial.print(Bit ); Serial.print(bitCount); Serial.println( high pulse width abnormal, skipping frame.); return; // 數(shù)據(jù)異常放棄本幀 } // 根據(jù)低電平寬度判斷是0還是1 if (abs((int)(low - zeroLowWidth)) abs((int)(low - oneLowWidth))) { // 更接近“0”的寬度 decodedData 1; // 左移一位 decodedData | 0; // 最低位置0 } else { // 更接近“1”的寬度 decodedData 1; // 左移一位 decodedData | 1; // 最低位置1 } bitCount; if (bitCount 24) break; // EV1527通常是24位包含20位地址和4位按鍵 } // 輸出解碼結(jié)果 Serial.print(Decoded Data (); Serial.print(bitCount); Serial.print( bits): 0x); Serial.println(decodedData, HEX); // 進一步解析例如將24位數(shù)據(jù)拆分為地址碼和按鍵碼 unsigned long address (decodedData 4) 0xFFFFF; // 假設高20位是地址 unsigned char key decodedData 0x0F; // 低4位是按鍵 Serial.print(Address: 0x); Serial.print(address, HEX); Serial.print(, Key: ); Serial.println(key); }這個解碼函數(shù)包含了基本的脈沖寬度匹配、數(shù)據(jù)位組裝和簡單的錯誤檢查。在實際應用中你需要根據(jù)抓取到的實際脈沖序列來調(diào)整起始索引、位數(shù)和判斷邏輯。5. 信號抓取、分析與協(xié)議逆向在編寫最終的解碼程序前我們通常需要一個“偵察兵”來幫助我們看清敵人遙控信號的真面目。這就是信號抓取與分析階段。5.1 使用“偵察兵”程序抓取原始信號上傳下面這個程序它會把接收模塊捕捉到的每一個脈沖的寬度微秒數(shù)和類型高電平H或低電平L通過串口打印出來。#define RECEIVER_PIN 2 volatile unsigned long lastTime 0; volatile bool state false; // 記錄當前引腳電平 void setup() { Serial.begin(115200); pinMode(RECEIVER_PIN, INPUT); attachInterrupt(digitalPinToInterrupt(RECEIVER_PIN), handleInterrupt, CHANGE); } void handleInterrupt() { unsigned long currentTime micros(); if (lastTime 0) { unsigned int duration currentTime - lastTime; char pulseType state ? H : L; // 上一個狀態(tài)持續(xù)了duration微秒 Serial.print(pulseType); Serial.print(:); Serial.print(duration); Serial.print( ); } state digitalRead(RECEIVER_PIN); // 更新當前狀態(tài) lastTime currentTime; } void loop() { // 主循環(huán)空轉(zhuǎn)所有工作在中斷中完成 delay(1000); Serial.println(); // 每秒換行方便閱讀 }上傳代碼后打開串口監(jiān)視器按下遙控器的一個按鍵。你會看到刷屏般的數(shù)據(jù)類似L:9560 H:440 L:340 H:900 L:900 H:340 L:340 H:900 ...解讀L:9560表示一個持續(xù)9560微秒的低電平這很可能就是同步頭。緊接著的H:440 L:340可能代表一個數(shù)據(jù)位高電平440μs低電平340μs。你需要多按幾次觀察數(shù)據(jù)的規(guī)律性。5.2 分析數(shù)據(jù)規(guī)律與確定協(xié)議參數(shù)將串口數(shù)據(jù)復制到文本編輯器如VS Code、Notepad中進行分析。找同步頭尋找一個明顯長于其他脈沖的低電平L或高電平H。記錄其典型寬度如L:9000-10000。找數(shù)據(jù)位模式同步頭之后數(shù)據(jù)通常以“高-低”、“高-低”的脈沖對形式重復出現(xiàn)。測量多個“高-低”對的寬度。區(qū)分0和1你會發(fā)現(xiàn)“高-低”對的組合有兩種主要模式H:300 L:900和H:900 L:300具體數(shù)值因遙控器而異。通常短高/長低代表“0”長高/短低代表“1”但也可能相反。你需要結(jié)合后續(xù)解碼結(jié)果來驗證。確定數(shù)據(jù)長度數(shù)一數(shù)從同步頭之后到信號結(jié)束一共有多少個“高-低”脈沖對。常見的固定碼是24位24個脈沖對也有32位或其他長度的。驗證穩(wěn)定性對同一個按鍵多次按下抓取的數(shù)據(jù)序列應該基本一致脈沖寬度在小范圍內(nèi)波動。如果差異巨大可能是干擾或接收模塊不穩(wěn)定。通過這一步你就能確定syncPulseMin、shortPulseMax、longPulseMin、bitHighWidth等關(guān)鍵閾值以及數(shù)據(jù)位的總長度。將這些參數(shù)更新到第4部分的解碼程序中。5.3 協(xié)議逆向?qū)崙?zhàn)以常見遙控器為例假設我們分析一個遙控器得到以下典型序列單位μsL:9500, H:450, L:320, H:890, L:890, H:320, L:320, H:890, L:890, H:320, ...(后續(xù)重復類似模式)同步頭L:9500 遠大于其他可設syncPulseMin 5000。脈沖對有兩種組合組合A:H:450, L:320高約450 低約320組合B:H:890, L:890高約890 低約890分析高電平寬度有兩種450和890低電平寬度也有兩種320和890。在EV1527類協(xié)議中高電平寬度通常是固定的但這里出現(xiàn)了差異。這可能是一種變體或者我們的測量包含了誤差。更常見的模式是高電平固定低電平變化。讓我們重新審視也許H:450和H:890的差異是測量誤差或信號畸變實際高電平應取平均值~670μs。而低電平明顯分為短320μs和長890μs兩種。假設我們假設高電平是固定的噪聲較大的值低電平用于編碼。短低電平320μs代表“1”長低電平890μs代表“0”。這個假設需要解碼后驗證比如同一個按鍵每次解碼出的二進制碼是否相同。參數(shù)設定bitHighWidth 670(取450和890的平均)zeroLowWidth 890(長低電平假設為0)oneLowWidth 320(短低電平假設為1)shortPulseMax 500(用于區(qū)分長短低電平的閾值取中間值約600)longPulseMin 600將上述參數(shù)代入解碼程序進行測試。如果同一個按鍵每次都能輸出相同的地址和按鍵值且不同按鍵輸出不同那么我們的解碼基本就成功了。6. 程序優(yōu)化、功能擴展與常見問題一個基礎的解碼程序完成后我們可以從穩(wěn)定性、易用性和功能性上進行增強。6.1 穩(wěn)定性優(yōu)化防抖與容錯處理無線信號易受干擾接收模塊輸出會有毛刺必須進行軟件防抖和容錯。脈沖寬度過濾在中斷服務程序中如果計算出的pulseWidth非常小例如小于100μs這很可能是毛刺應直接忽略不設置pulseReceived標志。void handleInterrupt() { unsigned long currentTime micros(); if (lastTime 0) { unsigned long tempWidth currentTime - lastTime; if (tempWidth 100) { // 忽略小于100us的干擾脈沖 pulseWidth tempWidth; pulseReceived true; } } lastTime currentTime; }動態(tài)閾值校準不要使用固定的shortPulseMax和longPulseMin??梢栽诔晒獯a一幀后自動更新這些閾值。例如統(tǒng)計本次所有低電平脈沖進行聚類分析自動計算出區(qū)分0和1的最佳閾值。幀校驗一些高級的編碼協(xié)議會包含校驗和Checksum或滾動碼Rolling Code。如果可能在解碼后驗證校驗和確保數(shù)據(jù)的正確性。6.2 功能擴展從解碼到發(fā)射與控制解碼的最終目的是為了控制。一旦我們知道了遙控器的地址碼和按鍵碼就可以用另一個433MHz發(fā)射模塊來模擬遙控器實現(xiàn)自動化控制。發(fā)射程序編寫原理與解碼相反。我們需要根據(jù)協(xié)議用GPIO口模擬出特定的高低電平序列并連接到發(fā)射模塊的DATA引腳。void sendBit0() { digitalWrite(TX_PIN, HIGH); delayMicroseconds(300); // 短高電平 digitalWrite(TX_PIN, LOW); delayMicroseconds(900); // 長低電平 } void sendBit1() { digitalWrite(TX_PIN, HIGH); delayMicroseconds(900); // 長高電平 digitalWrite(TX_PIN, LOW); delayMicroseconds(300); // 短低電平 } void sendSync() { digitalWrite(TX_PIN, LOW); delayMicroseconds(9500); // 同步頭低電平 digitalWrite(TX_PIN, HIGH); delayMicroseconds(450); // 同步頭高電平 } void sendCode(unsigned long code, int bitLength) { sendSync(); for (int i bitLength-1; i 0; i--) { // 通常先發(fā)送最高位 if (bitRead(code, i)) { sendBit1(); } else { sendBit0(); } } digitalWrite(TX_PIN, LOW); // 發(fā)送完成后拉低 }集成到智能系統(tǒng)將解碼程序運行在ESP8266/ESP32上解碼后的數(shù)據(jù)可以通過MQTT協(xié)議發(fā)布到Home Assistant、Node-RED等平臺從而實現(xiàn)手機APP控制、語音控制或自動化場景聯(lián)動。6.3 常見問題與排查技巧實錄在實際操作中你幾乎一定會遇到下面這些問題。這里是我的排查清單問題現(xiàn)象可能原因排查步驟與解決方案串口無任何輸出或輸出全是0或11. 電源問題。2. 接線錯誤。3. 接收模塊損壞。4. 引腳模式或中斷配置錯誤。1. 用萬用表測量接收模塊VCC和GND之間電壓是否為5V。2. 檢查DATA線是否接在了正確的、支持中斷的引腳上。3. 運行最簡單的digitalRead測試程序看是否有變化。4. 檢查代碼中attachInterrupt使用的引腳編號和中斷模式CHANGE。有數(shù)據(jù)輸出但雜亂無章按下遙控器無規(guī)律變化1. 環(huán)境無線電干擾嚴重。2. 接收模塊質(zhì)量差超再生。3. 天線問題。4. 遙控器電池電量不足。1. 遠離路由器、手機、微波爐等干擾源。2.更換為超外差接收模塊這是解決大多數(shù)干擾問題的首選方案。3. 確保天線豎直且長度合適約17cm。4. 更換遙控器電池。能抓到信號但解碼程序無法識別同步頭或數(shù)據(jù)位1. 閾值syncPulseMin,shortPulseMax等設置不合理。2. 協(xié)議判斷邏輯錯誤如誤判了0和1的對應關(guān)系。3. 脈沖緩沖區(qū)大小不足或溢出。1. 使用“偵察兵”程序精確測量脈沖寬度重新校準閾值。2. 嘗試交換zeroLowWidth和oneLowWidth的賦值邏輯。3. 增加MAX_PULSES的值并在串口打印pulseIndex觀察是否接近上限。同一個按鍵每次解碼出的結(jié)果最后幾位不穩(wěn)定1. 信號在尾部受到干擾。2. 程序判斷幀結(jié)束的邏輯有誤可能包含了噪聲。1. 在解碼函數(shù)中增加對每個脈沖寬度的合理性檢查異常則丟棄整幀。2. 修改幀結(jié)束判斷邏輯不要用固定脈沖數(shù)改用超時機制如信號結(jié)束后10ms無新脈沖則認為幀結(jié)束。解碼成功但用發(fā)射模塊模擬控制時設備無反應1. 發(fā)射模塊與接收設備頻率有微小偏差。2. 發(fā)射功率不足或天線不佳。3. 編碼協(xié)議細節(jié)有誤如前導碼、重復次數(shù)。1. 嘗試連續(xù)發(fā)送同一幀數(shù)據(jù)3-5次多數(shù)接收器需要重復接收。2. 確保發(fā)射模塊供電充足可直接接5V并安裝天線。3. 用邏輯分析儀或另一個接收模塊抓取你發(fā)射的信號與你解碼出的原始信號對比看是否一致。檢查是否遺漏了協(xié)議中的前導碼或特殊的幀結(jié)束符。幾條寶貴的實操心得示波器或邏輯分析儀是終極武器如果條件允許用它們來看信號波形一切問題都無所遁形。沒有的話我們的“偵察兵”串口打印法是性價比最高的替代方案。耐心是美德解碼尤其是逆向未知協(xié)議是一個需要反復嘗試、觀察和推理的過程。第一次就成功的情況很少多抓幾次信號對比分析。從簡單到復雜先找一個最簡單的、只有一個按鍵的遙控器來練手。成功后再去對付那些多鍵、帶有學習對碼功能的復雜遙控。社區(qū)與開源庫在動手造輪子前先去看看像RCSwitch、rc-switch這樣的開源庫。閱讀它們的源碼你能學到更工業(yè)級的防抖、解碼和發(fā)射實現(xiàn)很多時候直接使用這些庫就能解決問題。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
很很干在线视频| 欧美婷婷| 九九热10| 天堂在线9| 丁香婷婷五月| 激情都市丁香婷婷| 思思热热久久| 丁香五月天色| 色99热| 北京熟妇搡BBBB搡BBBB| 日韩欧美成人片| 狠狠另类视频| 国产精品成人在线| 久久激情五月天| 国产看真人毛片爱做A片| 五月婷视屏在线观看| 99无码视频| 五月婷婷电影院| 久9精品视频| 久草五月天电影网| 九九爱这里只有精品| 加勒比久热| 久久狠狠干| 久久这里只有国产视频| 婷婷亚洲激情在线观看视频| 综合激情网五月激情 | 刘玥精品一区| 国产XXXX搡XXXXX搡麻豆| 日日干日日| 精品99爱免费视频在线观看| 亚洲色婷婷99一9|| 亚洲第一色色色色| 99高级会所久久| 99啪99| 日韩无码AV电影网站| 五月丁香影院| www.五月丁香| 色婷网| 26UUU欧美激情一区二区| 国产五月婷| 深爱五月月天| 天天色综合色色色色色。| 欧美视频五区| 日本三级日本三级99| 大香蕉人人网| 色啪影院| 欧美群妇大交乱婬网| 噜噜狠狠色综合久| 狼友超碰| 久久99久久99精品免观看粉嫩| 国模九区| 丁香五月婷婷亚洲天堂| 六月丁香天堂| 久久精品99久久久久久| 日本九九九九| 亚洲婷婷五月天综合| 激情AV在线| 丁香五月婷婷欧美激情-中文天堂最新版在线观看 | 五月婷婷婷婷| 亚洲激情在线| 色六月 婷婷| 三级片AAA久久久AAA久久久AAA| 丁香激情网| 99热在线只有精品| 熟女少妇内射日韩亚洲| 99啪视频在线观看| 六月婷婷久久| 思思热思在线精品视频| 欧美综合五月丁香六月婷| 六月丁香婷婷亚洲中文玖玖| 五月天色婷婷网| 九九久久视频| 久久精品视频99| 97精品在线| 色五月综合网| 亚洲欧美在线观看| 九月婷婷综合在线| 碰碰91| 五月婷五月婷伊人伊人五月婷| 婷婷色色网| 国产成人网址| 国产色五月| 婷婷五月天激情在线| 丁香五月六月欧美| 久久精品婷婷| 久草婷妨| 色五月综合网| 婷婷五月AV| 99操逼| 色色色在线观看| 色播五月网| 日本久久99| 亚洲深喉AV| 五月丁香综合久久夜夜| 性色播| 丁香五月色综合色播五月| 久久九九大香蕉电院| 精品成人a v无码内射| A久久| 久操福利| Y11111111111少妇电影院| 激情AV中文| 色九网| 丁香成人综合| 色婷婷免费观看| 色色色综合网| 玖玖综合色| 五月亚洲激情| 日本三级日本三级99| 色婷婷激情| 4399精品一区二区| 五月天天天开心激情网| 婷婷激情人妻| 婷婷色一二三区波多野结衣| 激情久久五月网| 日韩AAAAAAAAAAA片| 99热欧美| 久久久久久久久久91| 色狠狠伊人久久五月丁香| 亚洲欧美国产高清vA在线播放| 色婷婷AAA| av大片在线| 色欲九区| 婷婷成人视频| 内射 无码 伊人| 超碰电影在线播放| 五月激情婷婷在线| 性爱激情久久| 丁香激情婷婷网| 99在线观看| 丁香激情综合| 亚洲综合婷婷| 老师的粉嫩小又紧水又多A片视频| www.久9| 婷婷五月天综合蜜桃| 91超级碰在线视频| 久久99日本精品视频免费观看| 大香蕉久| 99色干| 丁香花五月天社区| 色婷婷丁香五月天| 日本nghangse中文字幕| 色婷婷五月天天天干天天操天天爽 | 婷婷狠狠综合网入口| 超碰色综合| 视频色色色色色色| 六月丁香AV| 国产精品五月丁香| 极品人妻VIDEOSSS人妻| 色狠狠六月| 成人丁香五月天| 97碰成超视频免费视频| 狠狠干在线| 操97在线观看| 亭亭五月色男人| 日日噜噜夜夜狠狠久久丁香五月| 欧美性爱特黄一级aaaassss| 国产暴力强伦轩1区二区小说| 亚洲综合在线视频| 欧美性爱五月天| 五月丁香久久久久| 久久9视频| www.色婷婷.com| 五月丁香六月婷婷激情视频在线观看免费 | 欧美va亚洲va| 影音先锋女人AA鲁色资源| 草综合网| 五月天婷婷成人网| 天天日夜夜爽。| AA片在线观看视频在线播放| 五月丁香六月情婷婷久久| 成人片黄网站色大片免费毛片| 日本久久网| 99综合视频| 色婷婷丁香| 九九干视频| 婷婷色吧| www.日日夜夜.com| 99久久综合精品五月天| av超碰在线| 婷婷五月天免费视频在线观看| 99精品丁香五月| 色五月婷婷激情五月| 欧美大肥婆大肥BBBBB| 丁香五月天啪啪| 99热网站| 六月婷婷激情小说网| 天堂网亚洲色图| 激情亚洲网| 亚洲精品网址| 丁香五月天婷婷激情| 亚州精品色情无码A片| 婷婷综合激情| 99热99热不卡| 激情五月综合| 狠狠久久婷五月综合色| 婷婷五月天综合久久| 五月天婷婷香蕉狠狠超碰综合| 婷婷五月激情图片| 五月激情综合婷婷| 97人人看一| 五月婷婷激情性爱| 激情五月天综合图片小说网站| 熟女人妻一区二区三区免费看| 97婷婷丁香五月| 丁香操逼| 天天天干夜夜夜操| 思思 热 99| 一级精品999WWW| 五月天婷婷在线播放| 情婷婷五月天在线| 综合网啪| 97人人操人| 狼友视频在线观看18| www.av视频xx999.com| 涩五月婷婷| 亚洲色A| 色婷婷五月在线| 1024日韩| 五月丁香婷婷爱| 亚洲艹网| 久色五月天| 五月婷婷性爱| 欧美超碰人人| 五月丁欧美| 亚洲色无码A片一区二区麻豆| 六月久久狠狠| 五月婷婷色丁香| 4399欧美另类视频| 月丁香久久久| 牛牛澡牛牛爽| 五月丁香六月| 色色综合网站| 天天爽夜夜爽夜夜爽精品视频| 五月天婷婷基地| 大香蕉久久久久久久久| 国产精产国品一二三在观看| 99在线播放视频| www夜夜操wwwcon| 欧美婷婷日本| 欧美伊人9| 久久九九激情五月天| 99啪啪视频| 婷婷 色 丁香 夜| 亚洲综合激| 9 1在线视频| 亚洲精品V天堂中文字幕| 91碰碰视频| 激情五月天www| www.天天干.com| 久久婷婷内射| 五月丁香六月色| 亚洲日韩成人三级av| 人妻内射视频| 天天色天天日| 九九久久99| 九九五月天| 婷婷丁香五月综合免费视频百花| 久久精品人妻| 五月天社区婷婷丁香社区| 色情五月天A片| 婷婷丁香五月天综合网| 婷婷丁香五月天在线视频| 超碰在线国产| 精品国产va久久久久| 日本婷久久| 国产成人AV在线播放| 人碰91| 31色区视频免费看| 欧在线一区| 色五月色开心开心五月| 国精产品一区二区三区| 99碰网站| 99爱视频精品在线观看| 五月婷婷六月丁香激情综合网| 开心五月婷婷五月| 爱草视频在线观看| 五月开心深爱激情网| 五月婷在线色视频| xxx.色婷婷| 99热在线只有精品| 婷婷综合网| 97av在线视频| 国产XXXX搡XXXXX搡麻豆| 国产乱子轮XXX农村| 另类少妇人与禽zOZZ0性伦| 久久xx| 亚洲最大成人综合网720P| 这里有精品| 97干干干丁香| 天天综合91入口| 丁香五月色五月| 99热只有精品综合| 婷婷五月激情视频| 色久天| 激情视频网址| 亚洲欧美日韩另类| www.久久| 五月婷婷丁香瑟瑟视频| 色人久久| 婷婷五月天丁香综合网| 另类综合激情| 九九热手机在线视频| 色婷婷五月天小说| 五月婷在线观看| 欧美日韩中文国产一区发布| 五月激情婷婷国产精品久久久久久| 色色色婷| 欧美色爱五月天| 大香蕉婷婷久久| 色5月婷婷| 亚洲第一成人AV| 4399伦理午夜| 丁香五月天五码婷婷| www.天天日| 五月婷av| 99热全是精品| 五月天婷婷乱| 五月婷婷激情五月| 亚洲 欧洲 国产 伦综合| 91婷婷丁香| 99综合97| 亚洲精品操一操、噜一噜、摸一摸、爽| 成年人99热| 棕合影院色色| 亚洲色五月婷婷| 人人玩人人橾| 久久99久久99精品免观看粉嫩| 99精品国产乱码久久久人妻| 久久婷婷丁香| 天干夜夜操| 大香蕉五月天| 婷婷色五月丁香六月欧美啪| 色婷婷丁香五月天在线观看| 一本色道久久88加勒比| 玖热精品综合视频| 久久hd| 国产婷婷婷| 婷综合| 久久久久久久久人妻| 婷婷婷婷婷婷婷五月丁香| 热久综合| 色色婷婷综合网| 91操人视频| 国产免费av网站| 九九99视频精品| 久久五月天视频| 欧美色激情四射| 婷婷99狠狠| 99视频这里有精品| 婷婷五月丁香综合桃花色网| 五月婷婷狠狠干| 婷婷色综合| 丁香六月婷婷久久高清| 五月丁香婷婷免费视频| 激情超碰网| 欧美毛片www| 九九AV| 99男人的天堂| 亚洲美女网Va| 亚洲AV第二区国产精品| 亚洲旡码| 91 九色 熟女| 日日杆天天| 狠狠操综合| AV成人在线播放| 金品在线视频99| www.狠狠艹| Www.se.久久| 久久在线人妻| 99艹精品在线观看| 欧美色色色色色| 嫩草哈哈操| 婷婷五月激情在线视频| 好色婷婷| 婷婷色五月丁香六月欧美啪| site:pzdcoin.com| 思思久久99热只有频精品66| 天天操夜夜肏| 亚洲成片在线观看| 91热在线| 综合狠狠五月婷婷| 激情五月天情色| www,色色色网站| 大香蕉七区| 七七色色综合| 五月丁香色婷婷婷基地| 懂色av粉嫩av蜜臀av| 人妻VideOssS人妻| www.91婷婷| 97人人操人人干| 天天色情站| 亚洲成人AV高清字幕| 九九热手机在线视频| 婷婷丁香婷婷97| 六月婷婷色色色| 亚洲成人网站在线观看| 性做爰A片免费视频A片直播| 夜夜谢天天干| 樱花99视频| 91re色综合视频| 狠狠干狠狠干| 这里只有精9| 丁香五月综合激情久久潮喷| 日本久久精品| 色综合天天天天做夜夜| 91久久久久久久| 天天色综网| 久久九九色| 五月丁香在线视频观看| 亚洲AV电影美洲AV电影| 色99视频| 狠狠操天天干| 婷婷色日本| 五月婷婷六月丁香首页| 欧美色男人网站| 五月天婷综合| 丁香五月中文字幕久色| 丁香五月婷婷婷婷欧美综合| 五月天激情网址| 欧亚成人A片一区二区| 欧洲色色| 久久精品视频9| 久操无码| 婷婷丁香五月激情密臀av| 1000部毛片A片免费观看| 色五婷婷| 97涩涩丁香五月天| 婷婷五月天在线看| 国产avapp 网| 色婷婷色| 色综合综合综合| 9久热| 五月综合视频| 深爱激情网综合| 五月天色婷好好| 婷婷内射视频在线| 97成人在线视频精品| 欧美色一级色| 亚洲亚洲人成综合网络| 99自拍视频在线观看| 97色啪| www.亭亭五月天| 五月在线婷色| 婷婷爱在线观看| aaa9区免费在线观看| av大片在线| 人妻久久久久久久 | 日韩一区二区A片免费观看| 日本系列_4页_777FP| 色永久| ...婷婷国产成人亚洲日韩| 五月天婷婷綜合院| 久久精品五月天| www亚洲无码| 久久婷婷五月天大香蕉| 超碰在线观看三级片| 狠狠狠狠狠狠| 日产精品一线二线三线芒果| 婷婷五月激情网| 丁香六月色婷婷| 五月天激情国产综合婷婷婷| 99热综合色图| 99热国产精品| 婷婷丁香在线| 五月亭亭六月天| 亚洲综合久| 性综合网| 激情九月综合| 五月婷婷激情综合| 精品夜夜澡人妻无码AV| 51精品国自产在线| 国产精女同一区二区三区久| 国产三级在线播放| www.色九月| 色婷婷色综合激情91| 婷婷欧美激情| 日本三级中国三级99人妇网站| 99久.| 97操操| ay2区| 婷婷色五月婷婷姐妹| 色热久资源| 九九综合久久丁香婷婷,开心激情综合网| 妇激情基地| 开心婷婷五月激情网小说| 婷婷五月四狠狠| 99热99日…..| av五月天婷婷丁香| 五月丁香精品| 粉嫩AV久久一区二区三区| 国产毛片欧美毛片久久久| 久久五月婷婷综合网| 亞洲自怕| 99热播放| 五月丁香花伦理电影| 丁香社区婷婷五月| 五月丁香婷婷久久| 五月天色小说| 婷婷五月丁香91| 六月丁香婷婷综合色播| 亚洲色综合性| 97色干| 屁股翘好撅高迎合跪趴| 丁香婷婷五月人体| 99热热九九| 色五狠狠| 六月天婷婷| 蜜臀av 粉嫩av 懂色av| 色情五月婷婷| 丁香五月天网友自拍啪啪啪视频| 99九九热在线观看| 少妇性BBB搡BBB爽爽爽视頻| 亚洲狠狠婷婷| 丁香五月婷婷成人色区| 精品人妻久久久久久| 色婷婷狠狠| 婷婷五月激情小说| 26uuu视频欧美| 色丁香五月婷婷在线| 91操熟女| 日韩精品一区二区刘| 丁香婷婷啪啪| 五月天成人网在线观看| 色狠狠色噜噜AV天堂五区| 亚洲AVDVD| 亚洲婷婷开心五月| 婷婷五月丁香久久| 欧美婷婷色五月网| 色五月开心开心五月激情五月| 国产激情在线| 九月停停| 亚洲色婷婷99一9|| 色婷婷久久| 91碰碰碰久久久久| 天天日日天天| 五月婷婷婷| www.com任你艹| 日韩激情婷婷五月天| 久久久婷婷五月亚洲97号色| 丁香五月玖玖| 五月丁香六月婷婷中合网| 丁香五月婷婷av| 九月激情婷婷丁香| 狠狠五月天婷婷| 99热这里都是精品| 99热只有精品在线| 五月丁香六月婷婷在线观看| 国产看真人毛片爱做A片| 另类专区在线| 亚洲色夜| 亚洲AV无码成人精品区电影网| 五月丁香综合伦理片| 97色碰| 日本激情91| 亚洲激情婷婷| 色婷婷综合丁香五月天| 激情五月丁香五月| 久久九九Com| 九九成人精品| 日本一级淫| 色色综合日韩| 亚洲精品国产A久久久久久| 只有精品在线观看| 99热这里是精品| 丁香五月婷婷久久综合激情网 | 99热99在线| 色婷婷久久综| 大香蕉婷婷色| 亚洲色综合| 操97| 人人玩人人橾| 五月天婷婷综合| 亚州激情网| 99久久99九九99九九九| 天天草天天舔| 久久这里只有精品视频15| 99热这里有精品2| 97碰碰草| 99综合自拍| 九九亚洲综合| 丁香五月婷婷网| 美妞av| 欧美成人猛片AAAAAAA| 色大综合| 大香蕉人人网| 99久久网站| 日韩欧美一区二区三区四区| 狠狠综合| 五月天俺去也| 久久9热| 婷婷丁香熟妇综合网| 热99国产精品| 婷婷五月欧美综合| 99热97| 大香蕉久艹| 亚洲操操| 五月婷婷基地| 99九九精品| 亚洲精品一区无码A片| www五月天激情com| 99欧州偷拍视频| 伊人五月天| 久狠日av| 婷婷色婷婷| 91蝌蚪窝视频在线| 国产精品爽爽久久久久久| 久操热| 在线看九一V图片| 激情五月天综合婷婷网| 久久五月天婷婷视频| 丁香五月婷婷综合啪啪| 在线视频激情网站| 啪啪五月天啪啪| 色婷在线视频| 国产露脸150部国语对白| 天天天天天天操| 色婷婷基地在线| av婷婷丁香| 五月天精品视频| 蜜臀嫩草| 黄色大片又大粗又爽| 五月婷婷 婷婷五月 一区二区 久久久| 色色色色色网| 日夜夜天天| 自拍偷窥99热| 亚洲另类AV| 久久曰曰| 色热久| 日日夜夜爽爽| 亚洲激情亚洲激情 | 91欧美| 五月情色天| 九九人妻福利| 殴美激情综合网| 伊人久久丁香五月91| 婷婷五月天久久久| 另类激情综合| 激情五月天色婷婷| 激情伍月 欧美| 综合久久综合久久| 无码一级片| 国产精产国品一二三在观看 | 99热最新网址| 激情五月天综合网| 丁香久久| 五月综合精品| caopeng97日韩| 成人丁香五月| 国产操B视频| 热996精品在线观看| 成人.在线日韩| 狠狠草在线观看| 91丨九色丨白浆| 另类图片色五月| 熟妇国产| 香蕉久久国产AV一区二区| 久久在这里有精品| 色色色五月婷婷| www.射伊蕉婷婷| 操日本色| 久久国产AV| 91制片厂久久久国产电影| 精品一二三区久久AAA片| 亭亭五月色男人| 色婷婷综合影院| 五月天综合激情网| 丁香五月天激情免费在线观看AV777| 99色视频在线观看| 小视频一区| 成人网丁香五月| α久久| 九九成人精品| 九九综合久久| 综合激情五月天六月婷免费视频| 婷婷综合爱| 婷婷丁香五月高清| 天天影院色| 婷婷五月婷婷| 91九色熟女| 97久久人人操| 99热在线观看| 欧美特大片黄| 在线观看欧美3区| 色色综合热| 五月天伊人久久久久| 久久999久久999久久999久久| 伊人久久大香天蕉亚洲特级| 日本99在线| 91干| 婷婷五月天六月综合| www.思思99热| 五月丁香婷婷成人网| 日本色综合| 六月丁香av| 思思热在线观看| 性av| www.激情五月天.con| 色欧美影院| 六月丁香啪啪| 色情一区二区播放| 婷婷五月天情色| 人人摸人人搞| 色五月丁香91| 成人Av在线大片| 五月激情五月丁香| 丁香六月婷婷综合啪啪| 五月丁香激情婷婷| 国产成人精品亚洲线观看| 就爱日五月天| 五月天成人综合| 久久av电影| 五月天成人综合| 亚洲五月婷| 97自拍视频网| 入口五月婷婷六月香| 日本在线噜噜| www九九| 99热在线观看| 99九九综合久久九九| 激情五月婷婷欧美极品 | 婷婷丁香五月欧美人| 婷婷色片| 99热个人在线| 色播综合| 丁香婷婷色五月| 99久久网站| 无码动漫AV| 99热无码精品| EEUSS鲁片一区二区三区| 97操操| 综合精品啪啪| 丁香5月综合啪啪| 婷婷黄色| 欧美男女婷婷| 久久人人人人妻| 亚洲欧洲另类| 丁香五月婷婷99| 天色综合网站| www.狠狠| 亚洲无码11| 丁香五月六月婷婷殴美综合| 五月激情综合网| 婷婷色五月天色| 五月丁香色狠狠干大屄| 五月丁香综合激情| 欧美精产国品一二三区| 熟女激情五月天 | 激情久久四色| 99自拍网| 狼人婷婷综合| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 久久人妻人人| 99热草草| 操逼123网| 日本狠狠干| 9|无码久久久久久| 日韩在线99| 色婷婷玖玖影院| 牛牛碰免费| 日韩综合成人| 综合热无码| 成人精品视频99在线观看免费| 激情九月婷婷| 99精品自拍视频| 日韩精品一区二区亚洲AV观看| 亭亭五月色男人| 影音先锋男人av资源站| 五月丁香激情婷婷综合| 黄色片久久| 六月婷婷私欲| 久草丁香婷婷1024| 五月天激情综合10p| 中文字幕有多少字| 99视频精品8 | 婷婷五月天VI| 婷婷丁香五月,狠狠综合| 国产美女无遮挡裸体毛片A片| 色狠狠999综合网| 美日韩成人| 97五月天婷婷午夜| 性一交一乱一交A片久| 天天爽天天日人人爱| 成人做爰A片免费看视频| 激情涩涩网| 久久在线视频免费观看| 五月丁香啪啪啪啪| 天天干人人奸97| www激情五月天| 99啪在线| 色婷婷香蕉| 成人五月天在线观看| 婷婷六月色| 密乳视频| 色爱综合五月| 天天肏在线观看| 色婷婷五月天中文字幕| www.色婷婷| 这里只有精品久| 9一精品视频观看| 日本3级片一区2区| 色色色激情| 少妇大叫太大太粗太爽了A片 | 91狠狠综合网| 中文字幕黄色片| 亚洲综合婷婷五月| www,色综合| 五月天婷婷色综合| 中文字幕日韩无码制服诱或| 欧美日韩一区二区三区四区| 亚洲操B| 欧美精品999| 成人综合网站| 婷婷五月花西瓜| 五月天堂婷婷| 成人美女网| 天天日 天天草| 四月婷婷五月色综合| 99热在线观看| 亚洲婷婷基地| 婷婷在线操| 丁香五月电影院在线观看| 天天狠狠夜夜狠狠2023| 婷婷五月天激情综合网| 丁香五月情| 少妇性按摩无码中文A片| 亚洲男女激情| 天天日夜夜B久久| 欧美日本97| 婷婷伊人网| 思思热高清在线观看| 日韩成人精品中文字幕| 婷婷五月天丁香综合网| 色屌丝中文字幕| 在热视频精品| 久久之人妻| www.激情五月天.com| 丁香色婷婷| 99操逼| 五月婷婷偷| 色蜜婷婷| 色逼综合网| 九九热99热| 日欧大屏操| 丁香五月综合图片在线观看| 五月婷六月| 亚洲黄色操逼| 99久re热视频精品98| 久久国产色| 狠狠色情婷婷| 丁香六月婷婷| 色婷婷色综合激情91| 欧美三级巜人妻互换| 国产成人+综合亚洲+天堂| 乱轮A片| 五月婷婷开心亚洲无| 久婷婷色| 婷婷亚州综合| 久色精品| 91五月天| 5月丁香啪啪啪| 五月婷婷五月| 婷婷亚洲色| 五月天激情婷婷五月天久久| 亭亭五月丁香综合欧美| 久久宗合影| 91在线看片| 欧美午夜乱妇午夜福利| 精品久热| 99热一区| 欧洲亚洲精品| 99ri精品| 亚洲最大在线| 色综合丁香婷婷| 九九热在线观看视频| 五月天婷网| 热99热9| 五月色欧洲| 综合久色五月| 一根材五月婷成人| 天天爽夜夜爽夜夜爽精| 激情丁香婷婷六月天| 丁香五月婷婷啪| 色五月婷婷操逼| 99亚洲视频| 丁香五月电影院在线观看| 婷婷五月丁香A∨| 久久艹网| 色噜久| 欧美性爱中文字幕| 91色在线 | 日韩| 综合色网站| 久99久热| PORNY九色9l自拍视频成人| 色情五月天丁香社区| 婷婷狠狠18禁久久| 婷婷99视频精品| 色欲婷婷五月天| 丁香五月亚洲AV| 另类色视频| 韩国情人在线电视剧免费观看高清版全集 | www夜夜操com| 深爱激情五月网| 婷色五月天| 五月婷婷啪啪啪| 亚洲激情AV| 亚洲色五月| 日本熟妇乱妇熟色A片蜜桃| 小香蕉av| 狠狠色噜噜狠狠亚洲A∨| 99免费在线视频| 色婷婷婷婷| 九玖视频这里只有精品| 日本婷婷丁香五月| 天天干天天爽天天操| 亚洲va在线∨a天堂va欧美va| 五月天国产| 草草操操| 天天插天天射| 丁香五月伊人| 色婷久九| 久草久青福利| 五月天婷婷丁香社区| 色老久久| 99热在线观看| 99婷婷综合| 欧美在线看| 色A网| 久久一热| 老司机日日夜夜青草| 亚洲国产精品成人午夜| 日韩综合久| ss五月天激情| 五月天五月天激情网| 91精品无码| 91人在线观看| 日韩色五月| 精品无码人妻一区| 婷婷五月花| 午夜69成人做爰视频| 在线综合91| 欧美狠狠草| 五月天婷婷爱| 色无码| 91干在线视频| 国产1区2区3区在线观| 女人天堂 AV| www.婷婷五月| 婷婷色色宗合网| 婷婷色亚洲| 99性视频| 操碰97| 色天堂97| 亚洲久久婷婷| 激情五月婷婷丁香| 96色婷婷| 97激情五月天| 五月婷婷影院| 97碰 在线视频观看| 五月天激情播播网| 五月天婷婷丁香导航| 国产真实乱了老女人视频| 五月天丁香综合久久国产| 婷婷五月天激情视频| caop在线视频| 超级碰 久久9| 99在线观看视频蜜臀| 婷婷婷久久久| 男人的天堂av俄罗斯热| 这里只有在线精品| 综合AV在线| 色色丁香色五月| 日在线V视频在线播放| 亚洲成人网站在线观看| 色月丁| 综合网五月天123| 99亚洲天堂| 14色综合婷婷| 九九久久网| 免费无码毛片一区二区A片| 色噜噜狠狠色综| 97操碰视频| 丁香熟女乱| 婷婷色网站| 色呦精品| WWW五月天| 婷色五月天| 99九九精品| 亚洲成人高清在线| 草榴视频网| 婷婷丁香人妻天天爽| 五月婷婷丁香日韩在线| 五月婷婷视频啪啪美女| www.色综合| 五月丁香六月色婷婷综合五月天| 综合性爱网| 激情综合色婷婷啪啪六月天| 婷婷五月激情视频| 在线综合亚洲欧美65| 99re久热只有精品6在线直播| 丁香五月Av| 99热国产精品| 亚洲综合网 665566| 人伦30P| 伊人婷婷大香蕉| 99riAV国产精品视频| 七七色色综合| 五月天天综合| 狠狠爱婷婷| 日韩精品一区二区亚洲AV观看| www.五月天| 97色啪| 丁香五月区| 五月丁香婷婷在线| 欧美色五月| 丁香五月天偷拍| 噼里啪啦在线观看免费完整版视频| 做爱夜夜干天天操| 婷婷五月花| 五月天婷婷色小说| www99精品日韩| 99热在线观看精品免费| 日韩无码性爱| 九色91视频| 五月激情视频| 丁香六月综合激情| 久热这里只有精品99re,久热这里只有精品7| 亚洲精品又粗又大又爽A片| 婷婷五月丁香成人| 成人 AV播放| 色五月激情综合| 婷婷六月色| 疯狂做受XXXX高潮A片动画| 久久婷婷欧美| 激情av网| WWW久久久| 色色网站观看| 色五月丁香91| 国产这里只有精品| 九九热这里只有精品23| 人妻丰满精品一区二区A片| 亚洲无码九九| 久久综合影院| 99久久网站| 日韩人妻操逼视频| 久草五月天| 五月激情天| 骚货艹网站视频| 日本视频99| 五月综合久久| 色五月婷婷色五月婷婷色五月婷婷| 欧美久久网| 极品少妇XXXX精品少妇偷拍 | www.色色五月天.com| 久99热| 性生活久久朋友人妻| 久久久婷丁香五月天激情综合| 337p大胆噜噜噜噜噜91Av| 天天做 天天爱| 黄色精品五月婷婷| 九九视频在线观看视频6 | 五月婷婷激情综合网| 欧美99热| 狠狠色丁香乆乆| 日本久久婷| 五月天婷爱综合| 国产色网站| 操操操B| 五月婷婷激情性爱| 久久这里只有精品无码| 99操无码视频观看| 亚洲亚洲人成综合网络| 啪啪 综合网| 婷婷色五月色妇| 激情婷婷在线中文字幕| 青青久久五月| 九九伊人网| 九九九九这里只有精品| 九九人妻福利| 草榴视频网| 狠狠色色色| 日狠狠| 可以免费观看的AV| 久久人妻系列| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 五月丁香激情综合啪| www.99热这里精品| 婷婷99狠狠躁天天久久久九九九| 玖玖无码中文| 婷婷五月综合激情免费视频| 丁香色情五月天| www.射伊蕉婷婷| 婷婷五月综合色小姐小说| 色婷婷在线视频| 91青娱乐青青草| 骚货艹网站视频| 色久婷婷网| 特黄三级片| 五月天另类图片区99| 偷拍九九热| 丰满老熟妇BBBBB搡BBB| 天天干 夜夜爽| 思思热在线| 色婷婷五月中文字幕在线dvd| 色久婷婷网| 99久久99久久综合| 天天综合网~91综合网| 五月激情久久| 伊人免费视频9| 成AV人片一区二区三区久久| 色婷婷www| 武则天精品久久| 日日日日日| 无码任你操| WWW,婷婷,COM| 天天日天天日天天搞| 婷婷丁香人妻| 国产在线6| 99re熱| 激情五月婷婷丁香六月| 丁香六月激情| AV成人在线播放| 中文在线成人| 艹天天射| 五月亭亭欧美女人| 婷婷综合av| 97婷婷丁香五月天激情图片| 色五月色五天色情网址| 婷婷9月天| 黄色片avv| 超碰免费人人肏| 婷婷五月丁香99| 97超级碰| 69人人操人人爽| 激情五月九九九| 操婷婷基地| 亚洲有码在线视频| 久久一级片| 久99久热| 九九热AV| 五月丁香六月婷婷,婷| 26uuu美女三级视频| 久久6这里只有精品| 天天色综合色| 五月丁香六月婷婷手机无线| 97五月天婷婷| 丁香五月婷婷色偷偷| 天天干夜晚夜操| 91婷婷色 | 大学生高潮无套内谢视频| 国产成人精品亚洲线观看| www,婷婷,com| 色444综合网| 婷婷色五月大香蕉在线观看| 久9久9久9久9久9久9| 超碰三级秋霞| 久久婷婷五月激情网站| 丁香五月色欲| 婷婷激情六月视频| 天天肏夜夜肏| 99在线精品免费视频| 婷五月天影院| 大香蕉大香蕉在线影院| 五月天社区| 亚洲色婷婷网站| 深爱激情丁香五月| 久久久91| 国产精品99久久久久久久女警| 91制片厂久久久国产电影| 玖玖婷婷色| 26uuu视频欧美| 就爱射中文字幕资源网| 婷婷九月在线| AV九九| 玖玖综合色区在线观看| 免费国产视频| 婷婷五月天成人动漫 | 丁香五月婷婷啪啪啪| 婷婷色香六月综合激情| 99热6精品| 五月婷激情| 五月婷婷久久网| 色婷操逼| 成人欧美Va| 色激情五月| 777影视理论片大全在线观看| 艹色18p| 亚洲无码成人网| 人草人人| 九九色影院| 青青草原爱爱网| 婷激情五月天视频导航| 99九九精品| 婷婷激情综合网| 婷婷伊人五月丁香天堂网| 99久久综合| 五月婷av| 亚洲综合成人网| 五月丁香婷婷啪啪综合| 夜夜爽日日躁| 色播婷婷大香蕉| 91久女| 综合亚洲色色| 亚洲色婷婷五月天| 极品少妇XXXX精品少妇偷拍| 婷婷五月天精品| 色五月婷婷丁香婷婷| 99爱爱| 综合超碰熟| 一二三区视频韩国| 91操碰| 探花搜索结果 - 黄上黄| 久久精品小视频| 97人人干| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 97操视频| 日日噜噜夜夜狠狠久久丁香六月| 精品成人在线| 狠狠操狠狠爱| 欧美精品18| 久久九九激情五月天 | 国产色网站| 俺也高清无码高清视频| 开心五月深爱五月| 久久六月天| 亚洲色频| 九九无毛| 天天操天天操天天操| 亚洲这里只有精品| A1片久久久| 久久九九色| 红桃91人妻爽人妻爽| 激情五月亚洲综合网| 五月激情综合网| 日日干天天射| 香蕉人在线香蕉人在线 | www.久久久久久久久久.com| 久热最新视频| 99re6在线视频精品免费| 俺也去婷婷五月天第五色| 黄网免费看| aaa久久| 九九热精品视频在线观看| 4438全国最大视频成人网站在线观看| 99视频精品8| 少妇被下春药玩弄A片| 99热无码精品| 天天拍天天操| 99re这里只有精品99| 日韩成人综合网| 欧美丁香五月97色| 久久草中文日韩欧美| 色婷婷国产精品综合在线观看| 婷婷网五月天| 激情婷婷网| 99热成人| AV成人在线播放| 99热免费精品| 超碰操网| 六月激情婷婷| 亚洲色情久久| 99色热| 六月综和久久| 欧美三9久九观看| 日本成人小说婷婷六月| 婷婷中文综合网|