久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

STM32 UART引腳復(fù)用配置詳解:從原理到實(shí)戰(zhàn)避坑指南

STM32 UART引腳復(fù)用配置詳解:從原理到實(shí)戰(zhàn)避坑指南 1. 從一次串口“失聯(lián)”說起為什么我的STM32串口不工作了最近在調(diào)試一塊基于STM32F103的板子遇到了一個(gè)讓我折騰了大半天的“靈異事件”。我的項(xiàng)目里用到了USART1和USART2USART1通過PA9/PA10連接了一個(gè)GPS模塊USART2通過PA2/PA3連接了一個(gè)調(diào)試用的藍(lán)牙模塊。代碼寫好了USART1收發(fā)GPS數(shù)據(jù)一切正常但USART2死活沒反應(yīng)示波器量TX引腳連個(gè)毛刺都沒有。我反復(fù)檢查了時(shí)鐘配置、波特率、中斷、DMA甚至懷疑是硬件虛焊把芯片都重新吹了一遍問題依舊。最后在幾乎要放棄的時(shí)候我鬼使神差地翻開了數(shù)據(jù)手冊的“Alternate function mapping”表格才恍然大悟——我犯了一個(gè)STM32開發(fā)中非常經(jīng)典且隱蔽的錯(cuò)誤GPIO引腳復(fù)用功能配置錯(cuò)誤。具體來說我初始化USART2時(shí)想當(dāng)然地認(rèn)為它的TX發(fā)送引腳固定是PA2RX接收引腳固定是PA3。于是我的代碼里只配置了GPIOA的Pin2和Pin3為復(fù)用推挽輸出和浮空輸入。但實(shí)際上對(duì)于STM32F103C8T6這款芯片USART2的TX信號(hào)除了可以映射到PA2還可以映射到PD5如果芯片有PD端口的話。問題不在于此而在于我沒有在GPIO初始化之后明確地將這兩個(gè)引腳的功能“重映射”到USART2上。對(duì)于USART1、USART2等外設(shè)STM32的GPIO有一個(gè)“復(fù)用功能重映射”機(jī)制你需要告訴芯片“請把PA2和PA3這兩個(gè)物理引腳從默認(rèn)的普通GPIO模式切換給USART2外設(shè)使用”。這個(gè)操作就是通過配置“復(fù)用功能重映射寄存器”來實(shí)現(xiàn)的。這個(gè)坑讓我深刻意識(shí)到STM32的UART通用異步收發(fā)傳輸器配置遠(yuǎn)不止是開啟時(shí)鐘、設(shè)置波特率、使能收發(fā)那么簡單?!耙_復(fù)用”是隱藏在底層、卻足以讓整個(gè)通信鏈路癱瘓的關(guān)鍵一環(huán)。它就像連接CPU核心與外設(shè)接口的一座橋橋沒搭對(duì)數(shù)據(jù)流就過不去。今天我就結(jié)合這次踩坑經(jīng)歷和多年的項(xiàng)目經(jīng)驗(yàn)把STM32 UART的復(fù)用問題掰開揉碎了講清楚涵蓋從基礎(chǔ)概念、配置流程到高級(jí)重映射、常見坑點(diǎn)以及跨系列芯片的差異。無論你是剛接觸STM32的新手還是有一定經(jīng)驗(yàn)卻在此處栽過跟頭的開發(fā)者這篇文章都能幫你建立起清晰、系統(tǒng)的認(rèn)知。2. 理解STM32的GPIO復(fù)用系統(tǒng)不止是“開關(guān)”在深入U(xiǎn)ART復(fù)用之前我們必須先理解STM32的GPIO通用輸入輸出系統(tǒng)是如何工作的。你可以把一個(gè)GPIO引腳想象成一個(gè)多功能接口它背后連接著一系列復(fù)雜的數(shù)字電路開關(guān)矩陣。2.1 GPIO的四種基本模式與復(fù)用功能每個(gè)GPIO引腳都可以被配置為以下幾種模式之一輸入浮空引腳處于高阻態(tài)電平由外部電路決定。常用于讀取按鍵、開關(guān)狀態(tài)。輸入上拉/下拉在浮空基礎(chǔ)上內(nèi)部通過電阻連接到VDD上拉或VSS下拉提供一個(gè)默認(rèn)電平。避免引腳懸空時(shí)產(chǎn)生不確定的抖動(dòng)。推挽輸出引腳可以主動(dòng)輸出高電平接近VDD或低電平接近VSS驅(qū)動(dòng)能力強(qiáng)。這是最常用的輸出模式比如驅(qū)動(dòng)LED、控制繼電器。開漏輸出引腳只能主動(dòng)拉低到地高電平狀態(tài)需要外部上拉電阻來實(shí)現(xiàn)。常用于I2C總線等需要“線與”功能的場合。那么“復(fù)用功能”是什么當(dāng)這個(gè)引腳不是用作普通的輸入或輸出即上述四種模式而是分配給某個(gè)特定的片上外設(shè)如UART、SPI、I2C、定時(shí)器等時(shí)它就工作在“復(fù)用功能”模式。此時(shí)該引腳的控制權(quán)從CPU的GPIO寄存器移交給了對(duì)應(yīng)的外設(shè)。例如當(dāng)PA9被配置為USART1_TX的復(fù)用功能時(shí)你向USART1的數(shù)據(jù)寄存器寫入一個(gè)字節(jié)硬件會(huì)自動(dòng)將這個(gè)字節(jié)轉(zhuǎn)換成串行比特流從PA9引腳發(fā)送出去而不需要你手動(dòng)操作GPIO寄存器去翻轉(zhuǎn)電平。2.2 復(fù)用功能選擇器AFIO與GPIOx_AFRSTM32如何知道這個(gè)引腳要分配給哪個(gè)外設(shè)呢這依賴于兩個(gè)關(guān)鍵機(jī)制具體使用哪個(gè)取決于STM32的系列。對(duì)于STM32F1系列如F103即我踩坑的那個(gè)系列它有一個(gè)獨(dú)立的“復(fù)用功能I/O和調(diào)試配置寄存器”通常簡稱為AFIO寄存器。這個(gè)寄存器里包含一個(gè)非常重要的子模塊“外設(shè)重映射寄存器”。例如AFIO_MAPR寄存器。你需要通過設(shè)置這個(gè)寄存器里的特定位來“重映射”某個(gè)外設(shè)的引腳到另一個(gè)位置或者使能默認(rèn)映射。是的你沒看錯(cuò)對(duì)于F1系列即使你使用默認(rèn)的引腳映射比如USART2用PA2/PA3有時(shí)也需要在AFIO寄存器中使能這個(gè)重映射實(shí)際上是不重映射但需要確認(rèn)該功能被開啟。很多庫函數(shù)如標(biāo)準(zhǔn)外設(shè)庫的初始化流程里會(huì)默認(rèn)幫你開啟這個(gè)使能但如果你是自己操作寄存器或者使用某些簡化的HAL庫配置就可能漏掉這一步導(dǎo)致外設(shè)無法控制引腳。這就是我踩坑的根本原因我配置了GPIO為復(fù)用模式但沒有在AFIO中使能USART2的復(fù)用功能。對(duì)于STM32F4/F7/H7等更現(xiàn)代的系列它們引入了更靈活、更精細(xì)的**“復(fù)用功能選擇器”**。每個(gè)GPIO端口如GPIOA都有一組“復(fù)用功能寄存器”比如GPIOx_AFRL用于引腳0-7和GPIOx_AFRH用于引腳8-15。每個(gè)引腳對(duì)應(yīng)4個(gè)比特位可以編碼從0到15的16個(gè)“復(fù)用功能編號(hào)”AF0到AF15。芯片的數(shù)據(jù)手冊里會(huì)有一張龐大的表格告訴你每個(gè)外設(shè)如USART1_TX在某個(gè)引腳上對(duì)應(yīng)的AF編號(hào)是多少。例如對(duì)于STM32F407PA9引腳作為USART1_TX時(shí)其AF編號(hào)是AF7。你的初始化代碼就需要兩步1. 將GPIO模式設(shè)置為“復(fù)用功能”模式2. 在GPIOA-AFR[1]因?yàn)镻A9是第9個(gè)引腳屬于AFRH中寫入AF7這個(gè)值。這種方式比F1的全局重映射寄存器更直觀也更容易管理多路復(fù)用。注意無論哪個(gè)系列在配置復(fù)用功能前必須首先開啟對(duì)應(yīng)GPIO端口和所用外設(shè)的時(shí)鐘。這是STM32低功耗設(shè)計(jì)的要求默認(rèn)所有外設(shè)時(shí)鐘都是關(guān)閉的。忘記開時(shí)鐘是比復(fù)用配置錯(cuò)誤更常見的初級(jí)錯(cuò)誤但癥狀類似。3. UART復(fù)用配置的完整流程與代碼實(shí)戰(zhàn)理論說再多不如一行代碼。下面我以STM32F103標(biāo)準(zhǔn)外設(shè)庫和STM32F407HAL庫為例分別展示UART復(fù)用功能配置的完整、正確的流程。我會(huì)特別標(biāo)出容易遺漏的關(guān)鍵步驟。3.1 案例一STM32F103C8T6 配置USART2默認(rèn)PA2/PA3假設(shè)我們使用常見的標(biāo)準(zhǔn)外設(shè)庫。目標(biāo)是配置USART2波特率1152008位數(shù)據(jù)無校驗(yàn)1位停止位。// 步驟1開啟相關(guān)時(shí)鐘絕對(duì)不能忘 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); // 開啟GPIOA時(shí)鐘 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); // 開啟AFIO時(shí)鐘這是關(guān)鍵 RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE); // USART2掛在APB1總線 // 步驟2配置GPIO引腳為復(fù)用功能模式 GPIO_InitTypeDef GPIO_InitStructure; // 配置PA2為USART2_TX復(fù)用推挽輸出 GPIO_InitStructure.GPIO_Pin GPIO_Pin_2; GPIO_InitStructure.GPIO_Mode GPIO_Mode_AF_PP; // 復(fù)用推挽輸出 GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; GPIO_Init(GPIOA, GPIO_InitStructure); // 配置PA3為USART2_RX復(fù)用浮空輸入 GPIO_InitStructure.GPIO_Pin GPIO_Pin_3; GPIO_InitStructure.GPIO_Mode GPIO_Mode_IN_FLOATING; // 注意對(duì)于F1的UART RX常用浮空輸入 // GPIO_Mode_AF_INPUT 模式在某些庫中也可用但浮空輸入是通用做法。 GPIO_Init(GPIOA, GPIO_InitStructure); // **步驟3關(guān)鍵配置AFIO的重映射此例為不重映射但需確認(rèn)設(shè)置** // 對(duì)于USART2默認(rèn)就是PA2/PA3我們不需要重映射到其他引腳。 // 但是為了確保AFIO模塊正確路由信號(hào)最好有時(shí)是必須清除可能的重映射位。 // 查看數(shù)據(jù)手冊USART2的重映射由AFIO_MAPR寄存器的位3控制。 // 0: 不重映射 (USART2_RX/PA3, USART2_TX/PA2) // 1: 重映射 (USART2_RX/PD6, USART2_TX/PD5) GPIO_PinRemapConfig(GPIO_Remap_USART2, DISABLE); // 明確禁止USART2的重映射 // 步驟4配置USART2外設(shè)本身 USART_InitTypeDef USART_InitStructure; USART_InitStructure.USART_BaudRate 115200; USART_InitStructure.USART_WordLength USART_WordLength_8b; USART_InitStructure.USART_StopBits USART_StopBits_1; USART_InitStructure.USART_Parity USART_Parity_No; USART_InitStructure.USART_HardwareFlowControl USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode USART_Mode_Rx | USART_Mode_Tx; USART_Init(USART2, USART_InitStructure); // 步驟5使能USART2 USART_Cmd(USART2, ENABLE);核心要點(diǎn)開啟了RCC_APB2Periph_AFIO時(shí)鐘。這是很多教程會(huì)遺漏的一步?jīng)]有AFIO時(shí)鐘你對(duì)重映射寄存器的操作無效。使用了GPIO_PinRemapConfig(GPIO_Remap_USART2, DISABLE)。這行代碼明確地告訴AFIO模塊“我不需要對(duì)USART2進(jìn)行引腳重映射”。在有些開發(fā)環(huán)境或庫版本中這個(gè)操作可能不是強(qiáng)制的但顯式地、明確地配置它是最保險(xiǎn)、最專業(yè)的做法可以避免因寄存器上電默認(rèn)值或庫函數(shù)內(nèi)部邏輯不清晰導(dǎo)致的問題。我踩的坑就是因?yàn)槿鄙倭诉@行“保險(xiǎn)”代碼。3.2 案例二STM32F407ZGT6 配置USART1PA9/PA10AF7現(xiàn)在我們使用更流行的HAL庫在STM32F4系列上配置USART1。// 步驟1定義句柄和初始化結(jié)構(gòu)體 UART_HandleTypeDef huart1; // 步驟2在初始化函數(shù)中配置 void MX_USART1_UART_Init(void) { // 步驟2.1配置GPIO引腳和復(fù)用功能 GPIO_InitTypeDef GPIO_InitStruct {0}; // 開啟時(shí)鐘 __HAL_RCC_GPIOA_CLK_ENABLE(); // GPIOA時(shí)鐘 __HAL_RCC_USART1_CLK_ENABLE(); // USART1時(shí)鐘 // 配置PA9為USART1_TX GPIO_InitStruct.Pin GPIO_PIN_9; GPIO_InitStruct.Mode GPIO_MODE_AF_PP; // 復(fù)用推挽輸出 GPIO_InitStruct.Pull GPIO_NOPULL; GPIO_InitStruct.Speed GPIO_SPEED_FREQ_HIGH; GPIO_InitStruct.Alternate GPIO_AF7_USART1; // **關(guān)鍵指定復(fù)用功能編號(hào)為AF7** HAL_GPIO_Init(GPIOA, GPIO_InitStruct); // 配置PA10為USART1_RX GPIO_InitStruct.Pin GPIO_PIN_10; GPIO_InitStruct.Mode GPIO_MODE_AF_PP; // 對(duì)于F4的UART RX也常用復(fù)用推挽但內(nèi)部會(huì)自動(dòng)切換方向 // 另一種更準(zhǔn)確的配置是GPIO_MODE_AF_INPUT但HAL庫中GPIO_MODE_AF_PP是通用做法。 GPIO_InitStruct.Pull GPIO_NOPULL; GPIO_InitStruct.Alternate GPIO_AF7_USART1; // **關(guān)鍵同樣指定AF7** HAL_GPIO_Init(GPIOA, GPIO_InitStruct); // 步驟2.2配置UART參數(shù) huart1.Instance USART1; huart1.Init.BaudRate 115200; huart1.Init.WordLength UART_WORDLENGTH_8B; huart1.Init.StopBits UART_STOPBITS_1; huart1.Init.Parity UART_PARITY_NONE; huart1.Init.Mode UART_MODE_TX_RX; huart1.Init.HwFlowCtl UART_HWCONTROL_NONE; huart1.Init.OverSampling UART_OVERSAMPLING_16; if (HAL_UART_Init(huart1) ! HAL_OK) { Error_Handler(); } } // 步驟3HAL_UART_Init函數(shù)內(nèi)部會(huì)調(diào)用一個(gè)回調(diào)函數(shù)HAL_UART_MspInit用于MCU特定的初始化。 // 我們上面的GPIO配置實(shí)際上應(yīng)該放在這個(gè)回調(diào)函數(shù)里這是HAL庫推薦的架構(gòu)。 // 但為了流程清晰這里將GPIO和UART參數(shù)初始化放在了一起。在實(shí)際項(xiàng)目中請遵循HAL庫的MSP回調(diào)模式。核心要點(diǎn)對(duì)于F4系列核心在于GPIO_InitStruct.Alternate這個(gè)成員。你必須準(zhǔn)確填寫數(shù)據(jù)手冊中查到的AF編號(hào)此處是GPIO_AF7_USART1。HAL庫已經(jīng)為你定義好了這些宏。時(shí)鐘開啟方式使用了HAL庫提供的宏__HAL_RCC_xx_CLK_ENABLE()更加簡潔。F4系列沒有F1那個(gè)全局的AFIO重映射概念每個(gè)引腳的復(fù)用功能通過AFR寄存器獨(dú)立選擇配置更直觀但需要查表確認(rèn)AF號(hào)。4. 引腳重映射當(dāng)默認(rèn)引腳被占用時(shí)如何靈活應(yīng)對(duì)在實(shí)際項(xiàng)目中默認(rèn)的UART引腳可能因?yàn)镻CB布局、外設(shè)沖突或其他功能需求而被占用。這時(shí)就需要使用“重映射”功能將UART信號(hào)切換到另一組備用引腳上。4.1 STM32F1系列的重映射操作F1系列的重映射是“套餐式”的即一個(gè)外設(shè)的所有信號(hào)線TX、RX、CK、CTS、RTS作為一個(gè)整體被映射到另一組引腳上。例如USART1默認(rèn)映射TX/PA9 RX/PA10 CK/PA8 CTS/PA11 RTS/PA12。部分重映射TX/PB6 RX/PB7 CK/PB8 CTS/PA11 RTS/PA12。只有TX/RX/CK移動(dòng)了完全重映射TX/PB6 RX/PB7 CK/PB8 CTS/PB13 RTS/PB12。全部移動(dòng)配置代碼與之前類似只是在AFIO配置步驟不同// 開啟AFIO時(shí)鐘略 // 配置GPIOB的Pin6和Pin7為復(fù)用功能略 // **關(guān)鍵使能USART1的部分重映射** GPIO_PinRemapConfig(GPIO_Remap_USART1, ENABLE); // 注意這里是ENABLE // 后續(xù)USART1配置不變重要提示數(shù)據(jù)手冊中會(huì)明確說明當(dāng)啟用重映射后原來的默認(rèn)引腳不能再作為普通GPIO使用即使你沒有用到它們。因?yàn)樗鼈儍?nèi)部的復(fù)用功能開關(guān)已經(jīng)被切換了。4.2 STM32F4系列的重映射更準(zhǔn)確的叫法是“復(fù)用功能選擇”F4系列的重映射更加自由是“引腳到AF”的映射。你只需要在目標(biāo)引腳上將其Alternate Function設(shè)置為對(duì)應(yīng)的AF編號(hào)即可。例如想把USART2的TX從默認(rèn)的PA2移到PD5上查表確認(rèn)PD5支持哪些AF。在STM32F407的數(shù)據(jù)手冊中PD5的AF7對(duì)應(yīng)USART2_TX。開啟GPIOD和USART2的時(shí)鐘。配置PD5的模式為GPIO_MODE_AF_PPAlternate設(shè)為GPIO_AF7_USART2。RX引腳也可以類似地移到其他支持USART2_RX的引腳上比如PD6同樣AF7。不需要操作任何專門的“重映射使能”寄存器。這種方式的靈活性極高你可以只重映射TX而RX不變或者反過來。但務(wù)必注意一個(gè)外設(shè)的同一個(gè)信號(hào)如TX不能同時(shí)映射到兩個(gè)物理引腳上。4.3 重映射的實(shí)戰(zhàn)考量與陷阱PCB設(shè)計(jì)階段就要規(guī)劃在畫原理圖和PCB時(shí)就要根據(jù)芯片數(shù)據(jù)手冊的“Pinout and pin description”章節(jié)規(guī)劃好所有外設(shè)的引腳。優(yōu)先使用默認(rèn)引腳當(dāng)沖突時(shí)再考慮重映射到其他可用的、布線方便的引腳。檢查重映射沖突有些重映射選項(xiàng)是互斥的。例如在F1上你可能無法同時(shí)使能USART1的重映射和某個(gè)定時(shí)器的重映射因?yàn)樗鼈児蚕鞟FIO寄存器里的某些控制位。務(wù)必仔細(xì)閱讀數(shù)據(jù)手冊和參考手冊中的“復(fù)用功能重映射”章節(jié)。調(diào)試接口的優(yōu)先級(jí)STM32的SWD調(diào)試接口SWCLK和SWDIO通常固定在某些引腳上如PA13 PA14。盡量避免將這些引腳重映射為其他功能否則可能導(dǎo)致程序下載后無法再次調(diào)試。如果必須使用要確保有辦法恢復(fù)調(diào)試功能如通過Bootloader。庫函數(shù)與CubeMX使用STM32CubeMX圖形化工具可以極大地避免重映射配置錯(cuò)誤。它用圖形界面清晰地展示了引腳沖突和可用的復(fù)用功能并自動(dòng)生成初始化代碼。對(duì)于HAL庫用戶強(qiáng)烈推薦。5. 高級(jí)話題與深度避坑指南掌握了基本配置和重映射你已經(jīng)能解決95%的問題。但要成為高手還需要了解下面這些更深層次的知識(shí)點(diǎn)和坑。5.1 復(fù)用功能與JTAG/SWD調(diào)試接口的相愛相殺這是一個(gè)經(jīng)典大坑。以STM32F103為例PA13SWDIO、PA14SWCLK、PA15JTDI、PB3JTDO、PB4NJTRST默認(rèn)用于調(diào)試接口。上電后這些引腳優(yōu)先作為調(diào)試功能而不是普通GPIO或復(fù)用功能。問題如果你在代碼初始化中將PA15配置為SPI1的NSS片選引腳或者將PB3配置為SPI1的SCK可能會(huì)發(fā)現(xiàn)1程序無法通過SWD下載2即使程序能運(yùn)行SPI功能也不正常。原因調(diào)試接口的優(yōu)先級(jí)更高在系統(tǒng)復(fù)位后這些引腳被鎖定在調(diào)試功能上。解決方案在初始化你自己的復(fù)用功能之前需要禁用JTAG接口釋放這些引腳。通常只保留SWD功能因?yàn)镾WD只需要兩根線這樣就釋放了PA15、PB3、PB4。// 在F1的標(biāo)準(zhǔn)外設(shè)庫中通常在系統(tǒng)初始化后、外設(shè)初始化前調(diào)用 // 禁用JTAG啟用SWD GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); // 此時(shí)PA15、PB3、PB4可用作普通IO或復(fù)用功能PA13和PA14仍為SWD。切記如果你完全禁用了SWJ包括SWD那么你將再也無法通過調(diào)試器連接芯片只能通過串口ISP等方式更新程序。操作務(wù)必謹(jǐn)慎5.2 同一引腳上的多重復(fù)用沖突與仲裁一個(gè)物理引腳可能支持多個(gè)復(fù)用功能。例如PA2可能同時(shí)支持USART2_TXAF7、定時(shí)器2通道3AF1、甚至ADC輸入模擬功能。那么當(dāng)你同時(shí)初始化了USART2和TIM2并且都試圖控制PA2時(shí)誰生效呢規(guī)則生效的是最后配置的那個(gè)功能。GPIO的復(fù)用功能選擇寄存器AFR或重映射寄存器是一個(gè)全局設(shè)置后寫的配置會(huì)覆蓋先前的。后果這會(huì)導(dǎo)致難以調(diào)試的Bug。比如你的USART2本來工作正常后來你初始化了一個(gè)定時(shí)器輸出PWM不小心占用了PA2USART2就會(huì)突然“啞火”。排查方法使用STM32CubeMX檢查引腳分配沖突。在代碼中對(duì)所有復(fù)用功能引腳的配置保持清晰、集中的管理。當(dāng)某個(gè)外設(shè)異常時(shí)檢查其相關(guān)引腳是否被其他部分的代碼重復(fù)初始化。5.3 低功耗模式下的GPIO狀態(tài)與復(fù)用功能當(dāng)STM32進(jìn)入睡眠、停止或待機(jī)等低功耗模式時(shí)為了省電大部分外設(shè)時(shí)鐘會(huì)被關(guān)閉。這會(huì)影響復(fù)用功能外設(shè)時(shí)鐘關(guān)閉如果UART的時(shí)鐘被關(guān)閉即使GPIO配置正確UART也無法工作。在退出低功耗模式后你需要重新初始化外設(shè)至少重新使能時(shí)鐘和可能必要的配置。GPIO配置保持通常GPIO的配置包括模式、速度、復(fù)用功能選擇在低功耗模式下會(huì)保持。但為了絕對(duì)可靠特別是從待機(jī)模式最低功耗喚醒后進(jìn)行一輪外設(shè)和GPIO的重新初始化是良好的編程習(xí)慣。引腳泄漏電流如果UART連接的對(duì)方設(shè)備在MCU休眠時(shí)仍然上電而RX引腳配置為浮空輸入可能會(huì)產(chǎn)生微小的泄漏電流。在電池供電的極致低功耗場景下可以考慮在進(jìn)入休眠前將不用的UART引腳配置為模擬輸入模式功耗最低并在喚醒后恢復(fù)。5.4 使用CubeMX與HAL/LL庫的最佳實(shí)踐對(duì)于現(xiàn)代STM32開發(fā)STM32CubeMXHAL庫是提高效率、減少配置錯(cuò)誤的利器。可視化配置在Pinout視圖里你可以直接點(diǎn)擊引腳為其分配功能。CubeMX會(huì)自動(dòng)處理沖突并直觀顯示當(dāng)前引腳的功能綠色表示已分配黃色表示沖突紅色表示無效。自動(dòng)生成代碼CubeMX生成的MX_GPIO_Init()函數(shù)會(huì)包含所有GPIO和復(fù)用功能的初始化代碼包括正確的Alternate設(shè)置。對(duì)于F1系列它也會(huì)正確生成AFIO的配置代碼。注意“Lock”機(jī)制在CubeMX的“System Core”-“GPIO”設(shè)置中你可以為某個(gè)引腳配置“Lock”鎖定。一旦在代碼中調(diào)用了HAL_GPIO_LockPin函數(shù)該引腳的配置包括模式和復(fù)用功能將被寫保護(hù)直到下次復(fù)位。這可以防止程序意外修改關(guān)鍵引腳如調(diào)試口、復(fù)位引腳的配置。LL庫的精準(zhǔn)控制如果你對(duì)代碼體積和運(yùn)行效率有極致要求可以考慮使用LL庫。LL庫更接近寄存器操作你需要手動(dòng)查詢數(shù)據(jù)手冊來設(shè)置AFR寄存器。例如對(duì)于F4系列// 使用LL庫設(shè)置PA9為AF7 LL_GPIO_SetPinMode(GPIOA, LL_GPIO_PIN_9, LL_GPIO_MODE_ALTERNATE); LL_GPIO_SetAFPin_0_7(GPIOA, LL_GPIO_PIN_9, LL_GPIO_AF_7); // PA9屬于低8位使用0_7函數(shù) LL_GPIO_SetPinSpeed(GPIOA, LL_GPIO_PIN_9, LL_GPIO_SPEED_FREQ_HIGH); LL_GPIO_SetPinOutputType(GPIOA, LL_GPIO_PIN_9, LL_GPIO_OUTPUT_PUSHPULL);使用LL庫要求你對(duì)復(fù)用功能機(jī)制有更深刻的理解。6. 問題排查當(dāng)UART不工作時(shí)的系統(tǒng)性檢查清單當(dāng)你按照教程配置了UART但收不到數(shù)據(jù)也發(fā)不出數(shù)據(jù)時(shí)不要慌張。按照以下清單從上到下系統(tǒng)性排查99%的問題都能找到。電源與時(shí)鐘[ ] 芯片供電是否正常電壓是否在額定范圍[ ] 系統(tǒng)時(shí)鐘HSE/HSI是否成功起振并配置為正確的頻率UART波特率依賴系統(tǒng)時(shí)鐘[ ]是否開啟了所用GPIO端口如GPIOA的時(shí)鐘(__HAL_RCC_GPIOA_CLK_ENABLE()或RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE))[ ]是否開啟了所用UART外設(shè)如USART1的時(shí)鐘(__HAL_RCC_USART1_CLK_ENABLE()或RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE))[ ]對(duì)于STM32F1是否開啟了AFIO時(shí)鐘(RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE))GPIO配置[ ] TX引腳是否配置為復(fù)用推挽輸出GPIO_MODE_AF_PP速度是否合適通常High即可[ ] RX引腳是否配置為浮空輸入F1常用或復(fù)用功能F4常用絕對(duì)不能配置為輸出[ ]對(duì)于STM32F1是否在AFIO中正確配置了重映射或不重映射(GPIO_PinRemapConfig)[ ]對(duì)于STM32F4/F7/H7Alternate Function編號(hào)AFx是否設(shè)置正確必須與數(shù)據(jù)手冊完全一致。[ ] 物理連線是否正確TX接對(duì)方的RXRX接對(duì)方的TX。地線是否共地UART外設(shè)配置[ ] 波特率、數(shù)據(jù)位、停止位、校驗(yàn)位是否與通信對(duì)方嚴(yán)格匹配哪怕有一個(gè)不匹配通信都會(huì)失敗。常用115200-8-N-1。[ ] 是否使能了發(fā)送和接收USART_Mode_Tx | USART_Mode_Rx[ ] 如果使用了硬件流控RTS/CTS相關(guān)引腳是否配置正確大多數(shù)情況下不需要。中斷與DMA如果使用[ ] 如果使用中斷NVIC嵌套向量中斷控制器是否配置并開啟了對(duì)應(yīng)中斷通道如USART1_IRQn[ ] 中斷服務(wù)函數(shù)IRQHandler名稱是否正確是否清除了相應(yīng)的中斷標(biāo)志位[ ] 如果使用DMADMA通道、傳輸方向、內(nèi)存/外設(shè)地址、數(shù)據(jù)長度是否配置正確DMA時(shí)鐘是否開啟軟件與調(diào)試[ ] 發(fā)送函數(shù)是否被正確調(diào)用例如HAL_UART_Transmit是否返回HAL_OK發(fā)送的數(shù)據(jù)緩沖區(qū)地址和長度是否正確[ ] 接收函數(shù)是否被正確調(diào)用輪詢、中斷、DMA方式是否匹配你的代碼邏輯[ ]使用示波器或邏輯分析儀這是最直接的硬件調(diào)試手段。測量TX引腳看是否有符合波特率的波形發(fā)出。如果沒有問題出在MCU側(cè)配置錯(cuò)誤。如果有波形但對(duì)方收不到檢查電平標(biāo)準(zhǔn)STM32是3.3V TTL、線路連接、對(duì)方設(shè)備配置。[ ] 使用調(diào)試器單步執(zhí)行查看UART狀態(tài)寄存器如USART_SR的值。關(guān)注TXE發(fā)送寄存器空、TC發(fā)送完成、RXNE接收寄存器非空等標(biāo)志位的變化。沖突與干擾[ ] 該UART引腳是否被其他代碼如另一個(gè)外設(shè)初始化、一個(gè)錯(cuò)誤的GPIO操作重復(fù)配置[ ] 是否與JTAG/SWD調(diào)試引腳沖突特別是PA15 PB3 PB4。[ ] PCB布線是否過長是否有強(qiáng)干擾源對(duì)于長距離通信考慮使用RS-232或RS-485電平轉(zhuǎn)換芯片。把這個(gè)清單保存在你的筆記里下次UART再“罷工”就按這個(gè)流程一步步查基本都能快速定位問題。我自己就靠這個(gè)清單在幾分鐘內(nèi)解決過不少初級(jí)工程師折騰半天的問題。歸根結(jié)底UART復(fù)用問題是一個(gè)對(duì)細(xì)節(jié)要求極高的環(huán)節(jié)任何一個(gè)微小的疏忽都可能導(dǎo)致通信失敗。但只要你理解了其背后的原理掌握了系統(tǒng)性的配置和排查方法它就不再是攔路虎而是你手中穩(wěn)定可靠的通信工具。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产激情久久| 国产女同性恋视频| 色香综合天天影视综合 | 人人爱人人乐人人操| www.久久制服糖| 天天操夜夜操| 欧美丝袜亚洲| 图片区小说区| 日本二区不卡| 欧美夜夜狠| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 午夜欧美女人操逼| 色偷综合| 亚洲熟女中文字幕在线| 日日噜噜夜夜久久亚洲一区二区 | 精品久久久不卡一区二区| 久艹日日日| 日韩成人电影AV| 久久爽爽精品| 51一区二区三区| 亚洲中文电影| 欧美天天干| 亚洲色图欧美色图制服丝袜| 国产在线激情视频| 性色国产东北露脸精品视频| 久久国产在线一区二区| 色婷婷蜜臀av| 9国产超碰| 久久综合精品一区二区三区| 日本中文字幕不卡视频| 9热9热综合网| 国内毛片婷婷六月色| 亚洲少妇激情视频| 人人摸人人干人人拍97| 亚洲性高潮| 大香蕉啪啪啪| 97免费在线| 爱射综合| 日日夜夜精品视频| 岛国AV一区二区电影| 日少妇视频| 亚洲色图激情小说| 人妻日日干| 亚洲成人妻日韩在线| 无码日韩人妻av一| oumeizonghese,www| 最近二区三区视频大全| 亚州色阁| 人妻系列无码专区中文有码| 日韩无码一区二区三区| 嗯~啊~快点 死我视频| 久久精品国产亚洲av水密被窝| 欧美婷婷五月天| 国产精品日日摸天天碰| 天天舔九色婷婷| 亚洲国产高清福利视频| 亚洲91综合| 激情色色| 国产无吗在线播放| 亚洲AV色图一区| 日韩成人大片在线观看| 黄骗免费网站| 九久久精品| 亚洲.欧美.丝袜.中文.综合| 四虎国产精品永久地址入口| 精品天堂| 97久久国产精品| 亚洲欧洲另类| 无遮挡男女激烈动态图| 日日妻色网| 毛片电影一区二区三区| 秋霞操逼片| AV男人天堂网| 大吊色| 黄aaaaaaaaaaaaaaaaaa色网站| 精品欧美日韩在线观看| 亚州操操穴网| 99热国产| 亚洲成A∨人影院在线欢看| 亚欧美色| 日韩淫色网| 欧美刺激色黄片免费看| 人妻 丝袜美腿 中文字幕| 精品国产乱码久久久久久久| 清清草影| 91亚州日韩高清| 富女玩鸭子一级毛片| 骚货 中文字幕 av| 国产乱弄免费在线视频。| 欧美性爱五月天| 国产最新小视频在线播放下载| 日韩电影免费网站麻豆视频| 偷拍在线观看视频| 久久伊人在线五区| 好吊妞转入那个网| 国产AV超爽| 欧美成人A√在线一区二区| 色老牛| 久热69九色熟妇97| 狠狠五月天| 精品国产丝袜一区二区三区乱码| 97超碰色色| WWW美腿丝袜香蕉中文| 国产老熟女| 色婷婷色99国产综合精品| 久久久久久电影| 国产AV中文| 欧亚韩国999| 草b在线| 天天色粽合合合合合合合| 欧美视频一区二区在线| 69少妇一区二区| 嗯嗯啊啊啊好爽| 欧美,亚洲,日韩,v,天堂,手机在线观看| 精品无码一区二区| 亚洲中文字幕妇伦久久| 亚洲综合色婷婷| 亚洲av淫乱| 中文字幕一区二区日韩网| 18禁看网站一区| 人爽不卡视频| 欧美欧美啪啪视频| 日韩特一级久久| 色色色色色色色色综合| 91劲爆| 蜜桃视频精品一区二区| 精品久久久中文字幕不| 欧美另类色图片| 99热| 久久不卡一区二区| 大香蕉在线视频重口味毛片在线| 99re只有精品| 亚洲情色在线| 国产盗摄美女如厕大神作品在线观看 | 999热日韩精品| 毛片麻豆91糖心精品毛情片| 99热18这里只有精品| 激情婷婷丁香| 九九九国产精品| 精品9999| 欧美精品三级黄片| 国产精品成人久久一区二区三区| 国产精品亚洲一级av第二区| 免費黃色視頻觀看一| 国产精品爽爽v| 老子午夜伦不卡影院| 97色伦97色伦国产欧美| 亚洲暴力强奸AV| 乱伦AVxx| 欧美精品偷拍| 98久久| 国内精品嫩模A∨私拍小视频| 97天天| 一起草三级AV电影在线观看| 国产夫妻一区二区| 一牛一区二区三区久久| 丰满欧美放荡少妇在线| 欧美中文字幕日韩在线| 乱伦熟女区| 97超级久久强资源| 91成人亚洲色图| 久久91精品国产9丨久久分亭| 欧美亚洲首页| 大稥蕉免费视频这里只有精品| 精品国产Av无码久久久亚洲| 国产高清成人mv在线观看| 任你爽视频| 国产精品久久久亚洲一区| 诱惑人妻欧美一区在线播放| 免费视频观看60秒| 眼镜人妻101.com| 99欧美| 激情婷婷丁香| 欧美草草| 午夜福利1区2区3区| 国产热RE99久久6国产精品首| 麻豆AV一区二区| 天美传媒精品一区二区三区| 美女尤物人人操| 大香交伊人网| 熟女久久| 中文字幕日韩专区精品系列| 久/久精品99看9| 亚洲欧美九九九| 久久性视频| 永久免费av无码网站国产app| 久久久久久亚洲中文| 亚洲国产奇米影视久久| 91搡老女人老妇女老熟女歌词翻译| 91影库| 啊啊啊好爽快点啊啊啊嗯嗯| 日韩78m视频| 中文字幕精品探花视频| 黄污污污污| 啊啊啊啊视频免费| 97网色| 亚洲成人美女无吗| 久久AV色| 精品国产丝袜一区二区三区乱码| 午夜福利久久久噜久噜久久综合| 亚洲做性| 国产一区二区视频在线播放| 丰满人妻一区二区中文| 亚洲好看强奸乱伦| 日本精品性生活久久久| 1级午夜影院费免区| 熟妇人妻一区二区三区| 精品少妇999| 91精品国产高清久久久久久,亚洲成人| 亚洲AV资源| 国产精品操| 婷婷日韩一区二区三区中文字幕在线| 美女t无毒不卡不卡| 丁香婷婷大香蕉| 99热这里只有精品1| av日韩国产一区二区| 欧洲乱码视频| 黄色电影在线播放综合网站| 泰国AV在线观看| 国产熟女无套内射| 欧美亚性天堂| 91在线美女| 91人妻人人澡人人爽人人精品| 日韩av在线播放不卡| 欧美在线中M| 亚洲精品中文字幕一区在线视频| 欧美亚洲今日在线| 精品一区二区三区最新| 九九综合久久中文字幕| 青青草中出视频| 5月婷婷6月六月丁香| 超碰97久| 野狼激情网| 精品九九| 亚洲的天堂网| 狠狠狠狠狠| 夜夜精品视频| 好好的日:com久久九九| 深爱激情五月天| 在线亚洲欧美| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 成人精品视频一区二区| 天天躁日日躁成人字幕aⅴ| 97人人爱人人做人人乐| 美国aaaaa一级黄片| 亚洲清纯唯美| 欧美亚洲日韩人妻在线观看| 男女猛烈无遮掩视频免费软件| 亚洲一区中文精品| 香蕉色网| 91精品国产综合久久久蜜臀| 欧美日韩啪啪电影| 狠狠躁伊人中文字幕| 久久人妻视频网| 九九九九九九九九九国产精品 | 日本熟女不卡视频| 试看60秒| 欧洲综合视频| 国产成人欧美一区二区三区的国产| 亚洲综合伊人| 性欧美体内射精| 久久九九国产精品| 强被迫伦姧在线观看无码网站| 久久久久9| 欧洲无码一区二区| 色香蕉影院| 欧美v亚洲v综合v国产v妖精| 欧美熟妇色| 97硬碰| 色综合婷婷| 日韩一级性爱无码| 亚洲女人91| 夜夜狼人妻| 亚洲无线码一区国产欧美国| 国产精品亚洲一级av第二区| 中文字幕av亚洲精品| 免看60秒涩涩视频| 加勒比日本在线| 天天爽夜夜操| 欧美日产国产在线成人第一区| 美欧色综合| 日日骚精品视频| 少妇色欲综合网2| 国产农村妇女精品1区二区| 亚洲日韩精品在线播放| 青娱乐久久艹| 日本性爱欧美性爱| 98人妻精品一区二区色欲| 欧美啪啪啪91| 色色青青久久| 亚洲色图第一页| 国产精品久久久久999| 天堂射| 亚洲综合夜色| 99在线精品观看视频中文| 激情黄色五月天| 成人久久精品| 日本新免费二区三区| 好爽,再快点啊哈嗯嗯嗯嗯| 天堂岛av| 骚逼高潮久久精品| 91综合在线| 国内毛片免费h片在线| WWW啪啪的com| 日韩人成网站在线播放| ..日韩av毛片精品久久久| 欧美大香蕉久| 日韩亚洲精品一区二区| 欧美亚洲第一页| 国产成人超碰在线| 成人一级性爱| 天堂中文日本在线观看| 日本色色色视频| 黑丝自慰喷水网站| 久久综合婷婷| 99re视频在线播放青草| 久久线上视频免费看| 日韩大香蕉AV影片| 免费视频观看60秒| 色九久| 精品国产乱码久久久久久网站入口| 亚洲,欧美,综合网| 91爱剪切久久| 26uuu成人影片| 少妇无码av专区线| 美女国产一区二区久久| 国产亚州精品美女久久久免费| 日韩精品1区2区中文字幕| ..日韩av毛片精品久久久| 五月天婷精品激情| 夜色五月天| 亚洲性少妇| 欧美成人精品欧美一级乱黄一区二…| 日本爽爽爽爽爽爽免费视频| 欧美性爱系列| 中国小夫妻勾搭露脸淫荡对白| 国产av色网| 97超碰色色| 日韩欧美一级特黄大片| 中文字幕在线播放2中文字幕在线观看2 | 超碰97精品| 顶级丝袜熟女一区二区三区| 91neishe| 色99久草| 美国一区二区三区视频| 久久超碰久| 久久综合久色欧美综合狠狠| 亚洲第一页欧美| 啊啊啊 在线| 91丨九色丨国产丨人妻在线 | 久久伊人亚洲AV无码网站| 青青草丝袜在线视频| 婷婷色香| 97视频免费播放| 亚洲系列第一页| 久久9亚洲| 外国免费性情大片| 曰韩成人免费视频| 国产精品高潮久久AV| 99久久99九九99九九九| 人人操人人大香蕉| 久久伦理视频久久大香蕉视频| 亚洲精品少妇| 337p大胆噜噜噜噜噜91Av| 99re99视频在线免费观看| 欧美日韩中文视频播放| 五月天久久久| 欧美亚州综合网图片| 国产性爱在线视频一区二区| 伊人97色天使| 家庭乱伦麻豆| 精品国产乱码久久久久久久久1| 97超碰色中文字幕| 成人午夜小视频手机在线看| 青娱乐手机日韩在线视频| 亚洲无992tv| 日韩欧美视频青青| 亚洲视频精选| 99免费在线视频| 99热在线只有精品| 久久久久9999| 95人妻爽爽人人做人人澡| 国产AB视频| 亚洲古典另类欧美在线| 一二三卡欧美日韩人妻免费精品| 高清成年美女黄网站免费大全 | 日本一本一区二区三区四区五区欧美日韩中文字幕 | 丰满少妇一区二区三区专区| 久久老女人| 欧美美女自慰一区二区三区| 日韩啊V| 污到发麻的视频 国产| 亚洲国产成人精品女人久久久| 色色亚洲| 欧美一区二区男人天堂| 啊啊啊啊啊操我视频| 家庭乱伦麻豆| 国产精品视频播放| 婷婷影院入口| 久久精品区| 91久精品| 狠狠操官网| 欧美 亚洲 另类 综合| 乳欲人妻办公室奶水| 97超碰免费生活| 新版天堂中文资源8在线| 欧美综合亚洲| 国产日韩精品一区二区三区| 日本免费人成视频播放120秒| 天堂资源站| 亚洲欧美国产成人综合不卡| 91九色丨风韵犹存| 天天摸天天舔天天操| 尤物一级在线免费观看| 视频不卡中文字幕| 91 丝袜在线观看| 青青草公开在线免费不卡视频| 91校园春色长篇| 国产精品又黄又猛又粗| 激情文学小说一区二区| 香蕉99秘 精品一区丁香| 国产精品久久天天干| 97视频新免费| 亚洲美乱| 日韩国产成人自拍视频| …亚洲黄色厕厕女女在线播…| 二对二中文字幕。| 99热这里只有精品99| 无码动漫av中文字幕| 青青草日韩免费观看高清在线| www激情| 国产精品爱欲| 国产一区在线播放| 久久久九九| 少妇蜜汁| 超碰91在线| 一级二级三级黑人无码| 色九久| 成人欧美日超碰| 日韩另类色图| 亚洲一区中文字幕一区| 特级特黄一级毛片免费| 69视频入口| 色综合1991| 蜜桃精久三区| 日本 成 人 小说 电影 一区二区| 亚洲图片日本AⅤ欧美在线| 色色九区| 青青草影视蜜久久| 欧美熟女丝袜| 麻豆影音天美视频| 五月丁香六月激情| 日本在线播放不卡一区| 日日夜夜草草草| 六月丁香婷| 日韩欧美俄罗斯A片| 日本孕妇一区二区视频操逼免费看 | 日韩av女优在线免费一区| 国产成人精品日本视频| 蜜乳AV.COM| 亚洲无992tv| 四虎影视欧美| 在线二区不卡| 黄页网站成人免费| 韩国毛片一区二区三区| 综合91网| 熟女精品一区二区在线观看| 激情文学 国产一二三aV| 丰满人妻一区二区三区四| 国内三级自拍小视频在线观看| 午夜AV人气不卡| 久热影视| 国产视频一区二区三区在线免费观看| 黄色免费网| 人人么人人操| 97综合| 78久久| 偷拍综合网| 欧美AB在线| 色臀av| 国产97在线视频| 亚洲欧美色图片| 91日韩| 欧美一区二区男人天堂| 老熟女乱伦片| 国产亚洲精品无码三区| 亚洲无无码αⅴ每日更新| 欧美性爱18观看| 岛国在线免费视频| 天天做日日做天天欢。| 亚洲人妻色图| 欧美大的香蕉有线电视视频| 国产精品天堂| 1000部熟女视频在线观看| 韩日色费| 高清成年美女黄网站免费大全| 亚洲av影音先锋| 不卡免费av在线播放| 五月丁香色色网| 一二三四日本视频高清| 欧美日韩淫加| 日日日大屁股骚女人精品| 精品人妻视频一区二区在线播放 | 在线中文AV| 久久久96精品| 97超碰中文在线| 日本精品中文字幕视频| 一,爱啪啪,在线免费视频| 激情综合婷婷| 中文字幕在在线观看网站| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 啊啊啊不要好疼视频| 天天日日日射| 精久久久| 亚洲天堂在线怕怕视频| 欧美视频一区二区在线| 大香蕉碰碰| 欧美中字二区| 亚洲欧美97√| 欧美一级特黄淫片在线观看| 色丁香五月婷婷| 东京成人一区| 精品一区二区三区18| 真实高潮91| 一区二区视频你懂的| 97欧美日韩精品| 欧美日韩黄片精品在线| 色色无码| 任你干在线视频| 97视频网站| a级理论午夜日本| 亚洲AO在线| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 国产女上位好爽在线| 物业黑人 AV一区| 999综合网| 天天操天天舔| www.AV有限公司一区| 一区二区视频在看| 户外裸露刺激视频第一区| 91老司机在线视频免费观看| 久久久内射良家| 玖玖爱在线视频免费观看| 国产亚洲精品自在线亚洲情侣| 亚洲国产综合久久天堂| 精人妻一区二区三区| 国产亚洲精品无码三区| 亚洲情色婷婷五月天| 精品9999| 日本东京热加勒比久久| 欧美超碰96| 亚洲国产精品无石码久久| 日韩欧美俄罗斯A片| 久久精9| 亚洲精品一区二区日本| 亚洲丝袜色| 欧美丝袜91| 无色无码| 午夜精品人妻二区三区| 国产亚洲精品美女久久久久久2021| 久久色激情一区二区三区| 操熟女91| 婷婷精品| 超碰色图| 成人 日韩欧美一区| 亚洲日韩资源| 亚洲欧洲国产综合av| 色偷偷超碰亚洲| 一本大道不卡一二三区| 亚熟hd视频在线| 成全在线观看免费观看| 日本精品性生活久久久| www.yeyecao| 国产精品suv一区| 日韩免费三级黄片电影| 欧美色图偷拍另类| 成人无码在线超碰网| 久草资源在线视频官方总站日韩丝袜美腿 | 宅男91视频在线播放| 欧美色人| 97综合国产精品高潮久久| 中英熟女操女| 日本999精品视频| 综合激情二| 久久神马影院| 欧美日韩性爱无码| 加勒比无码毛片| 大香蕉人妻| 大香蕉中文在线| 欧美制服另类丝袜| 尹人免费观看视频在线| 青青草色插素人| 天天做日日爱夜夜爽| 中文字幕av一区二区三区人妻少妇| 思思在线免费视频| 久久久青青草| 欧美激情亚洲色图| 熟女这里只有精品6| 日韩精品大香蕉伊人在线| 女同性恋久久| 丁香七月婷婷| 精品9区| 十八禁啪啦拍视频无遮挡| 色逼综合| 伊人伊人LD| 婷婷深爱五月| 中文字幕国产在线天堂| 欧美成人一区二区| 五月天婷婷基地| aaa亚无码专区| 加勒比五月天| 国产女人高潮视频| 一区二区三区黄色片a| 熟妇一区,二区,三区。| 97超碰美国| 亚洲成人日韩小说| 91人人| 91嫩草在线| 一区二区三区精品黑丝白丝酒店对鸡| 懂色中文一区二区三区| 少妇高潮九九九九九九九| 丰满少妇人妻久久久久久| 午夜福利在线合集| 在线观看中文字幕| 男人天堂久久精品不卡| 亚洲一区二区三区麻豆传媒| 日韩欧美字幕亚洲一区二区 | 久久久久女教师免费一区| 自拍丝袜美腿人妻| 色五月综合网| 久操网无码在线| 久久男人的天堂| 超碰碰小说97| 91欧美美女日韩国产婷婷| 中文字幕成人| 免费簧片在线观看| 91视频精品| 亚洲欧美综合图片| 天美传媒av在线| 色哟哟-国产专区| 久热无码| 睡产熟女乱伦| 精品人妻一区二区视频| 中文字幕久久婷婷丁香五月天 | 天天摸夜夜操视频| 日韩99999色| 婷婷五月天激情网| 日韩三级天堂在线观看| 日韩高清黄片| 日韩一级欧美一级国产一级台湾| 78精品在线| 天天干1区2区在线| 欧美少妇高潮久久91| 亚洲综合码| 性爱动态120秒| 凹凸视频特色日本特黄| 国产精品无码在线| 日本成人A片免费看| 无遮挡又黄又刺激的视频| 97超碰美女| 91综合网站| 免费啪啪一级视频| 午夜福利无毒不卡| 你草精品在线视频| 91人精品妻入口| 蜜奶av| 天天日天天干天天操| 成人 日韩欧美一区| 亚洲AV色图| 天天日天天色| 国产精品噜噜噜日日日| 六月天婷婷| 国产97视频| 另类图片五月| 人人操人人摸人人骑| 久久9精品视频| 成年人黄色视频免费| 天天综合网91入口| 亚洲精品国产熟女| 亚洲超碰综合网| 久久‘黄片视频| 欧美日综合| 亚洲性爱高潮影院| 国产强奸无码乱伦| 国产综合久久久鬼色| 日韩精品国产一区二区| 最新9久久久9免费视频| 国产成人久久久精品免费AV| 久操频道免费在线呗看| 欧美性猛交美女自慰91| 91国产操逼视频| 中文字幕久久精品一区| 1禁看欧美黄片免费看| 亚洲人精品久久久| 吻戏激情性巴克| 色网站导航大全| 日韩丝袜高跟制服在线观看| 亚洲女毛多水多21P| 青草一区二区| AV高清一区| 免费作爱一级视频| 中文字幕乱码在线观看| 宅男午夜在线视频| 国产A v无码专区| 亚洲,欧美,综合网| 久久精品视频久久久| 欧美黄色大片在线观看| 热热色青青草| 亚洲AV乱码专区国产噜噜亚洲| 亚洲欧美日韩免费电影| 欧美性高潮| 嗯嗯嗯啊啊啊操的我好爽| 亚洲av影音先锋| 亚洲美女精品九九视频| 天天舔九色婷婷| JULIA一区二区三区在线播放| 加勒比海色香蕉婷婷| 91精品国久久久久久无码| 国产成人久久久精品免费AV| 91久久久亚洲| 九九热午夜欧亚国产视频| 欧美性天天影视| 欧美成人AⅤ大片在线观看| 极品色综合| 亚洲91网站| 亚洲色吧网| 国产麻豆福利av在线播放| 青青青青操国内视频在线| 日本天天干天天搞一区| 蜜臀少妇一区二区| 色成人Www精品永久观看| 久久人妻| 精品人妻一区二区蜜桃视频| 另类亚洲图色| 色色五月丁香| 影音先锋视频在线| 欧美激情一区| 蜜臀久久99精品久久久久电影| 青青草伊人久久| 中文字幕在线观看丝袜| 欧美日韩国产中文精品字幕自在自线| 亚洲精品97| 欧美第五页| 裸体美女久久久| 日韩美女久久一区二区三区| 午夜天堂啪啪| 伊人五月天激情| A片大香蕉在线| 高清无码人妻久久久一区二区三区aⅴ| 欧洲小说色图视频另类| 亚洲。日韩。欧美| 国产成人网| 日本操BAV| 午夜福利av电影在线| 97操| 中文字幕三四五区| 天堂av最新电影网| 欧美 亚洲 综合 制服 另类| 97玖玖超碰| 亚洲精品久久久久久久久豆丁网| 色狠狠色| 国产一区二区三区影片| 国产精品色片一区二区| 一级日本牲交大片好爽在线看| 97色碰| 亚洲天天更新| 啪啪啪综合| 东京男人天堂| 久久久久九九九九九| 日韩精品电影| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 丁香五月天堂| 久久久成人国产精品无码| 国产人妖视频一区在线观看| 中文字幕日韩电影人妻| 极品销魂美女一区二区| 中日韩免费看男女操逼大全| 欧美色人| 色色毛片| 中文AV制服乱伦| 日韩免费中文字幕视频| 国产粉嫩蜜臀av一区二区三区| 国产精品白丝| 欧美色综合| 国产成人亚洲精品无| 91啪啪| 欧美日韩中文视频播放| 九九碰九九爱97超| 午夜精品久久久| 亚洲综合第一页| 黄片www视频免费| 久9re热视频这里只有精品| 性无码专区2020| 麻豆视频国产一区二区| 精品人妻1区| 岛国网址国产| 午夜理论片在线观看免费| 亚洲超碰AV| 欧美在线播放aaaa| 99久热| 久久婷婷国产一区二区色| 精品网站9999| 久久夜嗨| 亚洲美女黄色| 国产一二三福利视频网| 91少妇人妻| 日韩欧美性爱电影在线观看| 日韩精品在线放| 国产探花精品在线| 中文字幕在线高清男人的天堂| 97色在线| 刺激性视频黄页| 亚洲色悠悠久久88| 欧美亚洲韩国视频十五区| 亚洲丨在线| 日韩一级二级三级免费看完整版| 亚洲欧美色图小说| 亞洲久久直播| 五月天婷婷综合网| 黑人中出21连凳花野真衣| 亚州综合AⅤ| 老司机福利社视频在线观看| 超碰97丝袜| 国产黄色在线播放观看| 亚洲蜜桃V妇女| 亚州情色j区| 性爱欧美五月| 国产91美女视频| 91久久九九精品国产综合| α√在线| 91色碰| 日日噜噜夜夜久久亚洲一区二区 | 欧美亚洲手机在线| AV麻豆免费一区| 特级丰满少妇一级AAAA爱毛片| 天天爽天天爽| 国产熟妇一区二区| 亚洲欧美综合图片| 性爱网站一区二区| 六月婷婷综合| 熟女天天干| 一卡二卡三卡| 亚洲激情在线观看一区| 岛国精品视频在线观看| 超碰性爱97| 夜夜嗨一区| 欧美偷拍区| 久久99热这里只频精品6学生| 美女淫穴| 久久久久久久| 日本色色色色色视频| 综合日本女人伊人| 久久久91福利姬| 国产91影院| 99热99色| 白丝在线一区| 青娱乐休闲视频在线观看| 特级毛片特黄久久免费看| 97爱免费插| 天天爽入口| 国产一区二区三区白丝| 久久午夜伦| 天天爱综合网| 热无码中文亚洲H一道本一区二区| 色一情一乱一乱一区91Av| 传媒免费一区二区三区| 蜜臀久久99精品久久久| 久久婷婷综合国际产色怕| 综合 青草 伊久久 影院 综合 | 国产在线激情视频| 人妻碰碰碰碰碰碰| 高精欧美色| 26uuu国产成人综合| 久久亚州高清| 久操精品| 五月天开心网| 毛片99-全集电影手机免费观看完整-B029AV| 99久久亚洲精品无码毛片潘甜甜 | 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照 | 男人的天堂一区三区| 密臀AV在线| 夜草网站| 亚洲情色第一页| 四虎在线视频| 女人高潮大叫一级毛片| 自拍亚洲综合| 岛国色情视频在线观看| 久久一二三级一一一| 蜜臀久久99精品久久久久久-DVD原版全| 一区二区三区视频在线观看免费| 男人的天堂在线| 超清福利精品视频在线| 国产精品国产自产拍高清AV| 亚洲全色网| 日韩人妻精品久久久久| 日本免费中文一区二区三区四区| 欧美偷偷网| 特级毛片特黄久久免费看| 精品一区二区麻豆| 成人无遮挡毛片免费看| 大香蕉欧美伊| 在线人成亚洲视频免费观看| 久久国产视频专区一二三| 操逼操2| 91丨国产丨白浆| 欧美天天| 污到发麻的视频 国产| 白嫩少妇| 日韩一级二级在线| 亚洲精品国语在线播放| 国产白领连续中出在线观看| 成人免费性爱视视| 日本三级小说中文字幕| 91免费看一区二区三区| 久草资源在线视频官方总站日韩丝袜美腿 | 日本99热| 91成人无码| 欧美性爱97超碰| 尤物av网站免费在线播放| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 91欧美性| 欧美国产伊人久久久久| 伊人嫩草| 婷婷大香蕉| 天天色欧美| 中文一区二区婷婷视频| 強姦亂倫a| 二三四区精品| 无码日韩网站| 国产精品久久蜜乳av| 久超碰在| 久久草草亚洲蜜桃臀| 91爰爱欧美| 欧美黄片欧美黄片xxx| 亚洲 欧美 日本 国内 首页| 黑丝内射一区二区三区| 欧美日韩在线视频网站| 美日韩在线不卡人妻| 熟女字幕| 成人性交免费视频| 伊人国产av| 国产理论视频在线播放| 久操免费视频| 91视频观看网站| 国产精品麻豆视频网站| 亚洲中文字幕av | 亚洲阿v天堂在线| 农村妇女精品一区二区| 天天色综合天天操| 中文字幕三四区| 97一本大道亚洲一区| 亚洲图片偷拍视频区| 亚洲综合999| 美腿丝袜高跟网免费视频免费视频| 国语国产操逼伊人AV网| 91精品国产91熟女| 久久精品72| 中文字幕一区日韩精| 久久精品人妻一区| 加勒比五月天| 丝袜美腿欧美| 啪啪资源网| 日韩射精| www. 男人天堂成人在线| 天天做天天爱天天高潮| 久综合国内精品自在自线| 久热这里| 青青操在线亚洲视频观看欧美在线 | 日韩av无码网站| 精品无码产区一区二| 黄色网址久久精品欧美喷水| 超碰国产精品久| 久久黄人人爽视频| 97在线青| www.欧精品| 五月天婷精品激情| 亚洲欧洲av影音| 超碰人人干天天射| 极品粉嫩少妇视频| 国产精品交换一区二区| 奇米狠999| 国产一级高清免费观看| 久久精品无码不卡| 草伊人高潮喷水超碰| 性爱视频久久| 亚洲国产精品成人无码久久久| 精品国产乱码久久| 久久中文字幕人妻熟av女蜜柚| 久久超碰、| 丁香五月综合| 亚洲二区精品在线观看| 青娱乐老司机视频| 殴美性天天| 欧美一区二区三熟女剧情| 久插综合| 欧美性猛交美女自慰91| 国产情侣自拍在线播放| 日韩中文字幕国产| 97干97色| 怡春院久久| 青青青草伊人精品| 亚洲吊色| 国产午夜福利视频在线| 性色一线| 婷婷色婷婷| 欧美成va视频网站| 男人a天堂手机在线版| 一级人妻性爱视频| 色香AV| 欧美亚洲手机在线| 亚洲 欧美 日本 国内 首页| 青青草玖玖爱| 麻豆国产第一| 国产精品乱码久久久久久久久久久久| 99热在线观看| 五月天久久久| 抽插无码高清一区| 成年人一级黄色毛片大全在线观看| 欧美爱三级日韩久久| 久久97| 一区二区三| 骚女天天综合网| 亚洲人综合19| 1024精品在线| 偷拍导航视频网站| 综合熟妇一区二区三区| 青青草丝袜在线视频| 操逼操网| 丰满少妇乱子伦精品无| 久草网站免费在线观看| 久久黄色视频一区二区三区 | 欧美精品成人在线播放| ji熟女.com| 国产乱伦亚洲| 午夜一级免费毛片| 嗯啊视频免费在线观看| 国产美女裸体秘 永久无遮挡| 人人看人人插| 日韩三A大片在线观看 | 亚洲午夜免费狠狠干| julia高潮后不停追击中出| 色色国产| 九九热精品免费视频| 亚洲 中文 女同| 欧洲中文字幕| 亚州再线| 亚码人妻| 国产麻豆一区二三区| 国产日韩中文字幕欧美| 久草色在线观看| 婷婷国产精品一区二区| 97免费视频在线| 国产精品免费久久久久久久久久 | 男女猛烈无遮掩视频免费软件| 亚洲无码超碰免费| 无码高清国产AV| 在线看片国产精品每日更新| 无码国产精品久久久久| 欧美黄色片AAAAA| 久久香蕉网| 亚洲综合春色| 男女激情中文字幕| 亚洲drav色图| 午夜操一视频一区| 国产精品久久| 美女视频尤物网在线看| 加勒比在线视频一区二区三区| 91干熟女| 欧美九九爱| 青青草大香蕉在线视频| 久久久精品中文字幕麻豆| 九九九九九九综合| 亚洲色人| 女同女同恋久久级三级| 日本性爱少妇| 欧美综合站| 久偷拍| 美女天天干| 天天干人人看综合| 久久社区一区二区三区| 日韩啪啪网| 97一区二区蜜臀| 999熟女精品| 亚洲天堂资源网| 国内偷自视频区视频综合| 久久久久久AⅤ无码免费肉站| 夜夜一区二区| 久久婷婷欧美| 三四中文字幕| 超碰无码加勒比| 高清在线偷拍自拍视频| 久久综合18p| 亚洲AV在线资源| 综合久久97| 丁香五月综合| 天天肏美女| 久久噜| 久久久久亚洲Av无码专区老牛影视 | 久久久国产护士丝袜美腿一| 色婷婷色99国产综合精品| 久久久一区二区三区麻豆| 一级一性爱免费视频| 国产精品久久久久亚洲av| 色啪网| 国产天天看| 欧美人妻制服| www.99中文字幕| 亚洲影视综合网| 久久久熟女一区| 青娱乐二区免费| 人人操人人狠狠操| 香港日本韩国人妇99www.wccm20| 97超碰伊人| av强奸乱轮| 大香蕉操久久| 伊人9| 丁香六月激情| 国产九九久久久精品| 欧美性少妇| 欧美日日操| 日本天天人人狠狠在线日美女 | 大香蕉久久| 加勒比五月天| 亚洲最新Av| 天天拍天天操| 91美女视频电影| 狠狠操官网| 日本不卡卡一区| 精品人妻一区二区三区不卡断 | 亚洲中文字幕久久无码精品| 日本人妻中文字幕精品| 嗯嗯嗯好爽| 黄页网站成人免费| 精品一区二区成人| 亚州再线| 乱伦强奸区日韩| 久久99热这里只频精品6学生| 青青操视频在线| 天天谢天天干| 久久婷婷在线观看视频| 男人的天堂久久久| 日本日逼视频网| 日韩中文字幕精品一二三事国产精品| 日本人妻伦在线中文字幕| 欧美淫穴| 玖玖久久久| 九九RE视频在线精品| 公司1区2区3区精产精| 日韩欧美成人性爱在线| 成人综合视频久久| 亚洲啪啪综合?v一区综合精品区| 99热网站| 蜜臀99久久国产| 国产精品成人在线| 欧洲站一级二级三级h| 操逼片中文| 人妻五十路在线| 国产成人手机视频激情| av天天在线| 影音先锋视频在线|