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

ARTICLE DETAIL

資訊詳情

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

Python控制Arduino與樹莓派:串口、Firmata與GPIO實戰(zhàn)指南

Python控制Arduino與樹莓派:串口、Firmata與GPIO實戰(zhàn)指南 前陣子有個做智能家居的朋友問我想用Python控制Arduino或樹莓派感覺網(wǎng)上資料很散不知道該從哪條路入門。這個問題我太熟了剛接觸硬件時我也被這兩種設備搞暈過Arduino是微控制器跑的是C樹莓派是一臺小電腦跑的是Linux。用Python把它們管起來最關鍵的從來不是Python語法而是搞清通信鏈路和設備邊界。這篇文章就把我實測過的幾種方案、對應的坑和完整示例一次講清楚覆蓋串口通信、Firmata協(xié)議和GPIO直控給正在做自動化項目的朋友一份能直接上手的路線圖。1. 先想清楚你需要的究竟是哪種控制方式1.1 什么是“用Python控制”三條主流路徑Arduino和樹莓派雖然常被放在一起比較但本質完全不同。Arduino是基于AVR或ARM微控制器的開發(fā)板沒有操作系統(tǒng)上電后只能反復執(zhí)行一段用C/C寫好的循環(huán)程序樹莓派則是一臺完整的ARM Linux迷你電腦有CPU、內存、存儲和圖形界面Python可以直接跑在上面。正因如此“用Python控制它們”這句話在不同設備上對應的實現(xiàn)方式完全不一樣。我實測下來主流玩法有三條路徑路徑一Arduino跑自己的固件電腦上的Python通過USB串口向Arduino發(fā)送指令。Arduino收到指令后執(zhí)行動作比如點亮LED、驅動電機、采集傳感器數(shù)據(jù)再把結果發(fā)回電腦。路徑二給Arduino燒錄Firmata固件把Arduino變成一個“USB外設”。電腦上的Python用pyFirmata或pymata4直接讀寫Arduino的引腳相當于Python直接控制硬件。路徑三在樹莓派上直接安裝Python和GPIO庫通過樹莓派的GPIO引腳控制外設代碼和Python進程跑在同一臺設備上。三條路徑不是非此即彼的排他關系很多時候可以混用。我做過一個自動澆灌系統(tǒng)樹莓派負責天氣API和數(shù)據(jù)庫Arduino負責控制水泵和讀取土壤濕度兩者之間用USB串口通信。樹莓派是大腦Arduino是手腳Python是膠水。1.2 選型判斷從實時性、開發(fā)效率和成本切入選擇哪條路徑主要看三個維度實時性要求、開發(fā)效率、設備成本。Arduino串口方案實時性最好。Arduino固件在中斷和循環(huán)中執(zhí)行響應時間可控特別適合PWM調速、步進電機脈沖、傳感器連續(xù)采樣這些需要確定性的任務。Firmata方案開發(fā)效率最高燒錄一次固件后之后所有邏輯都在Python里寫改代碼不用反復燒板適合原型驗證、實驗室數(shù)據(jù)采集但同一個引腳被上位機不斷讀寫時延遲會比原生固件高幾毫秒到幾十毫秒做小車避障這種對響應速度敏感的項目就得斟酌。樹莓派GPIO方案適合任務多、邏輯復雜、需要聯(lián)網(wǎng)或圖像識別的項目但樹莓派跑的是非實時Linux線程調度不確定如果你需要用微秒級精度做波形建議還是交給Arduino或者用pigpio的硬件PWM輔助。用生活場景類比Arduino是那種任勞任怨的直屬員工你告訴它做什么它就不停執(zhí)行Firmata像是把員工變成遠程操作員你隨時發(fā)指令但它一次只能處理一件樹莓派更像一個部門經理能同時協(xié)調多件事但每件事的響應時間不是絕對保證。所以我的選型建議很簡單外設簡單、交互頻率低可以用Firmata快速出Demo要做高確定性控制老老實實用串口協(xié)議需要跑攝像頭和AI模型直接用樹莓派的Python環(huán)境。項目的技術棧永遠跟著需求走而不是反過來。2. Arduino串口通信最通用、最穩(wěn)定的控制方案2.1 環(huán)境準備從安裝到接線一次到位先把基礎環(huán)境搭好。電腦端需要Arduino IDE現(xiàn)在叫Arduino IDE 2和PythonPython需要pyserial安裝一行命令pip install pyserialArduino IDE主要用于寫Arduino固件和確認串口狀態(tài)。安裝后用USB線把Arduino接到電腦Windows下Arduino一般會識別成COM口比如COM3、COM5Linux/macOS下是/dev/ttyACM0或/dev/cu.usbmodem14101這類路徑。第一次接上時如果系統(tǒng)沒自動裝驅動多半是板子上的USB轉串口芯片驅動沒裝常見芯片有CH340、CP2102、ATmega16U2按芯片型號裝驅動就好。硬件接線這件事很多教程寫得過于神秘。如果你只是想測試串口通信不需要任何外部電路直接用USB線連電腦和開發(fā)板板載LED就是最好的實驗對象。Arduino Uno的板載LED通常焊在D13引腳部分板子上叫L直接控制它不需要額外接線。如果要外接LED記住LED長腳接正極短腳接負極串一個220歐姆到330歐姆的電阻到D13另一端接GND。這個電阻不是可選項沒有它電流容易超過LED額定值燒壞LED甚至可能影響引腳。接線時還有兩個細節(jié)容易踩坑。一是外部供電時一定要和Arduino共地也就是外部電源的地線要和Arduino的GND接在一起否則串口信號沒有參考零點數(shù)據(jù)全是亂碼二是不要在板子通電狀態(tài)反復插拔杜邦線容易造成引腳瞬間短路。我的習慣是斷電狀態(tài)下接線確認無誤再通電。2.2 最小示例讓Python點亮Arduino板載LED現(xiàn)在做一個最簡單的閉環(huán)Python向串口發(fā)一個字符Arduino收到后點亮或熄滅板載LED。Arduino端固件如下char cmd; void setup() { Serial.begin(9600); pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW); } void loop() { if (Serial.available() 0) { cmd Serial.read(); if (cmd 1) { digitalWrite(LED_BUILTIN, HIGH); } else if (cmd 0) { digitalWrite(LED_BUILTIN, LOW); } } }要點是Serial.begin(9600)的波特率和Python端必須完全一致這是串口通信最容易出問題的地方一個9600一個115200讀到的全是亂碼。Serial.available()判斷緩沖區(qū)有沒有字節(jié)Serial.read()每次讀取一個字符固件循環(huán)里的指令處理是實時的收到一個字符就執(zhí)行一次。這個固件雖小但已經包含了一個完整的串口指令解析邏輯讀取、判斷、執(zhí)行。真實項目里這幾十行基礎結構完全夠用你只需要在if后面添加更多指令分支比如a控制舵機、m控制電機、r讀取傳感器。Python端代碼import serial import time ser serial.Serial(COM3, 9600, timeout1) time.sleep(2) ser.write(b1) # 點亮LED time.sleep(1) ser.write(b0) # 熄滅LED ser.close()這里有兩個必修知識點。第一time.sleep(2)不是亂加的。Arduino在USB連接后會自動復位一次復位過程中會重新啟動此時上位機立刻發(fā)數(shù)據(jù)容易丟等2秒是讓板子完成啟動。第二ser.write(b1)必須傳字節(jié)串而不是普通字符串Python3里字符串和字節(jié)串是兩種類型普通字符串需要先encode()否則會報錯。串口打開時經常會遇到PermissionErrorWindows下通常是串口被Arduino IDE的串口監(jiān)視器占用關掉監(jiān)視器再運行Linux下則是當前用戶沒有訪問串口設備的權限后面常見問題部分會詳細說。2.3 為什么不能直接發(fā)字符串給自己設計一個指令協(xié)議很多初學者做到上一步就停了然后把代碼堆成幾百行在Arduino和Python兩側用無數(shù)if和字符串比較處理數(shù)據(jù)遇到數(shù)據(jù)錯亂才回頭補協(xié)議。我的經驗是串口通信別看它簡單真正的坑全在“消息邊界”上。串口本質上是字節(jié)流數(shù)據(jù)一個字節(jié)一個字節(jié)地從TX口送到RX口沒有像報文那樣的消息間隔。如果你的Python程序連續(xù)發(fā)1和2Arduino先收到的是1再收到2這沒問題但如果你發(fā)的是12Arduino可能會完整收到1,2也可能因為時序問題只讀到1下一條指令就成了2。環(huán)境干擾、電源紋波、系統(tǒng)調度抖動都可能讓字節(jié)流“切”出問題。所以稍微復雜一點的通信都要自己約定協(xié)議。最簡單的做法是給每條指令加固定的幀頭和長度。比如幀頭0xAA 0x55兩個字節(jié)長度1個字節(jié)表示后面數(shù)據(jù)個數(shù)數(shù)據(jù)N個字節(jié)校驗1個字節(jié)對長度和數(shù)據(jù)做異或單片機端收到后先判斷幀頭再讀長度然后讀夠N個字節(jié)做異或校驗校驗通過才執(zhí)行命令。這樣即使一個壞幀出現(xiàn)也能通過幀頭同步恢復不會影響后續(xù)指令。Python端組裝一幀的代碼可以這樣寫def build_command(data: bytes) - bytes: frame_header b\xaa\x55 length len(data) checksum length for b in data: checksum ^ b return frame_header bytes([length]) data bytes([checksum])這只是很簡單的示意實際協(xié)議要根據(jù)項目復雜度裁剪。如果只需要控制幾個開關用單字符或帶換行符的字符串也完全夠如果要做傳感器數(shù)據(jù)回傳和命令下發(fā)建議把幀結構固定下來并且最好帶上應答和超時重發(fā)機制。這會在調試上省下大量時間。還要注意Arduino Uno的串口緩沖區(qū)默認最大64字節(jié)如果你要一次性傳輸大批數(shù)據(jù)可以把數(shù)據(jù)切片發(fā)送或者調大緩沖區(qū)。我做過一次八軸機械臂的指令解析一幀正好60字節(jié)超過緩沖區(qū)就出現(xiàn)丟幀最后是靠把幀長減到48字節(jié)才規(guī)避的這種問題到后面排查時會很痛苦。3. Arduino Firmata把Arduino變成可插拔的USB外設3.1 Firmata協(xié)議的原理與固件燒錄如果你只需要快速驗證一個想法不想每次改功能都去改Arduino固件、重新燒錄那Firmata是很好的選擇。Firmata是一種通用協(xié)議它定義了上位機比如電腦上的Python和Arduino之間的通信格式是發(fā)送指令、讀引腳還是寫引腳都用一套標準消息來承載而不是自定義字符。先用Arduino IDE打開固件文件 - 示例 - Firmata - StandardFirmata選擇你的板子和串口直接燒錄。這個固件是官方維護的燒進去之后Arduino就不再執(zhí)行你自己的邏輯而是變成一個“聽話的USB轉IO設備”Python通過協(xié)議告訴它引腳幾、模式是什么、是輸出高電平還是讀模擬值它就照做。需要注意StandardFirmata默認的波特率通常是57600pyFirmata在連接時也會默認用這個值如果你手動設置波特率必須兩邊保持一致。另外Firmata不是萬能的燒錄后如果串口波特率選錯上位機連不上一次只能有一個程序占用Arduino串口不能同時開著串口監(jiān)視器和Python。如果你頻繁調用引腳讀寫serial上的延遲會成為瓶頸。3.2 Python端使用pyFirmata控制引腳安裝依賴pip install pyfirmata然后連接from pyfirmata import Arduino, util import time port /dev/ttyACM0 # Windows下是COM3 board Arduino(port) # 寫數(shù)字引腳13 board.digital[13].write(1) time.sleep(1) board.digital[13].write(0) # 讀模擬引腳A0 analog_input board.analog[0] it util.Iterator(board) it.start() time.sleep(0.1) print(analog_input.read()) board.exit()需要注意讀取模擬值必須開啟Iterator否則Arduino不會主動往電腦發(fā)數(shù)據(jù)第一次讀取之前等一小段時間等引腳采樣穩(wěn)定。還要留意pyFirmata在部分Python新版本下可能會因為依賴庫版本問題報錯如果遇到可以換成pymata4API類似但更現(xiàn)代pip install pymata4from pymata4 import pymata4 board pymata4.Pymata4(com_port/dev/ttyACM0) board.set_pin_mode_digital_output(13) board.digital_write(13, 1) board.set_pin_mode_analog_input(0) board.analog_read(0) board.shutdown()pymata4的寫法更清晰文檔也更完整我現(xiàn)在做原型項目一般直接用pymata4。3.3 什么情況下該用Firmata什么情況別用在硬件原型階段Firmata能把“改代碼”的工作從Arduino搬到Python效率提升非常明顯特別適合做課程設計、數(shù)據(jù)采集、傳感器標定這類場景。但正式項目里我更建議回到自定義串口協(xié)議原因有幾個第一Firmata的每一條引腳讀寫消息都有協(xié)議開銷連續(xù)操作大量引腳時實時性不夠穩(wěn)定。第二StandardFirmata固件固定了引腳模式有些高級功能比如外部中斷、高精度PWM、特殊I2C配置要么不支持要么需要改固件那就失去了不燒固件的意義。第三如果Arduino在現(xiàn)場還要獨立工作不能依賴電腦那Firmata方案直接出局因為它離了上位機就是一塊“木頭”。所以我的結論是Firmata擅長給原型加分不擅長給產品兜底。當一個項目從Demo走向落地我會把通信層從Firmata切換到自定義固件這個切換越早做越好因為協(xié)議變更會影響上層Python邏輯。4. 樹莓派直接跑PythonGPIO控制與更多可能4.1 從Arduino切換到樹莓派先理解物理引腳和邏輯電平樹莓派本身就是一臺電腦所以用Python控制樹莓派的GPIO思路和Arduino完全不同。不需要USB串口不需要上位機Python進程直接訪問Linux系統(tǒng)映射出的GPIO接口。樹莓派最常用的是40Pin GPIO排針布局基本兼容。開發(fā)時我手邊常備一張引腳圖可以搜索“Raspberry Pi GPIO pinout”并保存。重點區(qū)分兩類編號物理編號比如從左上角開始數(shù)第1腳和BCM編號Broadcom芯片的端口編號。比如物理第11腳對應的BCM是17RPi.GPIO和gpiozero默認使用BCM編號所以代碼里寫GPIO17基本不會錯但接線時要對著物理引腳確認。硬件上的電平也需要格外小心樹莓派的GPIO是3.3V邏輯不是5V。把5V設備的TX信號直接接到樹莓派RX引腳長時間可能燒壞CPU需要用電平轉換模塊或者分壓電阻。Arduino Uno的引腳邏輯是5V所以和樹莓派直接連串口時Arduino TX的5V電平不能直接進樹莓派RX必須加轉換。這是我見過燒板最高發(fā)的原因沒有之一。4.2 GPIO庫怎么選RPi.GPIO、gpiozero、pigpio樹莓派上常見的Python GPIO庫有三個它們各有各的脾氣。RPi.GPIO是最老牌、資料最多的庫很多教程都用它。語法直白GPIO.setmode(GPIO.BCM)、GPIO.setup(17, GPIO.OUT)、GPIO.output(17, GPIO.HIGH)一看就懂。但它的維護已經趨于停滯在新的樹莓派系統(tǒng)上偶爾會遇到運行時錯誤而且對異步支持不好。我第一個GPIO項目就是用它寫的但對新手來說現(xiàn)在有更好的選擇。gpiozero是官方推薦的庫API設計非?!癙ythonic”。它把LED、Button、Motor、Servo這些外設封裝成了類代碼讀起來像自然語言比如led LED(17)、btn Button(2)而且封裝了設備異步事件、防抖邏輯甚至會自動清理退出狀態(tài)。對快速做項目、寫教學Demo我強烈推薦它。pigpio走的是守護進程模式樹莓派上跑一個pigpiod守護進程你的Python腳本通過socket連接這個進程好處是PWM波形更精確、支持遠程GPIO局域網(wǎng)內另一臺機器控制樹莓派還能同時監(jiān)聽多個引腳。它適合對時序要求高、需要PWM或者邊緣檢測的場景。缺點是多了后臺服務調試時多一個故障點。我用表格總結一下庫維護狀態(tài)適合場景底層實現(xiàn)備注RPi.GPIO停止活躍維護舊項目遷移直接操作寄存器資料最多但API略老gpiozero官方持續(xù)維護快速開發(fā)、教學封裝底層庫外設類豐富易上手pigpio持續(xù)維護高頻PWM、遠程控制C守護進程socketPWM精確功耗略高選型建議很簡單99%的新項目直接用gpiozero如果遇到它解決不了的高頻需求再切pigpio別在一個庫上死磕。4.3 一個按鈕控制LED的完整示例用gpiozero寫一個按鈕控制LED的完整示例。接線按鈕一端接GPIO2另一端接GNDLED接GPIO17串聯(lián)一個電阻到GND。from gpiozero import LED, Button led LED(17) btn Button(2) btn.when_pressed led.toggle input(按鍵控制LED回車退出...\n)只用三行核心代碼就實現(xiàn)了事件驅動按鈕按下時LED切換狀態(tài)不需要while循環(huán)輪詢。gpiozero在內部用了線程和回調input()保持主進程存活。這里注意GPIO2在樹莓派上默認帶1KΩ上拉電阻Button默認就是上拉輸入所以按鈕另一端接GND按下時電平被拉低識別為按下這是最常見的接法。如果用RPi.GPIO寫輪詢版本大致是這樣import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(2, GPIO.IN, pull_up_downGPIO.PUD_UP) GPIO.setup(17, GPIO.OUT) GPIO.output(17, GPIO.LOW) try: while True: if GPIO.input(2) GPIO.LOW: GPIO.output(17, not GPIO.input(17)) time.sleep(0.3) # 防抖 finally: GPIO.cleanup()對比能看出gpiozero封裝掉了輪詢、去抖和狀態(tài)管理的細節(jié)代碼更少出錯的概率也更低。不過封裝也意味著你想完全控制引腳時序時不太方便這是取舍不是bug。4.4 把GPIO能力封裝成網(wǎng)絡接口給后續(xù)項目鋪路樹莓派既然跑著完整系統(tǒng)就沒必要只拿GPIO做開關。我常用的一個模式是把GPIO控制封裝成HTTP接口這樣手機、另一臺電腦甚至網(wǎng)頁都能控制樹莓派。用FastAPI寫一個最小接口from fastapi import FastAPI from gpiozero import LED app FastAPI() led LED(17) app.get(/led/on) def led_on(): led.on() return {status: ok} app.get(/led/off) def led_off(): led.off() return {status: ok}這樣就已經是一個局域網(wǎng)內的智能開關服務器了。更進一步可以接入MQTT讓設備通過主題home/led/17接收指令再配合一套控制面板就能脫離電腦和IDE實現(xiàn)真正的遠程控制。別被這么多技術名詞嚇到核心仍然是我們剛才的GPIO庫外面包了一層網(wǎng)絡協(xié)議而已。5. 常見問題與排查技巧實錄5.1 串口識別不到、權限被拒Arduino接上電腦后設備管理器看不到新增COM口或者Python報could not open port。按順序排查檢查USB線是不是純充電線很多USB線只接電源不接數(shù)據(jù)接上后板子能通電但沒有任何串口。換一根已知能傳數(shù)據(jù)的線。檢查USB轉串口驅動。CH340、CP2102芯片在Windows下容易驅動識別異常去芯片官網(wǎng)裝驅動或者換用原生USB串口的Arduino板。Windows下打開設備管理器查看端口COM和LPT確認端口號。如果顯示黃色感嘆號更新驅動。Linux/macOS下用ls /dev/tty*或ls /dev/cu*查看設備。如果能看到設備但Python打不開幾乎都是權限問題把當前用戶加進dialout組后重新登錄sudo usermod -a -G dialout $USER如果Arduino IDE能打開串口監(jiān)視器但Python打不開檢查是否同時開著兩個串口監(jiān)控程序同一個串口同一時刻只能被一個程序獨占。5.2 亂碼、丟包、卡死串口通信三大頑疾串口出現(xiàn)亂碼優(yōu)先檢查波特率是否一致、地線是否可靠共地。波特率不一致最典型如果Arduino端Serial.begin(9600)Python端定為115200那讀到的基本是天書。另外如果Arduino供電電壓不穩(wěn)比如用劣質USB線或者電源電流不足也可能在通信過程中偶發(fā)亂碼。丟包和卡死多半和寫入時機有關。Python端調用serial.write()后立即close()Arduino可能還沒讀完緩沖區(qū)數(shù)據(jù)進程就退了。正確做法是寫入后等待一小段時間或者讀取Arduino發(fā)回的確認字符再繼續(xù)下一步。尤其不要在循環(huán)里不加延時地往串口扔數(shù)據(jù)Arduino的串口緩沖區(qū)一旦被填滿后續(xù)數(shù)據(jù)全部丟棄程序看起來就是“卡死”。解決卡死還有一個很實用的技巧在串口讀取上設置超時。Python端serial.Serial的timeout參數(shù)一定要設置不要用默認的-1timeout1表示讀操作最多阻塞1秒避免Arduino長時間不響應時Python進程無限等待。如果你用ser.read()讀取不定長數(shù)據(jù)可以先用ser.in_waiting獲取當前緩沖區(qū)可用字節(jié)數(shù)再讀指定數(shù)量這樣不會一次讀太多導致超時。5.3 電流不夠和電平不匹配硬件安全紅線很多新手把LED直接接在GPIO上或者把一個小電機直接接在Arduino引腳結果引腳發(fā)燙、芯片損壞。原因是微控制器GPIO的驅動能力有限Arduino的IO引腳通常只能提供20mA左右的電流樹莓派GPIO更是只有16mA左右。LED串個電阻就能解決但電機啟動電流很容易達到數(shù)百毫安必須用電機驅動板比如常見的L298N、TB6612或者用MOSFET模塊。計算LED限流電阻的公式很簡單R (Vcc - Vf) / I。以Arduino的5V驅動一個紅色LED為例導通壓降Vf約2V工作電流選10mA那么R (5 - 2) / 0.01 300Ω取標準值330Ω就很安全。樹莓派3.3V驅動藍色LEDVf約3VR (3.3 - 3) / 0.01 30Ω但藍色LED亮度很高實際可以用100Ω甚至220Ω限制到更小電流。電平匹配方面上面已經提過樹莓派GPIO不能接受5V邏輯信號。如果要讓樹莓派讀取一個5V傳感器的輸出最簡單是使用電平轉換模塊或者用電阻分壓串一個1K電阻后再接一個2K電阻到地中間抽頭接樹莓派引腳這樣5V經過分壓后約3.3V。分壓只適用于低速信號高速串口建議還是用專用模塊。5.4 程序退出后引腳狀態(tài)殘留與代碼健壯性寫Python控制GPIO最詭異的現(xiàn)象是程序崩潰后LED仍然亮著或者引腳電平異常。原因是GPIO狀態(tài)不會被自動清理Linux內核保持最后一次寫出的電平直到下一個進程重新控制或者板子重啟。gpiozero在正常退出時會清理但如果遇到CtrlC、異常退出清理邏輯不一定會執(zhí)行。所以代碼要養(yǎng)成這樣的習慣主邏輯盡量包在有finally的結構里退出前做清理。用gpiozero時可以顯式調用led.close()用RPi.GPIO時調用GPIO.cleanup()。如果你寫任何長時間運行的服務還要考慮信號處理比如在SIGTERM時把引腳拉低防止斷電前外設出現(xiàn)不該有的動作。同樣Python腳本里如果使用了atexit注冊清理函數(shù)最好把硬件的停止邏輯也放進去例如關閉所有PWM、拉低電機使能腳這能防止下次啟動時設備突然原地動作。產品現(xiàn)場偶爾重啟機器這類問題最容易被忽略。5.5 調試習慣日志、模擬器和版本管理最后想分享一個很多教程不會提的調試習慣。硬件項目調試時不要靠print盲猜尤其不要在主循環(huán)里寫一堆print導致時序偏移。建議用標準的logging模塊輸出到文件串口接收數(shù)據(jù)時記錄十六進制原始內容比如import logging logging.basicConfig(levellogging.DEBUG, filenamedebug.log) ... logging.debug(RX: %s, raw.hex())這樣一旦出問題直接翻日志看原始字節(jié)流比起在終端前守著要省心得多。如果你身邊沒有硬件也完全可以用模擬環(huán)境做上層邏輯開發(fā)。樹莓派這邊gpiozero提供了模擬引腳實現(xiàn)配合pytest可以寫單元測試來驗證業(yè)務邏輯Arduino那一側可以用Python的fake serial類替換真實串口讓Python代碼在本地跑通到了現(xiàn)場再切回真實設備。我的很多項目都是這樣分層處理的復雜的算法邏輯在模擬環(huán)境里先驗證硬件只是最后一步的“設備驅動”。版本管理也不可忽略。Arduino固件和Python代碼放在同一個git倉庫建立firmware/和python_controller/兩個目錄每次改動留下記錄非常重要。硬件問題有時候是代碼回歸有時候是接線錯誤git能幫你快速對比老版本代碼省掉很多重復排查。6. 寫在最后的實操體會這幾套方案我陸陸續(xù)續(xù)用了很長時間最大的感受是工具永遠在變但通信鏈路和硬件常識不會變。無論是Arduino串口、Firmata還是樹莓派GPIO本質都是把Python的邏輯翻譯成硬件能理解的信號。如果正在起步別貪多先把“串口發(fā)一個1點亮LED”這個閉環(huán)跑通再慢慢往協(xié)議、網(wǎng)絡、多設備協(xié)作上擴展。等這三條路都熟練了再回頭看很多所謂的高端項目無非是這些基礎模塊的組合。最后提醒一句任何時候插拔線路都先斷電數(shù)據(jù)丟了可以重跑板子燒了只能掏錢換。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲中文字幕在线观看| 精品久久久999| 91九色白丝| 99视频一区| 成人短视频在线免费观看| 婷婷开心综合人妻小说网址| 国产SUV精品一区二区883| 久久久免费图片视频| 人人操超踫| 激情五月婷婷她| 99在线精品观看99| 日韩五月丁香| 日本www五月婷婷| 中文字幕不卡网站| 欧美交换配乱吟粗大25P| 久热只有这里有精品| 色婷| 色99网| 欧美黑人大吊| 艹天天射| 91精品91久久久久77777| www.五月激情红色| 色5在线| 亚洲AV日韩在线观看| 最新五月天婷婷影| 噜噜狠狠| 日本不卡中文字幕| 日韩高清久久| 在线超碰91| 国产古装妇女野外A片| 五月天婷婷开心| 国产精品视频免费看| 99re免费精品视频| 色色婷婷丁香五月天| a在线免费v| 六月色婷婷| 人妻久久久久久久 | 综合色情网| 色色亚卅| 玖玖资源网站最新站| 五月丁香久久久| 欧美日综合| 五月丁香六月香综合激情| 免费看片在线观看| av成人在线播放| 野战J办公桌椅H| 97碰碰视频在线观看| 色婷婷五月天av在线| 色99在线| 欧美性猛交XXXX乱大交极品| 色婷婷偷拍| 就去涩涩丁香五月天| 婷综合六月| 国产精品久久久久久久久久免费 | 都市激情五月婷婷亚洲| 99操视频| 五月丁香色婷婷婷基地| 婷婷丁香五月天影院 | 色综合久久88色综合天天99| 久久99成人性爱高清视频| 亚洲第二AV| 色吧婷婷五月亚洲| 99精品网址| 91色色色视频| AV性爱网| 婷婷操超碰| 五月天亚洲综合网| 综合99综合久久久久久久| 99这里是99在线视频| 97色精品视频 | 久久9久| 色色日本欧美| 99热只有精品在线观看| 五月婷婷丁香| 操人妻AV| 91岛国片| 亚洲精品色色| 99久久婷婷五月天| 五月香婷婷| 影音先锋四区| 99操逼| 五月婷婷综合在线| 成人午夜天| 久久九九激情五月天| 狠狠色狠狠| 丁香五月婷婷色情综合| 98永久精品| 五月婷婷激情| 国产精产国品一二三在观看| 成人做爰A片免费看网站找不到了| 丁香五月激情在线| 大香蕉综合| 丁香六月五月天| 99在线观看精品视频| 五月天国产婷婷精品视频在线| 精品99在线观看| 久9久9热久热| www.五月天。com| 欧美成人精品老美女噜噜噜| 亚洲情a| 激情六月丁| 日韩精品999| 丁香五月偷拍| 超碰99热精品| 91大屁股| 任你爽视频| 乱乱av| 亚洲热久| 激情综合五月色在线| 色五月天.con| 天天天天天天操| 我爱大香蕉| 国产偷人爽久久久久久老妇APP| wwwss在线观看| 婷婷五月天伊人| a免费在线| 操人久久| 伊人五月天在线| AV九九| 色婷婷8| 五月色婷婷中文字幕| 婷婷激情五月视频| 久久九九在线视频| 成人做爰A片免费看视频| 99热激情| 外国碰视频网站97| 综合婷婷五月天| 五月婷婷久久久| 亚洲日本韩国| 天天综合亚洲综合网天天αⅴ| 国产婷婷色五月| 开心五月色婷婷综合开心网| 精品爆操| 婷婷色五月天色色| 99热这里精| 亚洲中文字幕网| av婷婷丁香| 婷婷五月在线综合| 玖玖资源在线视频| 亚洲综合在线视频| 99热这里只有精品22| 这里只有精品视频免费在线观看| 激情五月婷婷| 婷婷久久国产视频| 国产精品色| 婷婷久久图片| 国产熟女日日骚五月丁香爱| 99热色精品| 久久AAAA片一区二区| 国产乱妇无乱码大黄AA片| 成人精品一区日本无码网| 噼里啪啦完整版中文在线观看| 疯狂做受XXXX高潮A片动画| 99国产精品久久久久久久久久久 | 国产成人精品一区二区三区视频 | 婷婷五月综合视频| 丁香性爱在线视频| 五月天婷婷导航| 激情深爱五月天| 久久人人超| 精品人妻一区二区| 人人操人人干AV| 丁香五月天中文字幕| www久久艹| 激情婷婷22月间| 婷婷色播综合五月| www.97视频| 婷婷五月天激情四射五月天激情| 五月丁花六月丁香综合| 粉嫩AV久久一区二区三区| 怡春院天天干| 日日夜夜狠狠| 色久女| 五月婷婷综合丁香视频| 综合狠久久| 天天操九九插| 激情五月天福利| 五月丁香婷婷开心| 2016日日夜夜操| 激情五月婷婷五月| 7超碰自拍| 亚洲综合99| 日本综合色色| 欧亚成人A片一区二区| 欧美色偷偷大香| 99热这里只有精品4| 少妇人妻人伦A片| 五月久久噜噜| 青青草Avb在线| 热成人网| 成人片在线播放| 五月丁香在线观看| 青青草原精品久久| 99re热99| 在线综合亚洲欧美65| 久久婷婷五月综合97色一本| 日韩色五月| 色九月丁香婷婷蜜桃在线观看| 青青草色在线视频观看| 九九婷婷综合| AV在线观看网站| 超碰二区| 青青草六月丁香| 婷婷综合国产| 79精品视频在线观看,| 日韩在线视频网站| 狠狠操狠狠色| 色婷五月天| 99在线精品视频免费| 婷婷五月天国产在线播放| 久久性爱网| 五月婷婷之美女图片| 五月激情天| 丁香婷婷色五月合集| 亚洲精品又粗又大又爽A片| 91久久1118| 亚洲人妻av| 天天视频亚洲| 激情五月天激情网| 99久在线精品99re5热视频| 婷婷五月天免费视频| 亚洲成人AV高清字幕| 夜夜骑操AV| 婷婷桃色网| 综合性爱网| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 色八月婷婷| 五月丁香婷婷伊人| 丁香五月天啪啪| 开心五月综合激情综合五月| 色婷婷五月影视| 99久在线精品99re8热| 超碰在线成人| wWW九九在线播放| 色9999日韩国产| 日韩精品二三区| 九九色热| 亚洲无码播放| 射久久丁香五月| 色婷婷电影网| 婷婷伊人久久| 婷婷丁香五月综合| 99热网站| 婷婷色五月色| 国精产品一区二区三区| 國語久久婷| 久久激情四射| 亚洲激情四射色| 九九热欧美| 亚洲成人人人操| 欧美成人无码高清一区二区三区| 色yeye欧美| 天天日夜夜爽| 色999亚洲人成色| 久久停停超碰| 91大神操美女| 久操热| 26uuu成人网| 五月综合激情综合久| 婷婷天天五月天| 双性美人被调教到喷水A片| 五月天婷婷人妻| 丁香五月天激情五月天激情五月天激情网| 婷婷五月天成人在线视频| 老师的粉嫩小又紧水又多A片视频| 开心五月婷| 色9色| wWw色五月| 婷婷五月天成人在线视频| 久久受www免费人成| 伊人五月成人| 99色色网| 中文字幕在线日亚州9| 成人婷婷深爱综合网| 六月丁香开心婷婷欧美| 亚洲九九夜夜| 三十熟女| 亚洲精品一区无码A片| 日本色爽| 大香蕉五月丁香| 久久香蕉丁香| 91碰碰碰| 国产精品VIDEOSSEX久久发布| 99精品免费欧美小视频| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 丁香六月中文| 色五月综合激情| 五月六月婷婷| 99操视频| 99@久久@99精品视频| 成人看片网站| 亚洲色区17| 夜夜久久综合网 | 婷婷操婷婷干婷婷射| 嫩草AV久久伊人妇女超级A| 在线观看视频1区| 六月色 亚洲| 蜜桃婷婷狠狠久久综合| www狠狠爱com| 色综久久AV| 免费试看小视频 99| 天天色月| www.五月天婷婷| 超碰人人色| 久久精品99国产精品日本| 大香蕉狠狠爱主页| 久婷婷久草| 婷婷五月激情视频在线| 激情综合色婷婷六月天| 九九婷婷网五月天| 狠狠色婷婷7777久| 99日视频在线| 性爱电影科技贸易有限公司| 99热只有精品在线观看| 五月婷婷我| 中文AV在线播放| 亚洲日韩一页精品发布| 久久视9精| 大香蕉婷婷色| 开心色色五月天综合| 色婷婷电影网| 激情综合网五月| 日日干干天天干| 九九大香蕉黄色影院| 热99在线| 香蕉人妻AV久久久久天天| 婷婷亚洲色| 五月婷丁香久久综合| 国产高清av黄色看片| 五月婷婷色欲| 综合欧美五月婷婷| 婷婷综合色| 婷婷丁香精品视频在线观看| 大香蕉久久久| 日婷婷久久开心| 色婷婷久久| 青青草五月天| 亚洲VA在线| 亚洲精品午夜国产va久久成人| 深爱五月激情| 色99在线| 9色在线| 九月丁香欧美综合| 99爱在线精品视频免费观看| 日韩黄黄| 五月色网| 色色色综合色| 激情婷婷丁香五月天小说| 人妻系列久久久久久久久久久 | 婷婷丁香五月天欧美| 操逼在线视频| 色亭亭影园| 色色亚洲无码| 精品无码久久久久久久久| 在线精品97| 婷婷六月综合在线| 天天爱天天操| 99精品在| 九九九干精品| 久久婷婷综合五月天| 五月婷婷中文| 婷婷五月中文在线| 天天综合精品| 久久久久久天天日天天爱| 亚州性爱99| 婷婷97狠狠成人网站| 一区=区操屄高清大全av| 亚洲婷婷久久综合| 91狠狠色| 深爱丁香网| 九九这里有精品| 热中文字幕| 亚洲久热| www.日日日.com| 日日夜夜干| 久青青久| 国产五月视频| 美女五月天| 久久玖玖99| 丁香婷婷视频| 铁牛TV人妻| 婷婷五月激情欧美| 五月花综合网| 婷婷伊人久久无码色五月| 色欲九区| 丁香五月六月综合激情| 九九九日本熟女| 色玖玖综合网| 插插插色综合网| 婷婷不干网| 久久性爱视频久久性爱视频| 青青青在线视频国产| 人人草碰| 欧美成人色婷婷| 骚五月婷婷| 色婷婷香蕉| WWW,色五月| 国产成人精品123区免费视频| 影音先锋一区| 久热一区| 久热91精品| 亚洲五月丁香综合网| 色伊人婷婷| 婷婷五月天激情四射五月天激情| 日韩啪啪网| 激情无码五月天| 亚洲字幕AV一区二区三区四区| 色丁香婷婷| 丁香五月天堂网| 丁香社区婷婷五月| 永久精品| www夜夜操com| 做爱夜夜干天天操| 日本 色综合| 亚洲精品午夜国产va久久成人| 色婷婷AⅤ| 五月天综合网| 九九九九这里只有精品| OUMEIRIHANCHENGREN| 热热久久久久久久久| A片试看50分钟做受视频| 婷婷爱在线观看| 99婷五月| 97色婷婷| 91一起操| www.夜夜操| 五月丁香激情啪啪| 婷婷五月六月| 亚洲色婷婷| 欧美综合激情五月丁香| 欧美综合五月天婷婷tin| 99在线视频喷水| 九九在线这里只有精品视频| 性爱视频久久| 久香草视频在线观看| 91碰碰| 午夜一区| 国产精品久久久久久妇女6080| 性生活视频98791| 99ri国产在线| 在线观看熟女少妇| 狠狠人人| 婷婷色色欧美综合网| 99热在线精品播放| 五月丁香色| 亚州精品色情在线观看| 开心五月深爱五月| 六月婷婷国产| 五月婷婷激情日本| 九九热这里| 琪琪理论片| 久久久久久久久久久-久五月天婷婷| 久久久com| 色婷婷香蕉| 色综合久久伊伊婷婷五月| 婷婷香五月天| 99成人免费视频| 国产视频福利| 最近中文字幕在线中文视频| 丁香婷婷六月天| 国产特黄色精品一区二区三区精品无广告 | 很很干夜夜干| 日本综合久| 天天色综网| 看片视频在线免费日产在线看| 婷婷9月天| 五月丁香六月婷婷激情网| 碰超在线九色| 一起草av| 色色色在线观看| 婷婷五月天激情文学小说| 欧美日韩成人| 婷婷五月天激情网站| 九九99热精品| 日本色五月| 丁香五月在线观看完整版| 九色成人AV在线| 99热新网址| 五月婷婷免费| www.91九色| 4438亚洲欧美| 久久ab| 天天操综合网站| 大香蕉手机视频| 色99久草在线| 91精品久久久久久77777| 五月丁香婷婷久久| www.精品99| 六月色丁香婷婷| 九九碰九九爱97超碰| 综合欧美五月婷婷| 伊人www22综合色| 人人色人人弄人人操| 五月丁香狠狠地噜噜噜噜| 婷婷婷婷婷婷婷婷婷婷丁香| 久久人妻爱爱| 成人午夜无码视频| 99久久.www| 色噜噜丁香| 99性爱视频| 五月婷婷激情网| 五月四色婷婷| 五月天婷五月天综合网在线观| 北条麻妃九九九国产精品视频| 涩五月色婷婷| 久久96热| 婷婷六月插屄激情| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | www..com色爱| 婷婷五月激情网站| 99色干| 色开心五月丁香| 丁香婷婷老熟女综合网| 五月婷婷AV| 亚洲五月天另类小说图片| 91超级碰碰| 久婷久婷激情肉| 亭亭丁香97| 丁香五月花影院| 亚洲爆乳无码精品AAA片蜜桃| 色五月天成人| 思思热99热| 婷婷综合爱| 激情狠狠丁香月| 五月婷婷丁香深深爱| 五月丁香婷婷综合网色欲| 日韩视频99| 久久六月天| 色婷婷激情四射视频| 激情综合激情五月| 99精品视频在线| 99热精品10| 日本女va| 综合狠狠五月婷婷| 五月天婷婷激情干干| 中文字幕,综合,91| 人人人操| www,五月天com| 亚洲综合在线伊人婷| 久久aaaaa| 丁香六月色| 日hao1区| 91久久综合亚洲鲁鲁五月天| 激情五月天色色色| 大香蕉九九操| 97狠狠色| 丁香六月天AV| 密乳视频| 五月丁香中文| 五月天婷婷操逼视频| 狠狠五月天激情| 午夜色丁香| 无码人妻一区| 国産精品| 99热精品在线观看| 久9热视频在线| 伊人成综合五月婷婷| 六月成人网| 色婷婷精| 日韩在线99| 婷婷综合网站| 狠狠干总合| 99热这里只有免费| 91凹凸在线| 婷婷伊人网| 青草青草视频2免费观看| 久久九九网| 五月香婷婷| 99热10在线高清播放| 中国丰满熟女A片免费观| 色色色综合色| 91五月花丁香| 日韩啪| 九九热再线九九视频免费在线观看 | 色爱爱综合网| 五月丁香久久网| 秋霞三级影视资源| 激情五月开心五月丁香五月| 激情伊人五月天| 亚洲精品99| 97精品人人A片免费看| 国自产拍偷拍精品啪啪一区二区| 内射爽无广熟女亚洲| 色色色欧美| 六月色 亚洲| 亚洲综合网 665566| 色婷久九| 久久久99精品| 五月丁香色| 久久久99精品免费观看| 亚洲六月综合激情久久下卡| 一区操| 久久综合99| 五月丁香激情在线| 色五月天电影| 欧美久人人| 婷婷丁香色五月天久久88| 欧美色色色色色色色色色色影视| 五月婷婷激情综合在线| 色综合爱综合| 九九热只有精品| 狠狠穞A片一區二區三區| av色色国产| 色约约视频一区二区三区四区五区| 久久青草国| 日本的α片xxxwww| 久久99综合网| 婷婷黄色网| 日日夜夜狠狠| 色婷婷瘦婷婷日韩| 色久五月| 日本综合久久| 国产操B视频| 开心五月婷婷99| 婷婷综合激情| 久久玖玖综合| 亚洲情a| 色婷婷网| 97久久久久| 久久美女五月天| 三年高清大片免费观看国语| 婷婷五月激情小说| 亚洲狠狠婷婷综合久久久| 色婷婷九月| 亚洲无码99| 99在线69| 99狠狠操一| 天天日夜夜爽| 色情网综合| 亚洲激情无码久久| av九九| A在线观看| 五月天婷婷在线播放| 五月丁香六月天| www.婷婷五月.com| 天天色综合综合| 无码激情AAAAA片-区区| 色婷婷色九月| 五月激情综合网| ou洲色吧| 久久综合丁香激情五月| 激情综合五月天| 91久久久久久久久18| 亚洲天堂AAA| 国精产品一区二区三区| 日韩性视频| 激情文学第四色婷婷丁香五月| 再次出发二| 色噜噜狠狠一区二区三区| 久久激情四射| 天天爱夜夜爽| 偷偷操九九| 开心激情网在线| 婷婷中文综合网| 亚洲一区二区无码蜜乳av| 激情综合色网| 日本片日本片祼观看网站在线看中文版网页在线看| 日韩av在线免费观看| 日本一级黄色片。| 天天干天天爽天天爽| 五月花免费视频| 色综合久| 久久香蕉网| 在线五月色播| 成人五月丁香花| 五月丁香六月婷婷亚洲| 色综合色色| 月婷婷亚洲| 操操操97| 婷婷丁香五月在线播放| 天天碰夜夜操| 久热网站| 五月丁香婷婷综合视频| 丁香成人视频| 小骚穴电影| 超碰人人射| AV伊人青草丁香六月| 色爱综合网| 超碰人人操人人干| 亚洲妇女熟BBW| 五月天婷婷深深爱| 好色婷婷| 丁香五月伊人| 九九久久污| 婷婷五月天综合久久| 五月丁香花激情啪啪网| 另类综合国产| 丁香婷婷婷五月综合色情| 99热这里只有精品无码| 亚洲成人AV电影在线| 日本精品。999| 激情综合视频| 99无码| 婷婷激情伍月网| 一起草AV入口| 国产精品色| 国产色色在线| 琪琪狠狠干| 色综合久久99色| 色宗合,宗合网| 中文字幕综合色| 丁香 婷婷 激情 综合 五月| 五月丁香婷草| 99热久久这里只有精品| 五月婷婷深深爱| 亚洲最大五月天成人网| se婷97| 丁香九月婷婷| 丁香美女主播视频在线观看| 曰本aaaaaa丈片| 九热视频| 天天摸天天日天天舔| 好大好粗嗯啊-一级黄色大片免费观看-成人AV | 久久激情综合| 91dy.av| 婷婷涩涩五月天| 久久久国产精品黄毛片| 99热这里只是精品| 97碰啪啪| 亚洲性爱AV| 久久99热这里只有精品| 丁香五月视频在线观看| 丁香婷婷九月在线| 97久久人人| 狠狠插狠狠| 五月婷婷啪啪| 五月天婷婷涩涩| 99热91| 99热精品99| 激情五月天小说视频| 五月丁香色色色| 大香蕉综合在线| 婷婷在线视频| dingxiangtingtingliuyue| 久久婷婷六月综合综合| 亚洲另类婷婷综合| 丁香五月激情五月开心五月| 亚洲一级AV在线免费播放| VA色婷婷| 久久免费操| 大香蕉网 久久| 激情五月天婷婷| 色五月婷婷在线| 精品五月天| 天天狠狠色噜噜| 伊人春天av| AV色婷婷| 青青日韩| 精品自拍97| 欧美69久成人做爰视频| 亚洲色五月婷婷| 丁香色情五月综合网站| 日本97在线视频| 综合99在线| 色六月 婷婷| 日本色婷婷| 婷婷另类小说| 亚洲人妻AV| 激情五月婷| 五月婷婷视频| 天天操人人干| 天天操综合网站| 丁香五月综合在线播放| 久久伦乱| 色婷婷五月天偷拍| 欧美操综合| 婷婷伊人綜合中文| 久久丁香婷| 狠狠一日| 超碰色碰碰| 婷婷中文字幕欧美| 亚洲精品第一色色色色色色| 99在线免费视频| 99在线视频播放| 超碰97色| 超碰在线网站| 九色在线观看91av| 成人色图情色成人网 www.5b5b5bcom 五月天 | 五月丁香WWW| 激情深爱婷婷网| 人人色婷婷五月天| 日日干日日色| 广东99色在线| 伊人天天色| 26UUU欧美激情一区二区| 欧美综合123区| 六月丁香综合| 丁香五月电影| 五月婷婷在线视频免费观看| 色激情五月| 久碰婷婷视频| 熟女激情网| 欧美久热| 99热精在线九九久久保| 国産精品| 婷婷丁香五月天婷婷| 大香蕉免费9| www.五月婷婷.com| 亚洲色情久久| 色综合爱综合| 能直接看的AV网站| 亚洲色网络| 激情丁香九九五月综合网| 五月天激情.com| 九九久热| 九九久久99精品免费观看www| 婷婷亚洲欧美丁香五月| 襙逼网| 九草性爱| 激情伊人| 99热九九这里只有精品10| 亚洲99综合| 欧美成人无码高清一区二区三区| 9久久精品| 国内婷婷丁香社区在线播放| 天天操天天爱天天日| 欧美大香蕉视频| 婷婷丁香射射| 婷婷涩五月天综合| 日本欧美成人片AAAA| 思思久久精品| 亚洲网视屏| 丁香婷婷综合激情五月色| 亚洲成人免费在线| 91聚色综合网| 97在线视频人妻九色| 亚洲综合在线播放| 五月天婷a在线| 日日夜夜综合| 婷婷色九月| 性做久久久久久久免费看| 六月色婷婷| 亚洲影院婷婷色| 中文字幕在线日亚洲9| 狠狠爱婷婷爱| 九九成人精品免费视频| 开心五月六月婷婷| 国产一二三四五六七八视频| 97婷婷五月| 日本一道久久| 美女婷婷激情亚洲| 在线婷婷| 99愛国产| 婷婷五月天久久久| 伊人大香蕉爱聚| 久青草影院| 97久操| 激情五月婷婷免费视频| 十月丁香婷婷| 婷婷国产成人| 99精品在线观看| 超碰国产AV| 五月丁香久久久日婷婷久久婷婷日| 狠狠擼综合| www.9797国产| 婷婷六月激情综合| 亚洲操逼片| 丁香婷婷五月基地| 五月天综合| 99热精品超碰| 天天撸夜夜爽| 120分钟婬片免费看| 丁香久久| 亚洲激情综| 美女美女美女三级色天天天天天| 亚洲国产99| 99精品偷自拍| 99re66热这里只有精品| 中文字幕日韩无码制服诱或| 激情五月少妇| 激情99| 思思热久久艹| 日日杆天天| 五月Huangsewang| 青草网在线观看| 婷婷六月色开 | 天天成人丁香美女AV| 婷婷天天日婷婷| 4438亚洲欧美| 激情婷婷五月女| 六月婷婷激情图片| 色播五月丁香综合| 五月激情婷婷四射| 亚洲天堂AAA| 六月丁香网| 亚洲另类婷婷综合| 丁香婷婷激情| 精品国产a| 国产精品国产VA片国产| 久久Xx| 野外99热| 激情五月四色| 日本婷婷激情四射中文字幕在线观看| 538在线| 色五月综合网| 九九亚洲综合| 五月婷婷综合网| 97久久超级| 少妇人妻综合色6699| 色婷婷综合网站| 欧美日韩国产一区| 99热思思| 色婷成人狠干| 色色网站在线| 超碰京东热av男人的天堂| 秋霞黄色一级久久| 天天影院色| 99热91| www.99视频| 狠狠丁香| 五月丁香六月婷婷久久| 1024久婷| 99精品大片| 亚洲另类AV| 丁香五月天中文字幕| 精品一二三区久久AAA片 | 色天堂在线| 青青草轻轻操| 99热日韩| 韩日在线熟女| 九九成人| 丁香成人综合| 色色色五月天婷婷| 99热这里只有精品官网| 人妻av在线| 久久6这里只有精品| 99热亚洲| 拍真实国产伦偷精品| 4399在线观看免费毛片| 五月婷婷综合潮喷| 色丁香五月婷婷综合久久| 狠狠色综合777| 五月日韩中文字幕| 色综合综合色| 碰碰碰97免费精彩视频| 五月婷婷五月天亚洲无码| 久99热| 99色播| 成人va在线| 影音先锋91资源站| 亚洲综合99| 婷婷六月色| 色噜综| 午夜日日| 大香蕉综合在线| www.婷婷网| 五月天婷婷综合色| 特级西西4444www无码| 婷婷不卡基地| 久久99综合网| 六月亚洲婷婷6月中文字幕| 婷婷五月av| 九九免费视频在线| 久久久久久久久久久jjjj| 天天干天天 亚洲| 亚洲欧美国产A片免费观看| 婷婷五亚洲| 偷拍91九色| 色播五月天激情| 狠狠狠狠狠草| 五月丁香六月婷婷成人| 五月丁香婷婷深深爱| 99热在线网站| 婷婷爱五月天| 思思久久99热只有频精品66| 色婷婷很很十八禁| 99热成人在线| 色色免费网站| 桃色成人网| 玖玖午夜视频| 无码G高清天| 色噜噜狠狠色综无码久久合欧美| 成人网站av免费网站推荐| 色婷婷久久| 色婷婷在线视频久| 亚洲啪啪精品| 五月激情在线| 99精品在这里| 久久久久久草黄色片AV在线观看| 99无码视频| 人妻久久久久久久 | 中国无码av| 9l视频自拍9l九色9l成人| 色婷婷AAA| 精品热青草| 久久丁香五月天| 亚洲婷婷激情五月天| 五月天大香蕉AV| 99久在线精品99re8热| 深爱激情网婷婷| 狠狠色五月| 老美AA片| 日本99久久| www.深爱激情| 五月天色婷伊人| 天天肏高清在线| 91中文狠狠综合| 99精品在线| 色综合色综合色综合色综合| 五月丁香花视频| 激情综合色婷婷啪啪五月天| 狠狠色综合网| 色五月开心开心五月激情五月| 97操碰免费视频| 五月丁香婷婷综合| 五月久久婷婷丁香| 天天爽天天摸人妻综合网| 另类激情四射| 热婷婷av| 99精彩视频网站在线| 无人精品在线视频| 天天拍久久| 久久er免费视频| 婷婷操超碰| 五月丁香A片| 亚州色色色| 色999五月色| 丁香五月天堂网| 亚洲无aV在线中文字幕 | AAAA亚洲| 六月色色| 大香蕉五月天婷婷丁香91| 一本大道嫩草AV无码专区| 激情伊人五月天| 九九婷婷五月天影视| 久久9久久| 97久操| 91呦呦呦| 欧美成人在线观看| 粉嫩AV久久一区二区三区| 99亚州综合精品成人网| 久久久久久久综合狠狠综合| 综合久久五月| 婷婷丁香五月天综合在线日韩| 亚洲性爱电影| 狠狠狠色激情综合适合| 人人干天天操五月丁香| www.五月天色色色| 色色影院黄大片| 免费超碰在线| 婷久久综合| 天天综合色99| 久久久久久久久久久久久久久久久精典| 搡BBBB搡BBB搡18 | 最近免费中文字幕大全高清大全1| 狠狠干婷婷| 婷婷婷婷婷开心无码播放| 深爱 五月天| 五月综合亚洲色| 99热国品免费| 丁香五月六月久久综合 | 欧美久久婷婷| 色五月天激情| 91一起操| 五月婷婷中文| 99性爱视频| 99色综合| 欧美三级巜人妻互换| 婷婷激情社区| 激情五月影院| 五月婷婷综合网| 久久精品99国产精品日本| 狠狠艹狠狠艹| 久久婷婷五月国产色综合激情| 天堂综合久久| 五月激情婷婷综合| 五月丁香婷婷在线| 久久五月天色婷婷| 五月婷婷综合激情| 色丁香久综合在线久综合在线观看| 一起草AV| 热久久成人| 激情 婷婷 插| 婷婷久久亚洲| 欧美日韩aaa| 五月天堂婷婷| 五月天婷婷成人网| 日日鲁鲁鲁夜夜爽爽狠狠视频97| AV性爱网| 99精品偷自拍| 红桃91人妻爽人妻爽| 婷婷中合| 久久丁香社| 午夜亚洲国产精品av一区二区| 国产女生爱爱AA| 天天肏天天舔AV| 丁香九月激情久久| 日本99久久| 婷婷久久五月天亚洲欧美国产日韩在线观看| 五月天小说激情| 色婷婷婷婷五月天| 一区二区免费看| 亚洲激情av| 九色亚洲| 91久久精品无码一区二区三区| 97操碰人人| 国产人妻操逼| 欧美Va在线| 丁香五月婷婷大香蕉| 开心五月深爱五月| 中文av网| 九九成人电影婷婷| 婷婷欧美激情| 五月天婷婷午夜丁香| 色激情综合狠狠婷婷| 天天弄天天爽| 丁香六月婷婷综合啪啪| 五月婷婷六月丁香色| 狠狠色综合精品视频在线| 色婷婷综合视频| 色五月综合在线| 九久久九精品视频| 久久女人天堂| 亚洲男人的天堂婷婷色五月| 色五月天在线| 激情综合九月| 欧美成人在线观看| 五月天婷婷小说| 国产av网| 快乐激情五月色婷婷| 亚洲人成网亚洲欧洲无码久久| 99热在线爱| 亚洲六月色| 丁香婷婷啪啪| 九九久久免费视频44| 九九大香视频| 开心五月婷婷激情网| 婷婷五月丁香伊人| 开心激情站| 男人的天堂97| 色欲AVV| 五月婷婷之综合激情| 狠狠狠狠狠草| 人妻五月天激情开心网| 天天模,夜夜模夜夜爽| 婷婷婷婷婷开心无码播放| 五月天艹天天| 在线观看中文字幕| 色婷狠狠| 五月婷婷播| WWW.婷婷五月天.COM| 青青草成人网| 激情婷婷网| 人人干AV| 狠狠色成人影片| 久人操| 丁香婷婷色五月合集| 九九亚洲| 丁香六月婷婷操逼网| 激情亭亭五月| 狠狠狠狠狠草| 六月婷婷色综合| 99在线免费视频| 六月丁香社区| 国产欧美精品AAAAAA片| 人人操大| 9999热这里只有精品| 26uuu成人网| 99久久97| 久久五月天色婷婷| 另类视频在线| 色色色com| 91人人网| 男人操女人高潮91视频| 99操99| 久久多色| 久久久久久久人妻| av婷婷丁香| 东北婷婷五月天| 五月丁香久久| 五月开心婷婷网| 五月婷婷激情| 五月天狠狠色| 人妻内射视频| 久久99草五月婷婷| 思思热在线视频99| 香蕉久久国产AV一区二区| 婷婷色五月大香蕉在线观看| 激情涩涩网| 亚洲色综合| 日韩AV大全| 国产免费一区二区三区三州老师F1F1.CC | 国产精品美女| 天天射美女| 九九精品亚洲| 丁香五月婷婷天堂大香蕉| www.粉嫩av.com| 伊人久久婷婷| 久久色天堂| 色情丁香五月婷婷精品| 五月停性愛| 色色亚卅| 久久R激情| 99免费视频精品| 色婷婷丁香女女| 狠狠干青青草| 99热午夜精品| 丁香六月无码| 九九色黄色| 天天久综合| 婷婷五月激情五月丁香五月| 亚洲五月天天| 日本欧美成人片AAAA| 色六月婷婷| 色五月丁香婷婷在线观看| 国产日产亚系列精品版优势| 婷婷亚洲影院| 色色色色色色网站| 99热99成人| 亚洲人妻av伦理| 99热骚货| av电影在线播放| A久久| 五月婷啪| 五月花婷婷| 我爱宗和色| 中文字幕不卡网站| 五月丁香在线观看| 亚洲天堂啪啪| 五月丁香综合激情| 操逼福利视频| 日本性视频| 天天爱天天吃狠天天透| 开心五月婷婷伊人| 婷婷九月丁香| 婷婷精品在线| 丁香激情五月天| 99亚洲欧洲| 99视频日韩| 五月天婷婷AV| 五月丁香婷婷啪啪| 在线观看免费视频| 丁香五月六月婷婷殴美综合| 性爱网五月婷婷| 99热精品无码| 婷婷丁香五月麻豆| 专区无日本视频高清8| 看婷婷五月天网| 俺也去五月婷婷丁| 欧美黄色韩日网| 深爱激情五月网| 婷婷婷五月天最新综合你懂的| 亚洲操操| 色丁香影院| 亚洲综合视频在线| 三男玩一女三A片| 亚洲成人人人操| 日本熟妇精品99| 风流少妇A片一区二区蜜桃| 开心婷婷五月天电影院| 国产精品第一国产精品| 色97综合婷婷天天色| 国自产拍偷拍精品啪啪一区二区| 99er免费在线观看| 五月婷婷 自拍| 五月丁香六月在线| 凹凸操Av| 超碰久热| 九九成人电影婷婷| www.91在线观看| 五月丁香六月婷婷综合免| 无码成人AAAAA毛片AI换脸| 丁香婷婷啪啪啪| 欧美大香蕉视频| 99丁香婷婷综合网| 天天操无码|