色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

STM32驅(qū)動(dòng)激光測(cè)距模塊:從硬件連接到數(shù)據(jù)解析的完整實(shí)踐

STM32驅(qū)動(dòng)激光測(cè)距模塊:從硬件連接到數(shù)據(jù)解析的完整實(shí)踐 1. 項(xiàng)目概述從零構(gòu)建一個(gè)精準(zhǔn)的激光測(cè)距系統(tǒng)最近在做一個(gè)需要精確測(cè)量距離的小項(xiàng)目核心需求是測(cè)量一個(gè)固定點(diǎn)到移動(dòng)物體表面的距離精度要求毫米級(jí)響應(yīng)速度要快。市面上現(xiàn)成的超聲波、紅外測(cè)距模塊要么精度不夠要么抗干擾能力差最后把目光鎖定在了單點(diǎn)激光測(cè)距模塊上。這類(lèi)模塊基于飛行時(shí)間法ToF或相位法精度高、響應(yīng)快而且不受環(huán)境光在合理范圍內(nèi)和聲音的干擾非常適合工業(yè)或高精度DIY場(chǎng)景。我手頭正好有一塊STM32F103C8T6也就是常說(shuō)的“藍(lán)莓派”或“最小系統(tǒng)板”以及一個(gè)型號(hào)為STP-23的激光測(cè)距傳感器。整個(gè)項(xiàng)目的目標(biāo)就是利用STM32的HAL庫(kù)通過(guò)CubeMX快速配置驅(qū)動(dòng)這個(gè)傳感器并穩(wěn)定、準(zhǔn)確地讀取距離數(shù)據(jù)。聽(tīng)起來(lái)好像就是簡(jiǎn)單的串口通信實(shí)際做下來(lái)從電源噪聲處理、串口中斷的穩(wěn)定收發(fā)到數(shù)據(jù)包的校驗(yàn)與解析每一步都有不少細(xì)節(jié)需要注意稍有不慎讀回來(lái)的可能就是一堆亂碼或者跳變極大的無(wú)效數(shù)據(jù)。這篇文章我就把自己從硬件連接到軟件調(diào)試的完整過(guò)程包括踩過(guò)的坑和總結(jié)出的穩(wěn)定方案詳細(xì)記錄下來(lái)。無(wú)論你是剛接觸STM32和HAL庫(kù)的新手還是正在尋找一種可靠激光測(cè)距方案的開(kāi)發(fā)者相信都能從中找到可以直接“抄作業(yè)”的實(shí)用內(nèi)容。2. 核心硬件選型與電路設(shè)計(jì)思路2.1 為什么選擇STP-23激光測(cè)距模塊在開(kāi)始寫(xiě)代碼之前搞清楚你手頭的傳感器是關(guān)鍵。我用的STP-23是一個(gè)典型的基于相位式測(cè)距原理的模塊。這里簡(jiǎn)單解釋一下它與常見(jiàn)的ToF飛行時(shí)間模塊的區(qū)別ToF是直接測(cè)量激光往返的時(shí)間計(jì)算距離而相位式是測(cè)量發(fā)射波和接收波之間的相位差反推距離。相位式在短距離幾十米內(nèi)通常能達(dá)到更高的精度和穩(wěn)定性STP-23的標(biāo)稱(chēng)精度就是±1.5mm量程0.05-23米完全滿(mǎn)足我的需求。模塊的接口非常簡(jiǎn)單通常就四根線(xiàn)VCC供電、GND地、TX模塊發(fā)送、RX模塊接收。它通過(guò)串口UART與主控MCU通信主動(dòng)、周期性地向外發(fā)送包含距離數(shù)據(jù)的報(bào)文。這意味著我們的STM32主要工作就是設(shè)置好串口然后“聆聽(tīng)”模塊發(fā)來(lái)的數(shù)據(jù)解析即可不需要主動(dòng)發(fā)送查詢(xún)指令這是與一些需要觸發(fā)指令的模塊最大的不同編程模型上更接近被動(dòng)接收。注意不同批次或廠(chǎng)家的STP-23其供電電壓和通信電平可能不同。我手頭這個(gè)是5V供電TX/RX也是5V TTL電平。而STM32F103的IO口通常是3.3V電平。直接連接可能導(dǎo)致STM32無(wú)法正確識(shí)別5V的高電平有損壞風(fēng)險(xiǎn)或者STM32的3.3V高電平被模塊認(rèn)為是低電平。所以電平轉(zhuǎn)換是必須考慮的第一道坎。2.2 電源與電平轉(zhuǎn)換電路設(shè)計(jì)穩(wěn)定的系統(tǒng)始于穩(wěn)定的電源。激光測(cè)距模塊尤其是發(fā)射部分在工作的瞬間電流可能有一個(gè)小的脈沖。如果電源紋波過(guò)大不僅會(huì)影響模塊自身工作還可能通過(guò)地線(xiàn)干擾到MCU導(dǎo)致串口數(shù)據(jù)出錯(cuò)甚至系統(tǒng)復(fù)位。我的方案如下獨(dú)立LDO供電我沒(méi)有直接從STM32開(kāi)發(fā)板的5V引腳取電給模塊。而是使用了一個(gè)獨(dú)立的AMS1117-5.0穩(wěn)壓芯片從輸入的7-12V電源降壓到5V單獨(dú)給STP-23模塊供電。這樣模塊的電源噪聲不會(huì)直接耦合到MCU的電源網(wǎng)絡(luò)上。π型濾波在A(yíng)MS1117的輸入和輸出端都增加了經(jīng)典的π型濾波電路例如10μF電解電容 100nF陶瓷電容并聯(lián)進(jìn)一步濾除低頻和高頻噪聲。電平轉(zhuǎn)換電路這是硬件連接的核心。我采用了最經(jīng)典、最可靠的雙向電平轉(zhuǎn)換芯片TXS0108E。這是一款8通道的自動(dòng)方向電平轉(zhuǎn)換器支持1.2V至3.6V與1.8V至5.5V之間的雙向轉(zhuǎn)換。連接非常簡(jiǎn)單TXS0108E的VCCA端接STM32側(cè)的3.3V。VCCB端接模塊側(cè)的5V。OE輸出使能引腳接VCCA即3.3V使其一直有效。將STM32的USART RX引腳準(zhǔn)備接收模塊數(shù)據(jù)連接到TXS0108E的A端通道B端通道連接到模塊的TX引腳。將STM32的USART TX引腳雖然本項(xiàng)目暫時(shí)不用STM32發(fā)數(shù)據(jù)但預(yù)留連接到TXS0108E的另一個(gè)A端通道B端連接到模塊的RX引腳。這樣當(dāng)模塊5V側(cè)發(fā)送高電平5V時(shí)經(jīng)過(guò)芯片轉(zhuǎn)換為3.3V高電平給STM32當(dāng)STM32發(fā)送3.3V高電平時(shí)芯片也能轉(zhuǎn)換為5V高電平給模塊。整個(gè)通信鏈路電平匹配安全可靠。實(shí)操心得電平轉(zhuǎn)換方案有很多比如用電阻分壓僅適用于MCU接收模塊數(shù)據(jù)單向且速度不高時(shí)或者用MOS管搭建成本低但需要仔細(xì)調(diào)參數(shù)。對(duì)于這種要求穩(wěn)定、高速STP-23波特率通常是115200的通信我強(qiáng)烈推薦使用專(zhuān)用的電平轉(zhuǎn)換芯片一勞永逸避免很多玄學(xué)問(wèn)題。TXS0108E、74LVC4245等都是不錯(cuò)的選擇。3. 使用STM32CubeMX進(jìn)行工程初始化與配置3.1 時(shí)鐘樹(shù)與系統(tǒng)基礎(chǔ)配置打開(kāi)CubeMX選擇你的MCU型號(hào)我的是STM32F103C8T6。第一步永遠(yuǎn)是配置時(shí)鐘。對(duì)于串口通信特別是使用高波特率如115200時(shí)一個(gè)準(zhǔn)確的主時(shí)鐘是基礎(chǔ)。HSE高速外部時(shí)鐘在RCC配置中將High Speed Clock (HSE)設(shè)置為Crystal/Ceramic Resonator。我的板子外部接了8MHz晶振。時(shí)鐘樹(shù)配置進(jìn)入Clock Configuration標(biāo)簽頁(yè)。CubeMX的圖形化界面非常直觀(guān)。我的配置路徑是HSE (8MHz) → PLL輸入/1→ PLL倍頻x9→ 系統(tǒng)時(shí)鐘源選擇PLL得到72MHz的系統(tǒng)時(shí)鐘SYSCLK。這是F103系列非常經(jīng)典的工作頻率。APB1總線(xiàn)時(shí)鐘PCLK1設(shè)為36MHzAPB2總線(xiàn)時(shí)鐘PCLK2設(shè)為72MHz。USART1掛在A(yíng)PB2上因此其時(shí)鐘為72MHz這對(duì)于生成115200波特率非常精準(zhǔn)。SYS調(diào)試接口在SYS設(shè)置中將Debug改為Serial Wire。這樣可以使用ST-LINK進(jìn)行下載和調(diào)試不會(huì)占用額外的USART引腳。3.2 串口外設(shè)與中斷配置這是本項(xiàng)目軟件部分的核心。啟用USART根據(jù)你的硬件連接找到對(duì)應(yīng)的USART引腳。我使用的是USART1其默認(rèn)引腳是PA9 (TX) 和 PA10 (RX)。在Connectivity-USART1中將模式Mode設(shè)置為Asynchronous異步通信。參數(shù)設(shè)置Baud Rate:115200(這是STP-23模塊最常見(jiàn)的出廠(chǎng)波特率務(wù)必與模塊一致)。Word Length: 8 Bits (數(shù)據(jù)位)。Parity: None (無(wú)校驗(yàn)位)。Stop Bits: 1 (停止位)。Over Sampling: 16 Samples (默認(rèn)即可)。啟用中斷這是實(shí)現(xiàn)穩(wěn)定接收的關(guān)鍵在NVIC Settings標(biāo)簽頁(yè)在USART1配置界面內(nèi)勾選USART1 global interrupt使能全局中斷。這樣每當(dāng)USART1接收到一個(gè)字節(jié)的數(shù)據(jù)就會(huì)觸發(fā)中斷我們的代碼可以在中斷服務(wù)函數(shù)里及時(shí)取走數(shù)據(jù)。生成工程在Project Manager中設(shè)置好工程名稱(chēng)、路徑、IDE我用的Keil MDK并將Code Generator中的Generated files部分勾選“為每個(gè)外設(shè)生成獨(dú)立的.c/.h文件”這樣代碼結(jié)構(gòu)更清晰。最后點(diǎn)擊GENERATE CODE。3.3 GPIO與項(xiàng)目基礎(chǔ)設(shè)置檢查引腳確保USART的TX/RX引腳配置正確沒(méi)有被其他功能占用。通常CubeMX會(huì)自動(dòng)配置好??蛇x狀態(tài)指示LED我額外配置了一個(gè)LED引腳例如PC13作為輸出用于指示系統(tǒng)狀態(tài)或數(shù)據(jù)接收狀態(tài)方便調(diào)試。項(xiàng)目管理在生成代碼前記得檢查Project Manager中的Toolchain/IDE選擇是否正確。4. HAL庫(kù)串口中斷接收與數(shù)據(jù)解析實(shí)戰(zhàn)4.1 數(shù)據(jù)接收策略環(huán)形緩沖區(qū)與中斷服務(wù)STP-23模塊是主動(dòng)、連續(xù)發(fā)送數(shù)據(jù)包的。如果我們?cè)谥餮h(huán)里用HAL_UART_Receive輪詢(xún)很可能因?yàn)樘幚砥渌蝿?wù)而丟失字節(jié)導(dǎo)致整個(gè)數(shù)據(jù)包錯(cuò)位。因此使用串口中斷進(jìn)行字節(jié)級(jí)的接收是唯一可靠的選擇。但HAL庫(kù)的中斷接收函數(shù)HAL_UART_Receive_IT是一次性設(shè)定接收一定數(shù)量的字節(jié)對(duì)于不定長(zhǎng)或連續(xù)的數(shù)據(jù)流不太方便。更通用的做法是在串口中斷服務(wù)程序USART1_IRQHandler中手動(dòng)讀取數(shù)據(jù)寄存器DR并將讀取到的字節(jié)存入一個(gè)我們自己管理的**環(huán)形緩沖區(qū)Ring Buffer**中。環(huán)形緩沖區(qū)的實(shí)現(xiàn)首先在main.c或自定義的uart_buffer.c文件中定義緩沖區(qū)及相關(guān)變量。// 定義環(huán)形緩沖區(qū)大小要足夠容納至少一個(gè)完整的數(shù)據(jù)包并留有余量。 #define UART_RX_BUFFER_SIZE 256 // 環(huán)形緩沖區(qū)結(jié)構(gòu)也可以直接用數(shù)組和頭尾指針管理 volatile uint8_t uart_rx_buffer[UART_RX_BUFFER_SIZE]; volatile uint16_t uart_rx_read_pos 0; // 讀指針 volatile uint16_t uart_rx_write_pos 0; // 寫(xiě)指針 volatile uint8_t uart_rx_flag 0; // 數(shù)據(jù)接收完成標(biāo)志可選用于包解析觸發(fā)然后我們需要重寫(xiě)USART1的中斷服務(wù)函數(shù)。CubeMX生成的代碼在stm32f1xx_it.c中已經(jīng)為我們聲明了USART1_IRQHandler函數(shù)框架我們只需在其中添加自己的處理邏輯。// 在 stm32f1xx_it.c 中找到 USART1_IRQHandler 函數(shù) void USART1_IRQHandler(void) { /* USER CODE BEGIN USART1_IRQn 0 */ // 檢查是否是接收中斷RXNE標(biāo)志位為1 if((__HAL_UART_GET_FLAG(huart1, UART_FLAG_RXNE) ! RESET)) { // 清除RXNE標(biāo)志讀取DR寄存器會(huì)自動(dòng)清除 uint8_t received_byte (uint8_t)(huart1.Instance-DR 0xFF); // 將收到的字節(jié)存入環(huán)形緩沖區(qū) uint16_t next_write_pos (uart_rx_write_pos 1) % UART_RX_BUFFER_SIZE; // 判斷緩沖區(qū)是否已滿(mǎn)寫(xiě)指針1等于讀指針。如果滿(mǎn)了可以選擇覆蓋舊數(shù)據(jù)或丟棄新數(shù)據(jù)。 // 這里采用丟棄新數(shù)據(jù)的策略防止有效數(shù)據(jù)被覆蓋。 if(next_write_pos ! uart_rx_read_pos) { uart_rx_buffer[uart_rx_write_pos] received_byte; uart_rx_write_pos next_write_pos; } // 可以在這里根據(jù)特定字節(jié)如幀頭設(shè)置接收完成標(biāo)志 // if(received_byte 0xAA) { uart_rx_flag 1; } } /* USER CODE END USART1_IRQn 0 */ HAL_UART_IRQHandler(huart1); // 調(diào)用HAL庫(kù)的通用中斷處理函數(shù) /* USER CODE BEGIN USART1_IRQn 1 */ /* USER CODE END USART1_IRQn 1 */ }注意事項(xiàng)中斷服務(wù)函數(shù)里的代碼必須盡可能短小高效只做最必要的操作讀取數(shù)據(jù)、存入緩沖區(qū)。絕對(duì)不要在中斷里進(jìn)行復(fù)雜計(jì)算、解析或調(diào)用HAL_Delay之類(lèi)的阻塞函數(shù)。uart_rx_buffer等被中斷和主循環(huán)共享的變量必須使用volatile關(guān)鍵字修飾防止編譯器優(yōu)化導(dǎo)致數(shù)據(jù)不一致。4.2 STP-23數(shù)據(jù)包格式解析與校驗(yàn)數(shù)據(jù)從模塊源源不斷地進(jìn)入我們的環(huán)形緩沖區(qū)下一步就是在主循環(huán)中解析出有效的距離值。首先我們必須知道STP-23的數(shù)據(jù)包格式。通常這類(lèi)模塊的通信協(xié)議是廠(chǎng)家自定義的需要查閱數(shù)據(jù)手冊(cè)。以我手頭的模塊為例其數(shù)據(jù)包格式如下常見(jiàn)的一種9字節(jié)格式字節(jié)序號(hào)內(nèi)容說(shuō)明00xAA幀頭固定值用于標(biāo)識(shí)數(shù)據(jù)包開(kāi)始。10x55幀頭固定值。2DATA1距離數(shù)據(jù)高8位單位毫米。3DATA2距離數(shù)據(jù)低8位。4DATA3信號(hào)強(qiáng)度高8位可選。5DATA4信號(hào)強(qiáng)度低8位可選。6DATA5保留字節(jié)或其它信息。7SUM校驗(yàn)和通常為前面所有字節(jié)0-6的累加和取低8位。80x0D幀尾固定值回車(chē)符\r。90x0A幀尾固定值換行符\n。距離計(jì)算Distance_mm (DATA1 8) | DATA2校驗(yàn)和驗(yàn)證SUM (Byte0 Byte1 ... Byte6) 0xFF有了這個(gè)格式我們的解析任務(wù)就明確了在環(huán)形緩沖區(qū)中尋找連續(xù)的0xAA, 0x55然后取出后續(xù)固定長(zhǎng)度的字節(jié)進(jìn)行校驗(yàn)和驗(yàn)證通過(guò)后計(jì)算距離值。4.3 主循環(huán)中的數(shù)據(jù)包解析流程實(shí)現(xiàn)我們?cè)谥骱瘮?shù)main.c的while(1)循環(huán)中實(shí)現(xiàn)一個(gè)狀態(tài)機(jī)來(lái)解析數(shù)據(jù)包。// 在main.c的while(1)循環(huán)中 while (1) { // 解析串口接收緩沖區(qū)中的數(shù)據(jù) parse_uart_data(); // 其他任務(wù)... HAL_Delay(1); // 短暫延時(shí)避免CPU空轉(zhuǎn)過(guò)熱 } // 解析函數(shù)實(shí)現(xiàn) void parse_uart_data(void) { static uint8_t rx_state 0; // 狀態(tài)機(jī)狀態(tài)0-尋找?guī)^11-尋找?guī)^22-接收數(shù)據(jù)體 static uint8_t data_index 0; static uint8_t rx_packet[10]; // 臨時(shí)存儲(chǔ)一個(gè)完整的數(shù)據(jù)包 static uint32_t last_valid_time 0; // 如果緩沖區(qū)為空直接返回 if(uart_rx_read_pos uart_rx_write_pos) { return; } // 循環(huán)處理緩沖區(qū)中的所有字節(jié)直到讀完或解析出一個(gè)包 while(uart_rx_read_pos ! uart_rx_write_pos) { uint8_t ch uart_rx_buffer[uart_rx_read_pos]; uart_rx_read_pos (uart_rx_read_pos 1) % UART_RX_BUFFER_SIZE; // 移動(dòng)讀指針 switch(rx_state) { case 0: // 尋找第一個(gè)幀頭 0xAA if(ch 0xAA) { rx_packet[0] ch; data_index 1; rx_state 1; } break; case 1: // 尋找第二個(gè)幀頭 0x55 if(ch 0x55) { rx_packet[1] ch; data_index 2; rx_state 2; } else { // 如果不是0x55狀態(tài)復(fù)位重新尋找0xAA rx_state 0; } break; case 2: // 接收數(shù)據(jù)體和幀尾 rx_packet[data_index] ch; data_index; // 判斷是否接收完一個(gè)完整的數(shù)據(jù)包例如9字節(jié)包索引從0到8 if(data_index 9) // 假設(shè)包總長(zhǎng)為9字節(jié)0-8 { // 首先檢查幀尾是否正確可選但建議 if(rx_packet[7] 0x0D rx_packet[8] 0x0A) // 第8、9字節(jié)是幀尾 { // 計(jì)算校驗(yàn)和前7字節(jié)累加和 uint8_t checksum 0; for(int i0; i7; i) // 前7字節(jié)0xAA, 0x55, DATA1-DATA5 { checksum rx_packet[i]; } checksum 0xFF; // 取低8位 // 驗(yàn)證校驗(yàn)和第7字節(jié)是SUM if(checksum rx_packet[6]) // 注意索引rx_packet[6]是協(xié)議中的第7個(gè)字節(jié)SUM { // 校驗(yàn)通過(guò)解析距離數(shù)據(jù) uint16_t distance_mm (rx_packet[2] 8) | rx_packet[3]; // DATA1和DATA2 uint16_t signal_strength (rx_packet[4] 8) | rx_packet[5]; // DATA3和DATA4 // 這里可以得到最終的距離值 distance_mm (單位毫米) // 可以將其轉(zhuǎn)換為浮點(diǎn)數(shù)米或者直接使用 float distance_m distance_mm / 1000.0f; // 更新最后一次有效數(shù)據(jù)時(shí)間 last_valid_time HAL_GetTick(); // 將距離值通過(guò)其他接口輸出如另一個(gè)串口打印、屏幕顯示等 // printf(Distance: %.3f m, Strength: %d\n, distance_m, signal_strength); // 或者設(shè)置一個(gè)全局變量供其他函數(shù)使用 g_laser_distance_mm distance_mm; } } // 無(wú)論校驗(yàn)是否通過(guò)一個(gè)包處理完畢狀態(tài)機(jī)復(fù)位準(zhǔn)備尋找下一個(gè)包 rx_state 0; data_index 0; } break; default: rx_state 0; break; } } }這個(gè)parse_uart_data函數(shù)是一個(gè)經(jīng)典的狀態(tài)機(jī)實(shí)現(xiàn)它從環(huán)形緩沖區(qū)中逐個(gè)取出字節(jié)按照“找?guī)^1 - 找?guī)^2 - 收數(shù)據(jù) - 校驗(yàn)”的流程完整地解析出一個(gè)數(shù)據(jù)包。這樣做的好處是代碼結(jié)構(gòu)清晰對(duì)數(shù)據(jù)流的容錯(cuò)能力強(qiáng)即使中間有少量數(shù)據(jù)錯(cuò)誤或丟失也能在下一個(gè)幀頭處重新同步。5. 系統(tǒng)調(diào)試、優(yōu)化與常見(jiàn)問(wèn)題排查5.1 硬件連接檢查與上電順序在燒錄程序之前務(wù)必進(jìn)行徹底的硬件檢查電源用萬(wàn)用表測(cè)量給STM32和STP-23模塊的供電電壓是否穩(wěn)定且在額定范圍內(nèi)STM32通常3.3V模塊可能是5V或3.3V。地線(xiàn)確保STM32的地GND和模塊的地以及電平轉(zhuǎn)換芯片的地都是共地的。這是通信的基礎(chǔ)地線(xiàn)不通或環(huán)路過(guò)大都會(huì)導(dǎo)致通信失敗。信號(hào)線(xiàn)檢查T(mén)X/RX是否接反。模塊的TX應(yīng)接MCU的RX模塊的RX接MCU的TX。在本項(xiàng)目中我們只接收所以重點(diǎn)是模塊TX到MCU RX這條線(xiàn)必須經(jīng)過(guò)電平轉(zhuǎn)換芯片。上電順序建議先給MCU上電穩(wěn)定后再給激光模塊上電。避免模塊啟動(dòng)時(shí)的電流沖擊或亂發(fā)數(shù)據(jù)影響MCU初始化。5.2 軟件調(diào)試從亂碼到穩(wěn)定數(shù)據(jù)第一步驗(yàn)證串口基礎(chǔ)通信先不接激光模塊。將STM32的TX引腳PA9通過(guò)電平轉(zhuǎn)換或直接如果模塊是3.3V電平連接到USB轉(zhuǎn)TTL工具的RX在電腦上用串口助手如XCOM、SSCOM查看。在STM32主循環(huán)里寫(xiě)一個(gè)簡(jiǎn)單的printf或HAL_UART_Transmit發(fā)送字符串“Hello World\n”。如果串口助手能正確收到說(shuō)明STM32的串口發(fā)送功能、電平轉(zhuǎn)換電路、電腦連接都是好的。波特率一定要設(shè)置為115200。第二步接收激光模塊數(shù)據(jù)斷開(kāi)STM32的TX連接將激光模塊的TX經(jīng)過(guò)電平轉(zhuǎn)換連接到STM32的RXPA10。將激光模塊的TX也連接到USB轉(zhuǎn)TTL的RX用于監(jiān)控原始數(shù)據(jù)。上電。在串口助手上你應(yīng)該能看到模塊持續(xù)發(fā)送的十六進(jìn)制數(shù)據(jù)流例如AA 55 01 5F 00 00 00 64 0D 0A ...。記錄下一組完整的數(shù)據(jù)。這能幫你確認(rèn)模塊是否工作有數(shù)據(jù)輸出。波特率是否正確數(shù)據(jù)是否可讀。數(shù)據(jù)包格式是否與你的解析代碼一致核對(duì)幀頭、幀尾、長(zhǎng)度。第三步集成與解析燒錄你的解析程序到STM32。將STM32的RXPA10連接模塊TXSTM32的TXPA9連接USB轉(zhuǎn)TTL的RX用于打印調(diào)試信息。在STM32解析出距離后通過(guò)printf打印出來(lái)。觀(guān)察輸出是否穩(wěn)定、正確。常見(jiàn)問(wèn)題及解決全是亂碼或固定值首先懷疑波特率不匹配。確認(rèn)CubeMX配置、模塊實(shí)際波特率、串口助手波特率三者完全一致。STP-23常見(jiàn)波特率是115200但也可能是9600具體看手冊(cè)。數(shù)據(jù)時(shí)有時(shí)無(wú)跳動(dòng)大電源問(wèn)題用示波器看模塊電源引腳在激光發(fā)射瞬間是否有大的電壓跌落加強(qiáng)電源濾波如靠近模塊電源引腳并聯(lián)一個(gè)100μF電解電容和一個(gè)0.1μF陶瓷電容。地線(xiàn)噪聲確保地線(xiàn)連接短而粗單點(diǎn)接地為佳。中斷被搶占檢查是否在其他高優(yōu)先級(jí)中斷中執(zhí)行了長(zhǎng)時(shí)間任務(wù)導(dǎo)致串口中斷丟失數(shù)據(jù)??梢試L試提高串口中斷的優(yōu)先級(jí)在CubeMX的NVIC配置中。解析出來(lái)的距離值不對(duì)數(shù)據(jù)包格式錯(cuò)誤用串口助手抓取原始數(shù)據(jù)與你代碼中的解析邏輯逐字節(jié)對(duì)比。特別注意字節(jié)序大小端、校驗(yàn)和計(jì)算方式、數(shù)據(jù)位組合是否正確。緩沖區(qū)溢出如果parse_uart_data函數(shù)處理太慢而數(shù)據(jù)來(lái)得太快環(huán)形緩沖區(qū)可能會(huì)被寫(xiě)滿(mǎn)導(dǎo)致數(shù)據(jù)丟失??梢栽龃缶彌_區(qū)大小UART_RX_BUFFER_SIZE或者優(yōu)化解析代碼確保主循環(huán)運(yùn)行頻率足夠高。變量類(lèi)型錯(cuò)誤距離值是兩個(gè)字節(jié)組成的16位整數(shù)計(jì)算時(shí)注意使用uint16_t并正確移位合并。5.3 穩(wěn)定性?xún)?yōu)化與進(jìn)階處理超時(shí)機(jī)制在狀態(tài)機(jī)解析中可以加入超時(shí)判斷。如果開(kāi)始接收幀頭后很長(zhǎng)時(shí)間比如20ms都沒(méi)有收到完整包則重置狀態(tài)機(jī)防止因某個(gè)字節(jié)丟失導(dǎo)致?tīng)顟B(tài)機(jī)“卡死”。數(shù)據(jù)濾波激光測(cè)距值可能會(huì)有微小跳動(dòng)??梢栽谲浖屑尤牒?jiǎn)單的濾波算法如滑動(dòng)平均濾波或中值濾波。例如維護(hù)一個(gè)包含最近10次有效距離值的數(shù)組每次輸出這10個(gè)值的平均值可以顯著平滑數(shù)據(jù)。#define FILTER_SIZE 10 uint16_t distance_history[FILTER_SIZE] {0}; uint8_t history_index 0; // 在解析出有效距離distance_mm后 distance_history[history_index] distance_mm; history_index (history_index 1) % FILTER_SIZE; // 計(jì)算平均值 uint32_t sum 0; for(int i0; iFILTER_SIZE; i) { sum distance_history[i]; } uint16_t filtered_distance sum / FILTER_SIZE;錯(cuò)誤統(tǒng)計(jì)與指示增加計(jì)數(shù)器統(tǒng)計(jì)校驗(yàn)和錯(cuò)誤、幀錯(cuò)誤、超時(shí)錯(cuò)誤的次數(shù)。當(dāng)錯(cuò)誤率超過(guò)一定閾值時(shí)通過(guò)LED閃爍或串口輸出警告提示可能存在的硬件連接或環(huán)境干擾問(wèn)題如強(qiáng)光直射接收頭、測(cè)量超遠(yuǎn)距離信號(hào)弱。低功耗考慮如果適用如果項(xiàng)目是電池供電可以在不需要測(cè)量時(shí)通過(guò)一個(gè)GPIO控制一個(gè)MOS管切斷激光模塊的電源以節(jié)省能耗。需要測(cè)量時(shí)再上電。注意模塊上電到穩(wěn)定輸出數(shù)據(jù)需要一定時(shí)間幾十到幾百毫秒。整個(gè)項(xiàng)目從硬件選型、電路設(shè)計(jì)到CubeMX配置、中斷驅(qū)動(dòng)、協(xié)議解析再到最后的調(diào)試優(yōu)化是一個(gè)典型的嵌入式傳感器應(yīng)用閉環(huán)。最關(guān)鍵的是理解傳感器的工作原理和數(shù)據(jù)協(xié)議然后利用MCU的中斷機(jī)制確保數(shù)據(jù)不丟失最后通過(guò)穩(wěn)健的軟件邏輯提取出有效信息。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
美日韩一二三区| 天天看天天日天天操| 日韩人妻中文视频| 91日日夜夜| 加勒比大香蕉视频在线| 久久久久久久伊人精品| 日产精品久久久一区二区| 香蕉久久国产AV一区二区| 人人操人人摸人人骑| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 伊人天天久久动态图| 人人澡综合涩| 爱射综合| 久久国产性爱| 日本人妻中文字幕| 色婷婷99| 狠狠欧美| JULIA一区二区三区在线播放| 日韩精品一区二区高清| 麻豆亚洲AV成人无码久久精品| 亚洲美女 晚间男人天堂 | 国产不卡中文字幕免费avi| 丝袜熟女一区二区三区| 免费啪啪av| 91中文字幕制服丝袜免费视频| 色九九九| 偷拍亚洲高清图片| 97精品国产97久久久久久| 日本一区视频在线观看| 女色综合| 成人一二| 婷婷久月| 青青久久艹| 热热色AV| a级免费在线观看| 一区二区亚州激情久婷婷欧美| 91在线美女| 色婷婷丁香五月| 亚洲av无码国产精品字幕| 九九久精品| 天操天操夜操夜月操月年年操操| 99只有精品| 久久97资源 网| 九九玖玖精品| 国产农村妇女一区二区| 91色艳| 欧美国产有色电影| 丝袜美腿欧美| 国产青一二三| 毛片17S| 67914亚洲精品| 婷色五月| 日本高清电影欧美色图| 人人天天欧洲| 成人网欧美风情| 精品国产嫩穴视频| 日韩不卡网操逼中文字幕日韩| 美骚妇av高清在线| 91成人在线| 人人爽夜夜操| av线电影| 日韩欧美~中文字| 久久后入制服| 蜜臀99久| 日韩性爱啪啪视频| 91久久久久久久久18| 亚洲综合成人网| 青青草日韩无码| 区一在线观看| 欧洲亚洲人妻无码高清久久三区四区| 人妻性爱一区二区| 日韩性爱毛片操骚逼| 999亚洲国产视频| 丁香九月激情啪| 婷婷六月色开| 777超碰| 深喉吞精| 色官网色综合| 可以在线观看AV的网站| 日本午夜福利影院| 久久精品99| 天堂av2019| 欧美最婬乱婬爆婬性视频| 青娱乐 成人娱乐在线| 91久久久视| 亚洲九九爱| 性爱AV天堂| 中国少妇啪啪视频| 亚洲成人黄色在线观看| 午夜福利免费精品视频| 99操| 男人久久天堂| 18禁免费视频| 久久久久成人蜜桃精品| 亚洲色图美腿丝袜| 国内毛片四区| 国产真实野战在线视频| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 午夜福利久久久噜久噜久久综合| 超碰视97中文| 久久久五月天| 老女人91| 国产精品久久久久久片| 国产农村妇女精品一二区| 青青草原香蕉日本Ap| 久久无码精品| 乱老女人一区二区视频| 97久久久久久久精| 中国熟妇| 性在久久久久久| 伊人天堂在线| 国产午夜在线观看| 五月婷婷色| 九九九草| 亚洲av影音先锋| 射丝袜高跟鞋99| 欧美 青青草| 久久熟女嫩草成人片免费| 欧美日韩插逼视频| 极品五月天噜噜| 91精品久久久久| 久久直播国产| 国产精品午夜福利视频| 懂色中文一区二区三区| 青青青操| 日韩欧美亚洲自拍偷拍| 亚洲国产青青| 久久av成人无码免费| 亚洲91网站| 日韩黄片视频试看| 日韩在线视频1234| 日韩av在线精品观看| 国产极品99热在线播放69| 中文久久一区| 国产精品盗摄 偷窥盗摄| 丁香五月偷拍| 日本国产亚洲一区在线观看| 日本欧美韩国日产片片在线看免| 91欧美网| 男人的天堂成人的社区| 欧美高清18A片| 91爱综合| 欧亚日韩一区在线| 激情小说五月天| 99热婷婷一区二区三| www.av在线观看| 日本不卡免费二区| 91色久| 一区二区三区四区理论片| 国产特级毛片AAAAAA高潮流水| 人妻一区二区三区| 美女写真| 亚洲图片欧美色| 九色97| 黄色成年| 色婷婷aV一区二区三区麻豆综合| 老熟女搡BBBB搡BBBB视频| 性色高清在线| 九九热精品视频在线观看| 亚洲 欧美 日韩另类 麻豆| 婷婷丁香五月激情啪啪| a级免费在线观看| 久久9精品视频| 美国日韩黄片| 麻豆天美在线喷水AV| wwwcaobibi| 欧美色图20P| 中文字幕片| 高清无码在线播放网站| 国产女人9999| 91oumei| 国产高清成人免费视频| 蜜桃一区二区三区| 天天操狠狠日夜夜干超碰撸com视频在线观看| 91天天综合在线| 91天天日| 国产懂色精品国产av| 久久久久幕乱码| 欧美男人一区| 玖玖资源综合在线视频| 九九九九国产| 婷婷人妻激情| 九九自拍伦理| 99自拍B亚洲| 再深点灬舒服灬太大了好硬好爽| 中文字幕精品一区欧美| 好色美女九七第一页| 91精品国产综合久久久蜜臀| av在线免费一区二区| 美女十八禁| 亚洲少妇在线影音| 久久天天摸| 久久成人国产精品| 丰满熟女一区二区三区在线播放| 天天舔日美女视频| 91熟女.com| 熟妇最新先锋一二三区| 90后性网国产欧美| 欧美v日韩v亚洲v最新在线| 天天热精品| 亚洲第一综合| 伊人黄色视频免费观看| 看黄片视频免费| 久操精品| 午夜操操操| 亚洲Av噜噜一区二区三区妖精| 人妻久久久久久久久久久久久久久| 日本视频在线观看污污污| 一级婬片120分钟试看| 老熟女天天操| 亚洲高清欧美总合| 九九九久久久| V A在线| 亚洲色狠| 丁香七月婷婷| 国产精品99精品视频网站| 国产精品九九九| 殴美性天天| 999综合色| 第45页一区二区| 亚洲精品一区二区三区新线路| 乱伦AVxx| 视频一区二区三区精品| 岛国A V在线免费看| 免费试看60秒| 日本一区二区亚洲综合| 尤物网站91| 综合第一页| 91A欧美电影网站| 日本在线15p| 免费看污网址| 伊人aaa| 人妻内射一区二区在线视频| 视频二区熟女人妻| 伊人青青草久久| 蜜桃视频精品一区二区| 精品人妻1237| 日本东京热大香蕉a片| 国产熟女一区二区丰满| 变态乱伦伪娘灌肠一区二区| 午夜.DJ高清在线观看免费7| 中文字幕av乱伦| 久草大| 男人的天堂啪啪啪啪啪蜜桃不卡| 国产乱码久久| 久久久久密臀一区二区| 91女优在线观看 | 欧亚在线视频| 熟女丝袜视频| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 中文字幕jul-617人妻熟女| 91超级碰| 日本天堂网| 久久只有精品一区二区三区| 亚洲一区二区 麻豆传媒| 亚洲美女黄色| 欧美不卡在线一区二区| 极品销魂美女一区二区| 日韩色| 色综合九九| 色av中文字| 蜜屁Av| 99在线精品观看视频中文| 性综合网| 婷婷丁香在线| 香蕉欧美| 久久久久久精品免费看A级| 五月婷婷丁香六月| 人妻黑丝袜电影| 欧美人妻制服| 欧亚性爱啪啪| 一牛影视久久久一区二区三区| 麻豆AV短剧| 久操电影网| 亚州色综合| 性色av网站| 亚洲一区日韩| chaopen97久久| 99久久久无码国产精品性啊聊| 欧美日韩国产三级黄色| 久久久久9久久久久| 四虎影视永久在线观看精品免费网站 | 狠狠操狠狠操操| 人妻乱仑一区二区三区| 欧美色色人| 亚洲欧洲视频小说在线观看| 亚洲欧美内射| 成在线人在线观看视频| 91精品91久久久中77777| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 亚洲 综合 第一页| 国产精品直播在线观看直播| 亚洲天堂男人在线| 中欧人妻丝袜中文字幕| 国产精品麻豆成人AV艾秋| 情侣操 逼视频99| 激情欧美97| 欧美顶级黄色大片免费| 91九九九小逼| 丰满人妻aA一区二区三区| 能看的AV| 天天看天天日天天操| 六月色色| 青青草原av| 丝袜美腿制服人妻二区中文字幕| 天堂在线一区二区| 中文字幕一区 二区三四五 区日 日骚| 久久久久人妻| 日本韩高清无砖码22o| 日韩久久三区| 91中出| 黄页18禁| 久久系列| 999久久久九| 国产品精品自在在线午夜免费| 丁香色婷婷| 久久精品黄色| 熟妇艹鸡八| 免费黄色片。| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 国产十八禁视频| 欧美成人四级在线播放| 骚逼自拍99| 天堂8在线新版官网| 色大师网站www永久网站视频| 天天干嫩逼网| 中文高清一区二区的| 天天日天天看| 久久久久久性爱视频| 无遮挡又黄又刺激的视频| 人妻啊啊人妻啊| 久久岛国| 91色五月俺来也| 情趣丝袜无码操逼视频| 99re8超碰| 制度丝袜99| 亚洲国产精品久久久久婷婷老年| av东京热男人的天堂| 放黄片放3级黄片没穿衣服| 婷婷五月花| 日本人妻最新在线中| 波多野结衣被操50分钟免费视频| 中文熟女五十乱码在线| 在线女人91| 日本色色色视频| 嗯嗯不要视频| 69精品少妇一区二区三区蜜桃| 久久国产熟女影院| 在线色资源| 夜夜夜久久| 久久久久久久免费A片国产成a人亚洲精∨品无码 | 黄色香蕉视频网站一区| 五月天欧美色图| 日韩素人无码一区二区三区三州| 欧亚性爱在线视频| 人人妻人人爽一区二区三区| 久久久草成人网站久久久草成人久久久草久久久 | 十八禁的黄污污免费网站| 五月天久久人妻| 麻豆AV96熟妇人妻| 操B在线观看| 久久久性少妇| 精品美女少妇一区二区三区| 久精品无码av一区二免费国产在线观看| 97资源站国产精品| 亚洲文学偷乱拍啪啪啪啪| 色色色热| 99re公开精品免费视频| 怡红院成人视频| 97热视频在线观看| 久久久久久久少妇| 91狠婷| 大色综合网| 精品国产91内射久久| 大香蕉99999| 97操综合| 伊人久久大香蕉线AV五月天| 婷婷综合五月| 操日韩第| 成人激情无码在线视频| 色综合天天| 被男人吃奶很爽的毛片| 99re在线| 人妻激情视频| 超碰 国产熟女精品一区| 超碰天天久久79| 国产亚洲 中文欧美久久| 在线啊v一区| 国产福利在线视频网站| 2021久久国产综合精品青草| 亚洲AV噜噜狠狠网址蜜桃动漫| 欧美亚洲自拍另类人妻| 天天综合中文字幕 91| 成年在线视频日本亚洲在线视频区精品江靖宇公司 | 丁香五月综合| 26uuu欧美| 国产一区在线免费播放| 久久久久婷婷| 国产一区免费午夜视频| 免费AV中文网在线观看| 久久亚洲AV无码白度| av亚欧| 国产精品免费久久久久久久久久| 超97在线精品视频| 亚洲AV无码成人精品久久| 乱欲一区二区| 免费一级毛片在线视频观看| 五月激情影院| 中文一区二区婷婷视频| 色五月天AV| 日本最新免费韩国1区2区视频播放| 婷婷久草| 伊人国产av| 日韩精品三区四区| 97超碰巨乳| 91久久久久久久| 亚洲网污污污污| 伊人影院在线理论播放| 欧美97日韩| 五月天加勒比啪| 国产在线激情| 亚洲国产精品无石码久久| 亚洲激情片| 波多野42部激情无码喷潮| 国产精品一区二区三区四区五区| 亚洲风情在线观看| 欧洲综合无码| 日韩啪啪网| 蜜桃久久综合视频| 97超碰亚洲| 超碰色美女| 日韩在线观看三级电影| 日本不卡高清视频| oumeisetu综合| 天堂资源欧美| 人妻素股| 国产无码高清操逼视频| 韩日无码在线观看| 啊啊啊啊啊啊啊国| 欧美日韩系列| 嫩草美女久久| 成人欧美一区二区三区黑人一| 日韩av熟女一区二区三区成人| 肉丝无码中文高清| av毛片aaaaa免费看| 无码操逼网| 日本天天操| av一区二区三区四区五区久草臀| 亚洲情色综合网| 放黄片放3级黄片没穿衣服| 日韩丰满熟妇| 欧美国产有色电影| 亚洲无992tv| 日韩成人性爱AV| 亚洲一二三精品久久网 | 久草电影网| 欧美日韩啪啪电影| 水澄无码AV| 91痴汉| 久热影视| 色爱欲亚洲| 精品一级| 99精品网| 久久精品噜噜噜成人看免欧美大片| 国产黄色视频久久| 国产激情久久| 丝袜高跟澳门91视频| 国产成人亚洲精品无码最新在线| 国产精品电影| 欧美,日韩,中文,另类| 无码精品久久| 五十路熟女工口 | 国产99热| 成人性爱全视频观看| 欧美色偷拍| 婷婷激情四射| 乱老女人一区二区视频| 久久天堂网| 国产熟女乱论| 久久99精品九九久久久婷婷| 国模无码人体一区二区三| 天天狠| 色97干| 9久综合网| 啊啊啊啊啊啊啊网址在线观看| 91国产操逼视频| 亚洲……91| 久久久久国产精品久久久| 五月婷丁香| 日本精品一区二区不卡| 婷婷午夜| 精品熟女呻吟久久91| 狠狠操综合| 91色夜| 97久久精品亚洲| 久久久久国产精品人妻aⅴ天堂| 日韩成人精品视频自拍| 一本色道久久综合亚洲二区三区| 日本在线激情一区二区三区| 久久婷婷成人综合色怡春院| 欧美亚州手机在线| 成年人黄色视频免费| 97中文字幕色| 插欧洲美女欧美精品| 夜夜嗨一区二区三区三州加勒比| 婷婷99狠狠躁天天躁| 亚洲男人的天堂va亚洲男人社| 91黑丝在线播放| 国产狂喷潮在线精品| 欧美人妻中出| 99色综合| 国产乱伦性爱区| 亚洲第一男人天堂| 精品国产嫩穴视频| 国产精品欧美日韩久久| 国产精品农村妇女| 天天拍天| 综合久欧洲| 日本中文字幕在线电影| 成 人片 黄色大片| 91麻豆天美| 欧美日韩另类字幕中文| 色区久久| 精品欧美乱码久| 欧美 日韩 另类 亚洲| 亚洲成人日韩小说| 偷拍视频青青草在线视频| 熟妇熟女视频一区二区三区| 成人无码在线超碰网| 青青草AV色| 日韩天堂av电影在线观看| 欧美一区二区观看在线| 揉揉揉夜夜| 国产精品91ai| 青草视频在线看看看看看看看看看| 啊啊啊啊,啊啊好多水| 吻戏激情性巴克| 无遮挡猛进视频免费无限观看| 久久久久久国产成人| 干超碰碰熟女| 亚洲丝袜诱惑| 国产路线专区| 日本加勒比无码专区| 神马久久久久久久久| 在线观看午夜婷婷久久久久清性观看| 97色色色综合网站| 亚洲AO在线| 日本一区二区三区欧美日韩中文字幕| 色99视频| 91oumei| 人妻少妇一区二区| 婷婷中文字幕| 粉嫩国产精品久久粉嫩| 大香蕉操久久| 久久手机视直播| 久久久精品国产亚洲伊人| 久久激情综合| 日韩三级久久久| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 国产乱伦视频污| 国产 日韩,欧美 自拍| 九九AV| 牛牛AV人人夜夜澡人人爽| 国产女大学生AV| 久久精品国产Aⅴ| 一级做受视频免费是看美女| 亚洲AV成人无码一二三久久| 老熟女乱伦一区| 99这里只有精品国产| 日韩无码精品综合久久| 国产精品干干干| 亚洲欧美日韩精品久| 久久男女激情视频网站| 日本 欧美 亚中文字幕| 污到发麻的视频 国产| 91久久18禁| 四虎在线观看网站| 高清视频一区| 免费岛国一级片| 韩日性爱av| 国产福利第一视频| 欧美日韩国第一区| 人妻天天爽| 精品久久97观看在线视频| 国产午夜精品在线观看| 无码最新| 久久久爆乳翘臀一线天伦理视频| 欧美色图片91| 亚洲乱熟女一区二区| 一起草视频在线| 欧美日韩国产另类综合| 国内毛片无码一级毛片| 激情露脸爱| 亚洲人综合| 久操免费在线| 亚洲精品第一| 91在线视频免费中出| 亚洲偷拍欧美激情| 碰碰97| 欧美成人午夜免费福利785| 色综合一区二区三巨| 亚洲日韩乱码中文无码蜜桃臀网站| 2017,超碰| 亚洲无码成人精品| 五月天激情小说| 日韩精品电影| 操屄日韩| 激情五月天婷婷| 97bbn| 国产在线播放成人免费| 欧美劲爆视频一区二区| 色 婷97| 另类欧美色| 无码乱人伦中文视频| 中文字幕丝袜美腿| 五月情色天| 日韩一级成人毛片免费观看 | 成人性交午夜免费片| 国产高清无码一区三区二区| 精品人妻1237| 丰满人妻一区二区三区免费 | 欧洲自拍色图gif在线| 中日韩免费看男女操逼大全| 玖玖在线视频| 小电影欧美91| 国产精品久久久久久 百度| 亚洲男人天堂2012| 中文字幕欧美日韩三级| 欧美日韩成人在线| 骚货操死你| 92人人操人人| 蜜臀th| 日韩色| 中文字幕久久精视频久久大全| 久久久久久九九九| www.婷婷六月天| 97国产中文| 亚洲精品精品一区二区| 激情久久日韩精品中文字幕麻豆| 99在线免费公开视频| 中文字幕乱码人妻一区二区三区,99精品 | 亚洲中文字母在线播放| 91劲爆| www.av在线观看| 日韩97视频| 人妻熟女一区二区三区在线| 2023天天操夜夜操| 欧美午夜色妇色鬼| 日韩人妻有码免费视频| av72网| 色嗨嗨在线| 日韩精品一区,二区 九九...老司机| 国产欧美日韩一区二区三区| 日本久久综合| 99久久久久久久久| 麻豆色约约| 色婷婷亚洲婷婷| 欧美翘臀视频网站一区二区三区| 国产av尤物| 天天综合网网欲色| 久久99手机免费视频| 欧美日韩不卡a片| 小骚逼被操的爽不爽| 国产精品久久久久中文字幕| 9.1小视频| 色五月婷婷在线| 久久精品一区二区三区四区五区| 婷婷色香| 亚洲黄色网址视频| 俞拍久久国应视频| 欧美丝袜激情| 在免费jIzzjIzz在线视频| 国产少妇内射| 色av中文字| 国产日产精品久久快鸭的功能介绍| 亚洲国内精品成人不卡| 日韩999| 波多野结衣之双飞调教在线播放| 伦理弟一页| 九九久久精品| 人人贴人人摸| 超碰97综合在线| 日韩99神马视频片| 大香蕉综合在线| 一级性爱视频免费观看| 九九九九九九九九九九九蜜桃| 99热91| 成人一道本免费视频| 无码九九| 亚洲一二三精品久久网| 久久精品店| 搡老女人老熟女91| 土豪酒店各种姿势玩弄极品幼稚| 大香蕉亚洲中文| 精品偷拍13p欧美dodk视频| 欧美日韩久久精品爱爱| 亚熟hd视频在线| 国产欧美日韩女同性恋ww喷水精品| 亚川综合视频| 97爱爱爱| 99re这里只有精品2| 麻豆性爱视频在线播放| 性爱综合网| 亚洲啪啪视频一区二区| 最新亚洲黄色免费电影| 色网亚洲人| 欧美性爱网97| 色好看av| 亚洲丝袜二区| 久久久久9| www.黄色在线| 久久日韩精品一区二区| 亚洲国产天堂| 久久9免费视频| 国产亚洲日本| 日产中文字幕2020| 青青爽| 嗯啊不要啊在线| 婬女免费一二三区A片| 亚洲精品国产无码高清| 搡老女人老91妇女老熟女| 91国产丝袜白虎| 色踪合AV| 久久久久久久六六| 丰满精品人妻少妇久久字幕| 亚洲另类久操网| 亚洲影视综合网| 五月婷丁香| 久久伊人五月天| 色五月综合| 欧美很很操视频| 亚洲欧美国产其他二区| 精久久久91| 精品十三区| 97人人爱人人做人人乐| 东京热一区二区三区四区五区六区| 999日韩中文精品观看视频。| 91精品久久久久久综合五月天| 黄色一级视| www网站黄| 久热大香蕉| 欧美九9 9 9| 性站| 欧美亚综合色图| 国产专区路线| 日本黄色裸日本黄色裸体 | 天天亚洲| 亚洲色人| 91av一区二区在线观看| 2019久久久久久久久福利| 91碰超| 久久久久国产精品片区无码直播| 高清无码国产亚洲| 日韩一级二级| 中文字幕版| 色拍偷亚洲| 国产丁香精品露脸视频| 成年人黄色| 欧美日韩大黄片| 日本一区二区不卡精品| 亚洲色五月| av操操不卡| 四虎在线免费视频| 亚洲中文字幕熟女少妇一区二区| 热99这里有精品综合久久 | 中文字幕一区二区三区人妻少妇在线| 肉嘟嘟www视频在线观看高清| 手机在线观看不卡无码av| 岛园激情| 97久久久久久久精| 亚洲av热热色| 欧美96交| 亚洲天堂五月天国产| 激情无码日韩| 四虎AV在线观看| 秋霞午夜视频一区二区| 热热色综合网| 黑人免费福利视频| 午夜影美女日鸡鸡天天视频国产| 丁香婷婷色五月| 欧美狠狠操| 天天综合站| 日韩另类色图| 91九九九小逼| 蜜臀99精品国产高清在线观看| 人妻9117c| 九九综合久久| 东京成人一区| 久久精品国产亚洲粉嫩| 中文字幕一区二区日韩网| 天天天天操| 我爱搞逼综合网| 天天看夜夜看日日干| 蜜臀操逼黄色视频操的好爽| 毛片17S| 午夜经典| 亚洲欧综合另类无码一区| www鬼畜国产男人的天堂| 亚洲色图第四色| yw尤物av无码点击进入麻豆| 妺妺跟我一起洗澡没忍住| 樱花草社区www中国| 久久久日本电影| 一级特级aaaa毛片免费观看| 国产suv精品一区二区四| 国产精品久久久久久夜夜夜夜| 国产偷拍网站| 小少妇| 久久精品日韩专区免费观看| 日韩极品无码B| 欧美图片偷拍| 91欧美网| 99ri在线视频| 亚欧操逼片在线观看| 五月婷网站| 91总综合网| PMv在线观看| 麻豆久久视频在线地址| 久久东京热成人| 强免费黄色网址| 亚洲清纯唯美| 99性爱在线观看| 情侣操 逼视频99| 伊人操你| 女人一区| 国产在线视频二区| 日日橹狠狠爱欧美超碰| 国内亚洲高清无码| 欧美成人精品一区二区三区| 91老熟女| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 97精品国产手机| 欧美18 在线观看| 欧美亚洲丝袜美女电影| 欧美亚洲自拍另类人妻| 1024亚洲中文字幕久在线看片你懂的 | 夜夜欢天天干| 丁香六月婷婷综合| 97超碰香蕉| 丝袜熟女2P| 国产综合色精品在线观看| 婷婷三区| 久热影视| 天综合网欧美| 欧美一级黄色18片免费看| 人妻无码一区二区三区久久99| 日本操嫩b网| 懂色av中文字幕| 日本片日本片祼观看网站在线看中文版网页在线看 | 26uuu成人影片| 伊人操操| 91狼人| 国产精品96久久久久久| 亚州操操穴网| 6080YYY午夜理论片在线观看| 东京热精品97综合网| 九色在线熟女国产黑人| 老熟女综合网 | 性色AV蜜色av色欲av| 欧美色一二三| 成人福利视频网| 精品国产AV一区天美传媒| 国产性感骚丝袜在线| 欧美日韩亚洲一区二区在线观看| 男人成人黄色视频在线观看免费下载| 亚洲欧美国产日本一区二区三区| 久九九九| 日日噜噜夜夜久久亚洲一区二区| 欧美一区二区三区日韩| 亚洲丝袜诱惑| 激情视频一二三| 99热在线播放| 欧洲欧美视频一区二区| 青青草五月份天| 丝袜狠狠草尤物人妻av91| 欧美综合娱乐久久| 久久久偷拍| 91处女视频在线观看| www久| AV一起草在线| 91欧美www| 欧美精品偷拍| 婷婷五月天综合网| 天天摸夜夜添无码小视频| 日本性爱网址| 清纯唯美亚洲综合| 成人久久久精品| 天美av在线观看| 黄色大香焦1级‘′‘| 色婷婷国产精品一区在线观看| 亚洲熟久久| 黑操B| 久久性爱大全| 无码区蜜乳| 91亚洲人| 熟女熟妇一区二区三区视频| 欧美一二三区四五区| 欧美日韩99| 东北丰满熟女国产一区| 老司机福利青青草| 撸无码不卡免费视频| 天天看高清麻豆| 91美腿丝袜在线观看| 五月丁香婷婷综合| 约操熟妇| 国产亚洲欧美每日在线| 欧美中文字幕精品人妻| 国产夫妻性生活视频| 亚洲激情色片 | 综合伊人激情| 亚洲成人贴图| 噜噜噜噜久久久精品免费| 97视频在线免费播放| 国产精品色哟哟| 毛片视频白嫩| 久久五月份| 色婷婷av在线观看| 你懂得91| 黄色av一区二区在线| 无码免费精品高清| 日韩美女操b| 精品成人亚洲午夜电影| 性饥渴少妇av无码毛片| 天天看天天日| 极品国产内射| 亚洲色图欧美一区二区不卡| 亚洲色宗合| 好爽免费视频| 国产精品白丝| 天天澡天天爽日日AV| 国产精品96久久久久久| 综合 亚洲 欧美| 亚洲色交| 欧美色999| 探花精品 一区二区| 久久色网| 欧美日韩大香蕉| 日韩欧洲操屄视频| 久久欲| av最新免费中文字幕| www.91逼逼.com| 操逼视频亚洲| 久操精品网| 依人大香蕉| 婷婷色一区| 操美女人妻| 亚洲美女 晚间男人天堂 | 日韩黄色一区二区三区| 深夜激情无码| 五月天婷婷综合| 蜜臀久久99精品久久久久久酒店 | 5月婷婷6月六月丁香| 四虎影院成年人片| 偷拍 精品另类 凸凹了四区| 中文字幕av色| 97日视频| 欧美爱国产综合、| 久久啊啊| 成人性爱AV在线免费观看| 国产熟女完整版中字| 亚洲制服欧美另类内射| 欧美99| 精品久久久久黄少妇| 国产精品视频在线播放| 2020中文字幕在线| 中日韓欧美高清| 久艾草在线精品视频在线观看| 天天艹天天日| 色婷婷网| 9超碰免费| 亚洲骚男同com| 欧美色涩| 国产69精品久久久久99尤物| 久久久五月天| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 97超碰人人模人人拍人人| 日韩精品国产一区二区| 欧美成人黄网色网站| www.91色综合| 小骚逼被操的爽不爽| 三及片网站| 成人av影院在线观看| 九九激情网| 午夜精品久久久久久久99热影院| 亚洲有薄码区久久在线一区| 老司机福利青青草| 日本精品高清一二区一本到| 人人喜人人妻| 91美女视频电影| 麻豆国产97在线| 久久精品色欧美aⅴ一区二区| 一区二区久久天天干狠狠| 精品乱码在线观看| 乱伦熟妇一区二区| 色香蕉影院| 97在线青| 日本精品一级二级三级| 免费的黄片wwwwww| 日韩精品人妻中文字幕久久久| 欧美性色欧美| 欧美性爱三区二区| 97色欧州| 啊啊啊操死我| 97婷婷色| 欧美日韩97在线| 日韩簧片免费看| 电影69乱码96| 啊啊啊啊免费视频| 婷婷丁香五月天亚洲天堂网| 成人熟女视频一区二区三区| 国产成人五月天丁香花| 九色在线熟女国产黑人| 91九九九小逼| 久久久久久99AV无码免费网站| 色婷婷丁香五月| 人人操人人精品影片| 岛国色情视频在线观看| 小说区 图片区色 综合区| 丁香五月天激情网站| 亚洲欧美在线综合| 国产美女销魂在线观看不卡| 午夜久久一区二区无码中出| 中文字幕视频在线观看| 国产免费久久久久| 天欧美在线| 黄页视频网站野外| 欧美性生活内射| 操婢日韩| 麻豆 亚洲 97| 三级激情网站| 美日韩在线不卡人妻| a男人的天堂久久一级A毛片| 99色悠悠| 欧美97| 婷婷国产精品九区| 91操操操操| 韩国女主播青草福利视频| 久久久久国产精品久久久| 嗯啊不要啊在线 | 蜜乳视频网站| 99RE在线视频精品,这里只有精品| 亚洲无码精品AV久久久| 天天亚洲综合| 韩国手机不卡无码三级视频| 1区2区3区中文字幕日韩| AA级电影三区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 丁香九月 婷婷| 婷婷五月天无码 | 精品国产网站| 桃花色综合影院| 人妻无码久久一区二区三区免费| 乱伦a片视频| 天天操天天7| 97人人模人人爽人人| 99re黄| 国产老熟女| 又粗又长又爽在线观看| 中文字幕欧美日本乱码一线二线| 中日高清无码操逼视频| 热热色91| 久久水蜜臀亚洲AV无码精品| 青青操综合网| 欧洲色综合| 亚洲最大91网| 欧美日韩性爱电影在线| 日韩精品一区,二区 九九...老司机| 国产无套粉嫩白浆在| 亚洲久久久久| 96国产污污污丝袜| 婷婷综合网站| AV乱伦专区| 无码九九九九| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 色色色999| 国产日韩精品suv| 啊啊啊啊好大好硬啊啊啊啊啊| 婷婷久久五月| 中文字幕一区二区三区四区在线视频| 激情人妻另类| 天天欧美色| 岛国大片在线观看网站入口| 偷偷人人精品女女久久| 天天综合网久久ww| www.人人cao| 无码人妻一区二区三区色欲aⅴ | 操逼片中文| 97国产精品| 亚洲骚男同com| 久久免费看高潮毛片韩国| 一级久久性爱视频| 欧美色www亚洲国产阿娇要播| 美女骚尻视频| 综合网亚洲| 嫩草 我啊~嗯~在线| 国产精品对白内射| 自拍鲍鱼一区在线高清观看免费| www熟女乱伦com| 91亚洲最新在线| 热久久国产精品视频大陆精品| 婷婷99狠狠躁天天躁| 欧美激情另类一区二区| 久久久蜜桃臀无码视频| 人人妻天天做天天爽| 欧美色图偷拍另类| 日韩三级一区 | 欧美综合加勒比在线| 99久久9| 99re公开精品免费视频| 国产精品人妻无码久久久老鸭窝| 性欧美| 狠狠躁日日躁夜夜躁A| 欧美黄色图片| 亚洲图片欧美日韩| 国内精品伊人久久久久影院会| 被男人吃奶很爽的毛片| 男人在线天堂| 亚洲欧美日韩不卡人妻| 熟女熟妇一区二区三区视频| 素颜老阿姨乱情色| 欧美97在线观看| 刺激性视频黄页| 国产蜜臀精品一区免费尤物| 久久香蕉网| 激情综合网五月婷婷| 性爱乱伦网址| 日韩人妻中文视频| 嗯嗯,啊啊,国产精品| 久久精品人人做人人看| 国产精品第一页国产大屁股视频免费区 | 男人的天堂Va| 日本高清视频在线观看黄已三辽| 中文字幕女同在线| 中国黑人三级片网站上区| 亚洲一二三精品久久网| 91色碰| 久久久久久夜夜夜夜夜| 国内91熟女人妻丝袜天天精品视频在线 | 搡老人老9丨女老熟人| 曰韩操B| 操逼国产免费| 操逼1区| 最新日产中文在线麻豆| 欧亚性爱啪啪| 91人妻Pr| 色五月首页| 亚洲午夜免费狠狠干| 国产精品一二三免费网站| 97电影院超碰| 欧美专区第一页| 欧美日韩人人精品| 亚州乱码中文字幕综合久久久| 麻豆精品A片免费观看| 欧美中文狠| 日韩精品影视| 日韩成人小视频| 精品午夜福利| 日韩有码 一区二区三区| 中文色综合| 亚洲欧美国产其他二区|