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

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
返回資訊列表
热的中文 热的有码 热的国产| 九月婷婷久久| 可以免费看黄片的视频| 色97干| 日韩成人精品| 久色网| 九九英色视频| 色激情综合网站| 人妻少妇被猛烈进入中| 2001天天操| 91影视亚洲| 中文字幕99999| 日韩性爱1级片视频| 野狼激情网| 国产一区二区精品在线视频| 日韩黄片影院| 男人网站婷婷| 欧美五十路熟| 91天天日| 12一15性XXXX粉嫩国产| 色哟哟的毛片| 蜜臀久久99精品久久久久久| 久久精品99| 国产乱伦视频污| 99精品欧美一区二区三区桃色| 精品亚洲国产成人AV制服丝袜| 特级大荫道BBwBBwBBW| 91日日夜夜| 在线观看岛国有码| 亚洲天天精品| 中文字幕老熟妇黄色视频| 国产91丝袜在线播放蜜月| 国产精品懂色tv影视免费观看| 精彩视频日韩| 日韩福利综合一区| 欧美青青视频| 欧美性爱五月天| 精人妻无码一区二区三区伊人直播| 人妻一区视频| 自拍视频大全亚洲专媒视频/一区二区三区| 精品无人区麻豆乱码1区2区图片 | 亚州中文字幕超碰97| 91无遮挡| 蜜桃视频一区二区三区 | 玖草在线视频| 天天综合网~91综合网| 伊人亚洲国产一成人久久精品,久久| 色老大| 亚洲中文字母在线播放| 97伦乱| 五月丁香| 精品一啪| 99999久久精| 99婷婷| av毛片aaaaa免费看| 大香蕉99热| 无码外流操逼视频| 欧美精品宗合| Aa东京男人的天堂| AV天天在线观看| 欧美精品日韩久久久九| 国产成人超碰在线| 日韩精品人妻中文字幕久久久| 国产精品白丝在线播放| 在线看污网站| 九一综合精品视品av| 日本人妻中文字幕| 一二三四视频中文字幕在线看| 99啪啪视频| 午夜欧美女人操逼| 91bbbbbb| 午夜福利在线视频1000| 亚洲最大91网| 天天综合欧美综合| 久久午夜伦| 国产精品久久久无码AV网站| 4虎在线观看| 97青青操视频| 六月丁香网| 一区二区三区视频在线观看免费| 草草草视频在线免费看| 97在线播放| 欧洲亚洲人妻无码中字久久三区四区| 欧美午夜精品久久久久久3D| 蜜乳av一区二区| 青青草大香蕉视频| 亚洲操操操无码| 天天色悠悠激情| 视频分类 国内精品| 久久丁香久草综合网| 无码78| 超碰九区| 久久青青草原免费视频| 无码高清专| 色悠久| 操久久久久| 久久97视频| 中文字幕诱惑制服人妻丝袜美丝袜美 | 日本不卡二区| 性一级黄色录像片网站导航| 视频在线97| 欧美色图亚洲色图成人在在线| 丰满岳乱妇一区二区三区| 欧美欧美啪啪视频| 麻豆国产97在线| 久操97| 亚洲超碰97| 亚洲 欧美 色图| 操久久久久| 亚洲综合有码| 天天操妹子| 久久内射| 国产激情视频一区区三区| 国产91精品在线免费| 91天天综合日韩欧美| 韩日欧亚a级| 久操视频这里只有精品| 美女诱惑一区| 日韩精品在线放| 一区二区三区黄色片a| 日韩免费看在线黄色片| 国产三级多多影院2022国产AA一级毛片无码 | 精品制服美女中文一区二区三区| 91痴汉| 欧美性爱超碰97| 欧洲亚洲国产综合在线| 色欲蜜臀AV| 国产美女高潮叫床视频| 中文字幕啊啊啊在线观看视频| 亚洲色图大香| 中国熟女网站| baiduhicn.com。| 素人无码中文字幕| 日韩情色一区二区| 久久久久久亚洲中文| 国产浮力影院第1页| 99这里只有精品| 精品精品精品| 1204av韩国| 国产AV天美传媒一区二区三区 | 免费一级精品啪啪视频| 亚欧成人综合影院| 久9热| 久久超碰大香蕉| 欧美婷婷久久| 久久久天堂| 搡老女人911熟妇老熟女| www.91逼逼.com| 天天日夜夜爽| 中文字幕在线第二页| 美女9118禁| 岛国在线免费视频| 婷婷情色综合网| 加勒比五月天| 黑人免费福利视频| 久久精品性| 久久久精品国产亚洲伊人| 好看的91视频| 国产精品国产精品国产| 色青青久久影视| 国产超碰在线一区| 欧美成人精品欧美一级乱黄一区二…| 自怕偷自怕亚洲精品| 婷婷激情综合网| 国产AV人人 夜夜人人澡| 99re这里只有| 国产三级日产三级韩国三级| 亚洲视频小说| 大学生口爆吞精| 综合网欧美在线| 少妇蹲下买菜露大唇0| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 91高跟美女在线播放| 18精品一二区| 强奸乱伦av电影| 亚洲综合888| 加勒比性爱成人在线| 蜜臀久久99精品久久久电影| 涩五月婷婷| 丝袜喷水在线| 亚洲素人网| 欧美亚洲韩国视频十五区| 亚洲资源站| 逼逼逼逼操操操操操操操操操午夜剧场| 六六久久日韩不卡| 成人怡红院| 少妇高潮对白在线观看| 熟妇人妻一区二区三在线| 日韩一二三区| 91 在线亚洲| 精品国产乱子伦一区二区三区,精品一| 日本不卡高清视频| 亚洲图片 激情小说| 在线岛| 加勒比综合九九99视频在线播放| 中日亚韩免费视频| 制服诱惑亚洲一区二区三区在线观看| 18禁无码永久免费无限制| 九九玖玖精品| 国产又黄又爽又刺激久久久久久| 天天综合香 ld视频| 亚洲中文字幕在线视频一区二区| 亚洲s在线观看| 老熟女综合| 亚洲天堂性爱| 亚洲日本激情| 久久综合久色欧美综合狠狠| 日本在线不卡v二区| 老鸭窝成人| 欧美在线视频99| 久艹免费| 日韩少妇丰满亚洲| 欧美日韩不卡a片| 欧美青青视频| 最新日韩黄片| 俞拍久久国应视频| 99精品丰满人妻无| 欧美,日韩综合久久| 中文字幕AV片| 婷婷五月天av| 精品国产一区探花在线观看| 亚洲极品| 97人肏| 熟女探花啪啪| 蜜臀一二三区| 亚洲欧美日韩有码| 日韩 欧美 视频 在线 一区| 精品人妻一区二区蜜桃视频| 欧美精品第3页| 狠狠爱夜夜| 欧美熟爽综合| 九九热视频在线观看| 九九九九精品| 欧美在线色| 香蕉久久国产AV一区二区| 少妇熟女一区二区三区| 日韩av色图综合| 国产综合网站在线播放| 亚洲图片欧美色| 超硑97精品| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美亚洲丝袜人妻制服中文99| 久久9久9久99久9久9| 久久东京伊人一本到鬼色| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 无遮挡又黄又刺激的视频| 大香蕉十区| 日本欧美亚洲高清在线看| 97超碰超碰| 欧美日韩亚洲五月天婷婷| 涩五月婷婷| 久久黄色视频一区二区三区| 九九九九精| 大香蕉青青9| 日韩美脚一区二区网站| 午夜婷婷| 欧美激情中文字幕另类小说| 日韩福利综合一区| 亚州综合| 国产精品不卡少妇白| 久久久久9| 91蜜臀在线久久久久| 人人爱人人操人人性| 国产成人欧美精品在线| 高精欧美色| 欧美在线色| 一区=区三区视频| 女人午夜视频777| 最近2018中文字幕在线高清第一页| 久草色在线观看| 老司机免费视频在线91| 婷婷五月天无码| 日本天堂网| 人妻久久久久久| 午夜精品探花| 亚洲第一狼人丝袜美女另类| 欧美在线永久天堂| 丰满人妻aA一区二区三区| 人妻第一页| 蜜臀av网址| 99色骚| 九九九久久久久| 99热色这里只有精品| 久热9| 欧美黄色大香蕉一区二区| 国产精品激情久久久久久久| 波多野结衣被操50分钟免费视频| 久久久久人妻二区精品叶可怜| 秋霞 色色| 最新亚洲黄色免费电影 | 蜜桃午夜视频一区二区| 久久精品国产久精国产| 国产精品97超碰| 亚州九九九精品视频| 伦在线97| 狠狠做深爱婷婷久久二区| 干B| 91网站18在线| 嫩草 我啊~嗯~在线| 一区二区不卡免费| 91丝袜人妻| 亚洲激情在线| 美日韩男女操屄视频| 黄人人操人人操| 成人性爱av| 国产精品999zyz| 熟女字幕| 久久久久久亚洲精品不卡人乳| 天天日天天操心| 四虎永久在线精品免费网址| 丁香五月色| 色五月婷婷网| 蜜臀AV成人精品蜜臀AV久久| 天天综合站| 久久精品国产亚洲粉嫩| 插入逼91| 亚洲欧综合另类无码一区| 成人国产精品三级A片| 久久久久久人妻| 四虎影视在线| 呦女网站| 麻豆久久精品亚洲精品88| 国产极品粉嫩馒头一线天av| 中文字幕免费看大片| 婷婷久久综合久| 97色色色综合网站| 亚洲中文丝袜美腿诱惑字幕| 国产精品精品系列在线观看| 久久久无码av精| 六月天婷婷| 午夜天堂网| 欧美偷偷网| AV中亚| 亚洲最大成人a毛毛片| 成人性爱电影网| 看看小穴| 九九九九热只有精品| 久久 精品| 日韩性爱免费视频在线网站| 久久久久13| 91无码人妻| 高清孕妇孕交 交| 亚洲男人久久综合天堂| 中文字幕在线观看丝袜| av东京热男人的天堂| 欧美性夜| 欧美色性爱| 老鸭窝亚洲毛片| 少妇人妻激情四射| 日韩精品资源专区二区| 日韩乱码Av| 欧美草草| 人人操人人搞人人草| AV色天香在线| 东京热,男人的天堂| 国产精品久久久久无码Av网曝门| 五月婷在线| 人妻熟女一区二区| 日韩高清黄片| 91 国产丝袜在线放观看 | 99热 按摩 日韩| 精品九区| 91精品大奶人妻| 亚洲另类久操网| 97亚洲色图| 一区二区三区免费岛国片| 丝袜狠狠草尤物人妻av91| 亚洲精品乱码久久久久久蜜桃麻豆 | 色踪合AV| 亚洲导航深夜福利| av72网| 国产日韩欧美中文在线播放| 69综合网| 国产乱伦性爱区| 亚洲熟妇图片| 精品无码一区二区三区| 蜜桃在线观看一区二区三区| 超碰78| a网站免费观看| 超碰97日韩| 成人午夜无码视频| 快播久久人人aV| 在线国产一区二区av| 亚洲 综合 第一页| 国产精品色片一区二区| 91碰碰| 欧亚性爱啪啪| 色偷偷综合91久久噜噜| 欧美色综合影院| 99热线麻豆| 亚洲九九夜夜| 亚洲高清欧美总合| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | site:sinbotex.com| 黄页大片在线观看| 岛国免费视频在线| 国产视频大全| 亚洲偷拍自拍在线视频| 中文字幕一区二区三区人妻不卡 | 精品国产91内射久久| 九九九久久久久| 欧美性爱视频免费一区一A | WWW美腿丝袜香蕉中文| 啪一啪免费视频| 夜夜国自区| 男人的天堂不卡一区二区| 91狠狠综| 日本东京热大香蕉a片| 男女性感激情网站| 熟妇一区,二区,三区。| 日韩精品99999| 亚洲精品久久久久毛片A片拉屎| www.操| 视频黄色国产一级| 亚洲情色 自拍| 91粉芽高清在线一区二区| 少妇久久久久久| 色婷婷综合久久久久中文一区二区 | 日韩黄色小说| 九九久久久九九| 日韩精品人妻一| 天天夜夜rb| 蜜臀AV一区二区三区激情综合| 都市久久精品激情亚洲| 婷婷性网| 亚洲一区二区三区在线激情| 97精品在线| 国产AV中文| 久久一二三级一一一| 久久毛卡| 男人女人18禁片免费看网站| 久久久久极品| 亚洲熟妇丝袜在线观看| 欧美在线观看综合国产| 亚洲精品一二牛牛| 亚洲se91| 熟女精品一区二区在线观看| 色五月婷婷在线| 中文字幕一区二区免费在线| 亚州色综合| av久日| 日韩精品高清资源在线| 五月天丁香| 国产区91柔拿会所技师| 国产操逼网站亚洲一级黄色| 亚洲激情欧美色图 | 色色色欧美| 色激情综合网站| 色99久草| 啊啊啊啊啊啊啊网址在线观看| 丰满人妻一区二区三区免费,| 久操网址| 成人麻豆av电影网站| 屁股久久久久久久久久| 欧美啪啪啪91| 欧美一区二区三区成人性生活| 久久9 9 9精品| 中文字幕永久在线| 免费一级视频特黄色大片| 无码操逼视频一下| 色综合国产在线观看| 蜜臀久久久99久久久久| 亚洲欧美变态| 精品综合久久久久久97| 九草在线大香蕉| 中文字幕在线观看第二页| www.五月天| 黄aaaaaaaaaaaaaaaaaa色网站 | 九九九九精品| 欧美人妻少妇| 99re超碰| 操国产高清| 啊啊嗯嗯好爽| 人人搞人人插人人操| 9Ⅰ老熟女| 欧美色干| 国产农村妇女精品| 亚洲欧美日韩中文播放| 97色碰| 大JI巴好深好爽又大又粗视频| 国产精品农村妇女| 在线视频97| 国产精品96| 91色综合| 精品国产三级av韩国在线| 小说区 图片区色 综合区| 亚洲欧美综合| 日韩福利综合一区| 99国产在线 精品 视频| 强奸乱伦Av网| 99操逼| 熟妇在线视频一区二区| 1024亚洲中文字幕久在线看片你懂的 | 日韩熟女无码| 综合五月婷婷亚洲一区| 日韩av在线免费网站| 国产一级黄色片在线观看| 日韩中文字幕在线视频观看| 九九人人操| 欧美男人一区| 亚射在线| 中文熟女五十乱码在线| 日本大香蕉综合网| 自拍偷拍国产欧美日韩韩| 精品人妻一区二区视频| 黄片直播三级黄片两女一男| 伊人AAA| 亚洲AV资源| 91性感网站| 丝袜美腿丝袜| 国产精品福利资源在线尤物| 蜜乳AV一区| 熟女乱伦二区| 麻豆国产av网| 加勒比av网| 98久久| 亚洲日韩美国人妻| 婷婷丁香久久| 国产美女激情| 婷婷午夜清品久久久久久久性色视频观| 天天干人人看综合| 亚洲中文字母在线播放| 熟妇人妻一区二区三区| 999久久芭蕾| 久久97| 日本Xx性爱| 女优视频第10页| 久啪| 日韩欧美性吧婷婷乱伦大香蕉| 久久成人午夜精品影院| 中文字幕在线24| 一区二区三区色综合| 亚洲熟妇A V黑人| 亚一综合久久久久久久久久| 久久婷婷一区二| 啊啊啊啊啊好舒服视频| 国产粉嫩蜜臀av一区二区三区| 国产麻豆福利av在线播放| 操狠狠| 91精品国产长腿丝袜美女| 99久久无码| www.久久| 久久久性少妇| 熟女乱伦A| 久久人妻四季| 青草一区二区| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 九色精品视频导航1| 精品四五区| 日日骚一区二区三区| 国产精品黄色三级av| 日本亚洲vr欧美不卡高清专区| 美女上床网站| caoni国产亚洲av| 色女99一级片在线观看| 成年人黄色| 免费一级视频特黄色大片| 青青草久草AV| 一区二区三区探花在线观看| 丝袜无码a片| 日本韩高清无砖码22o| 丁香激情网| 欧美草草高清日韩视频| 日本久久天堂| 精品视频一区二区| 久综合网| 九九九精品美女| 婷婷五月天影院| 人妻人久久精品中文字幕| 亚洲国产麻豆一区二区三区 | 欧美亚洲激情小说| 久久久新亚洲AV| 日本特黄f c2| 爱爱啊啊啊| 亚洲欧美一区二区三区在钱蜜桃 | 亚洲高清自拍| 骚乳在线| 超碰国产精品无码| 久久久久久久久久久999| 一级毛片电影免费看| 精品久一区免费| 日本αv| 亚洲永久AV无码精品秋霞| 99亚洲精品| 日日夜夜草草草| 秋霞无码av鲁丝片一区| 亚洲综合草草| 99爱精品| 亚洲无码偷拍| 欧美视频激情久久久久久| 人干人人人操人人摸| 岛国不卡超碰护士AV在线播放| 午夜理论片在线观看免费| 亚洲少妇自拍中文字幕懂色| 人妻久久久| 超碰欧美| 校园春色中文字幕AV| 爱媛媛久久国产福利| 超碰久久.com| 按摩中文字幕| 手机在线视频国内精品| 精品无人区麻豆乱码1区2区图片| 亚洲色图91欧美日韩| 人人爱人人乐人人操| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 亚洲 欧美 日韩 国产一区二区| 超硑97精品| 8050无码八戒| 午夜毛片亚洲精品片国产久久久| 91亚洲影院综合| 强歼乱伦资源网| 亚州性色| a片亚洲一本通视频| 久久久九九网站| 欧美人黑A片无码免视费| 情色五月天网| 五月婷婷激情| 国产精品久久久久无码A√| 蜜汁欧美| 99色日| 五月婷婷丁香| 国产精品免费日韩| 淫荡网址| 欧亚韩国999| 韩日男人的天堂| 91狼人| 久热影视| 国产一线二线三线av| 青久操| 激情五月激情综合网| 一级特黄aaa大片在线观看成人一级片在线观看 | 任我爽视频在线观看| 欧美疯狂做爰xxxx| 人人做天天爱| 99中文字幕| 天天在线91| 欧美在线啊啊啊| 黑操B| 国产成人自拍视频在线| 午夜乱轮操逼视频免费看| 91日韩国产欧美亚洲另类精盘州至城都| 亚洲精品天天影视综合网| 天天爽夜夜操| 黄色免费网页无码| 少妇一级婬片免费放一级a性色.| 999综合网| 蜜臀久久99精品久久久久电影| 婷婷精品国产一区二区三区日韩| 偷拍欧美激情| 美女黄色一级A视频| 粉嫩在线一区二区懂色| 国产黄色影片在线观看| 中文字幕人妻资源在线| 东京热男人的天堂| 啪啪啪亚欧美视频| 男人的天堂99| 麻豆色约约| 嫩草91| 四虎在线免费视频| 97精品国产精品免费观看| 九九英色视频| 欧美激情欧美精品| 在线天堂999| 人人爽天天爽| 久久国产精品91| 天天日老熟妇| 另类综合另类| 人妻夜夜爽天天爽麻豆三区网站| 天天摸,夜夜摸| 97色色色| 禁片 高清 在线观看视频网站| 色五月亚洲| www.狠狠| 96精品在线| 91N欧美| 天天欧美色| 天天看天天综合成人网| 97综合在线观看| 婷婷综合在线观看| 天堂精品小草| 少妇精品久久久| 九一国产精品| 男人天堂导航| 青青草久草| 亚洲春色一区二区三区| 欧美性爱精品七区| 可以在线观看的黄色网址| 在线国产福利网址导航| 亚洲一区二区精品福利| 六月色色| 久无码| 99国产精品免费| 伊人亚洲综合| 国产精品午夜福利| 日韩大香蕉| 人人操我人人干| 亚洲导航深夜福利| 久久久九九网站| 91在线|亚| 午夜欧美J进J出白浆流出久久久 | 日韩三级性| 清纯唯美综合| 青娱乐999| 久久精品国产亚洲AV嘿嘿| 欧美日韩操逼嗦吊| 91亚洲黑人| 91性高| 九九九不卡| yw尤物av无码点击进入麻豆| 国产精品久久久久久无码红治院| 男人的天堂一区三区| 精品一区二区三区蜜桃臀赵总| 日韩99999色| 色呦色呦色精品| 中文字幕制服诱惑| 欧美黄色片在线播放| 日韩不卡av一二三| 国产白领连续中出在线观看| 成人片视频| 九久精品| 欧美日韩性爱无码| 国产女上位好爽在线| 欧美传媒一区| 国产熟女精品一区二区| 欧美人妻精品一区二区| 激情文学网伊人| 亚洲色情在线影视| 国产白丝av| 国产高清精品福利| 九九精品美女高溯喷水| 超碰碰小说97| 免费观看网黄| 亚洲激情网一二三四区| 欧美激色| 天天日天天干天天色| 亚洲另类在线观看| 激情小说亚洲视频| 国产无吗在线播放| 亚洲男人bt天堂| 呻吟 欧美 日本 中出| 富女玩鸭子一级毛片| 久操热| 日韩97视频| 秋霞网—男女啪啪亚洲免费体验区| 人妻久久久久久| 久久久九精品| 日本一区视频在线观看| 天天干2019| 91 天天综合| 国产黄色av大片网站| 天天综合网1| 91精品人| 久久久久精| AV天堂因数| 久久免费精品视频免一| 超碰在线97国产| 亚州熟女乱伦| 99re这里只有精品中心播放| 亚洲欧美97| 青草av在线| 91少妇通奸网站| 久久精品欧美一区二区三区不卡| 91女网站| 乱伦熟女论坛| 超碰亚洲欧美日韩无| 伊人91| 久久一二三四五六七八九区区区 | 大香蕉在线视频重口味毛片在线| 2020久久免费视频| 国产伊人自拍| 在线亚洲欧美| 久草精品热视| 亚洲一区日韩精品中文字幕| 91美腿丝袜在线观看| 白丝AV| 嗯嗯,啊啊,国产精品| 91亚洲欧美| 视频在线观看一二三区| 伊人天天久久动态图| 无码99| 精品日韩人妻视频| 日han少妇无码| 老熟女乱伦一区| 美女91在线观看| a一区二区三区乱码在线| 蜜臀久久在线视频| 无码av永久免费专区网站| 屁股久久久久久久久| 91 亚洲 欧美 日韩 国产 综合| 啊啊啊在线看| 五月丁香色婷婷| 超碰欧美| 99色日| 日韩欧美亚洲一区二区三区影院| 后入综合久久| 中文啪啪视频| 一级成人性爱| 五月天亚洲网| 91 刺激在线| 天天射天天| 97精品97久久| 欧美日韩成人在线| dy888午夜老子影视达达兔| 96精品久久久久中文字幕| 狠狠操夜夜| 中文字幕黄色一起草| 亚洲精品819| 中文字幕一区二区在线日韩精品| 97在线亚洲| 97中文天堂| 狠狠操夜夜| 老熟乱一区二区三区四区| 天美av在线观看| 欧美探花网| 999热日韩精品| 亚洲城人男人的天堂| 性在久久久久久| 啊啊啊好大好深| 国产精品91ai| www久| 乱伦色图网址是多少| 九九久精品| 青青草吊丝| 国产AV高清AV无码| 日韩三级在线观看网站| 另类欧美| 9 7超碰在线免费观看| 999国产精品999| 热思思免费视频| 午夜操操操| 欧美性,亚州色| 任你草| αⅴ天堂| 91色色网站| 少妇九九九九| 欧美性爱网97| 91老司机在线视频免费观看 | 色黄色美女大长腿午夜视频| 午夜毛片亚洲精品片国产久久久| 老女人碰碰在线碰碰视频| 国产在线76页| 爆操无码| 欧美成人四级在线播放| 中国人高清www色视频免费| 成人夜夜| 美女黄码视频午夜| 宗合情欲网| 校园春色 男人天堂 | 亚洲av综合伊人久久| 2017天天插| 超碰偷拍| 中文字幕视频免费| 日韩钢筋无码高清啾啾啾| 98一区二区精品| 国产亚洲在线| 日韩性爱再线视频| 日韩精品在线观看观看| 亚洲春色一区二区三区| www.男人的天堂| 久久九九精品一区二区| 福利天堂| 色女99一级片在线观看| 你操综合| 天天综合日韩网| 这里有精品| 熟女丰满人妻一区| 一区二区三区精品黑丝白丝酒店对鸡 | 欧美黑人猛交春色影视大全| 婷婷色导航| 六月丁香久久| 婷婷五月天色色| 妺妺跟我一起洗澡没忍住| 日韩激情啪啪啪| 啪啪啪东京| 超碰色男人操熟女| 小日子操bb在线看| 三级AV入口| 日韩中文字幕精品一区在线| 国产中文字幕在线点播| 成人无码在线视频网站| 超碰在线欧美性爱激情| 欧美黄色手机在线观看| 操国产逼| 欧美一区二区三区四区综合| 中字幕人妻一区二区三区| 亚洲天堂五月天国产| 最新av中文字幕高清| 伊人专区一区二区三区| 岛国大片国产| 欧美日韩国产中文精品字幕自在自线| 色色香蕉| 国产尹人在线视频免费| 在线99热| 天天日B狠狠操| 亚洲丝袜天堂| 午夜毛片高清免费不卡| 无码操逼天堂| 精品人妻久久久| 超碰99在线| 人人操人人色网| 日韩精品一区二区高清| 搡老女人老妇女AAA一VU麻豆 | 天天激情综合站| 亚洲五码一区二区三区| 日韩操人| 欧美色九九九| 操91| 香蕉99秘 一区精品蜜桃臀| 久久97| 人人艹亚洲| 2018色综合天天操| 黄页18禁| 欧美精品三区| 91亚洲网站| 黄色免费一级在线毛片| 日本操逼视频导航| 桃色五月天| 2019AV天堂| 九9精品| 欧美色图20p| 亚洲综合另类小说色区亚洲成av人片在www | 97射欧美| 精品人成视频在线观看| 日韩精品黄片免费观看| 99国产人成精品| 亚洲揄拍网| 亚洲激情在线| 26uuu偷拍亚洲欧洲综合| 日本网色| 97久久精品国产| 99少妇| 操操吧亚洲乱伦视频| 五月天大香蕉| 国产日韩人人| 97精品在线视频| 日韩国产欧美伦理在线| 首页亚洲国产高跟丝袜诱惑视频| 91成人在线| 国内外激情在线| 日韩无码精品综合久久| 大香网伊人久久综合| 91黑丝美女| 日韩精品-原创伙伴| 亚洲va有码在线天堂| 欧亚综合一卡二卡中文字幕| 成人精品视频| 欧美夜夜草视频| 国产伦精品一区二区三区在线观| 97内射偷拍| 男人天堂新在线| 日韩在线观看字幕精品| 韩日男人的天堂| 久久97视频| 日韩精品1区2区中文字幕| 怡红院视频在线| 97色欧洲| 强奸国产在线| 欧美综合色站| 欧美色女人| 五月天激情影院| 欧美在线中M| 久久久久久亚洲Av无码精| A久久| 久久久久深夜无码| 大香焦A片| 亚洲日韩青青草色月| 久久久四区| 9久久精品| 日本亚欧爱爱| 两性色网| 久久久99999久网站| 国产精品第一区第一页| 色哟哟的毛片| 亚洲黄色电影| 国产一区二区三区影片| 精品视频久久区| 欧美日本中字另类在线| 级品肉射| 国产人妖的免费的视频| 人妻无码后入| 中文字幕高清精品一区| 欧美久久草熟女| 久久精品熟妇丰满人妻99| 99色在线| 亚洲熟女诱惑| 五月婷婷六月丁香| 伦理第一页| 精品一区二区三区蜜桃臀赵总 | 国产在线76页| 精品福利| 99re6国产精品99re在线| 综合97| 操九九九九九九| 欧洲特黄毛片免费看欧洲毛片| 插入综合网| 日韩亚洲欧美中文字幕| 看看小穴| 国产在线能看的你懂的| 欧美久久久15P| 国产乱伦亚洲| 超碰伊人在线| 久久这里只精品99re66图| 熟女高潮精品一区二区| 久综合网| 屁股久久久久久久| 欧美亚洲影视| 天天艹天天日| 亚洲午夜蜜臀| 依人大香蕉| 日本不卡一区二区| 99热在线不卡| 熟女精品va中文字幕| 97中文综合| 日韩欧美女优电影| 蜜乳AV免费观看| 日本淫穴在线| 国产又色又爽又舒服的三级视频| 国产91 丝袜在线播放| 久久99黄色卞西瓜| 欧美自拍偷拍综合图片| 中国熟女91| 丁香六月啪啪| 2018天天日天天日| 色情婷婷久久五月天| 久热9| 精品无码久久久久久久杏吧| 婷婷另类小说| 国产超碰人人操| 亚洲情色综合| 伊人aaa| 婷婷六月天| 国产精品一区二区亚洲人成毛片| 呦女网站| 欧美熟爽综合| 国产高清26uuu| 久久中文字幕在线观看| 女人一区| 亚洲国产日韩欧美熟妇在线| 草草草视频在线免费看| 2019午夜福利视频| 一区二区日韩欧美久久| 欧美91视频| 鸥美中出| 亚洲国产精品久久久男人的天堂| 97人人超| 午夜福利激情在线视频| 麻豆天天躁天天揉揉AV| 亚洲精品欧美专业| 狠狠操综合| 最新岛国大片| 99re98| 欧洲亚洲天堂精品| 日韩精品三区四区| 无遮挡h肉动漫在线观看| 国产粉嫩蜜臀av一区二区三区 | 国产情色第一第二页在线观看| 日本在线一二 | 丁香色五月 97干| 午夜a成v人电影| 精人妻一区二区三区| 综合av影片| 丰满少妇人妻久久久久久| 日韩成人大片在线观看| 成人26uuu| 狠狠爱大香蕉| 蜜桃网熟妇| 91国产美女丝袜足交精品视频| 熟女精品一区二区三区| japan日本高清乱xxxx| 黑人免费福利视频| 无套后入双马尾| 九九九精品色乱九九九| 日韩99神马视频播放| 色香色香欲天天天影视综合网| 国产亚州精品美女久久久免费| 国产日韩精品suv| 97资源久久| 撸无码不卡免费视频| 欧亚揄拍偷拍精品视频| 熟妇艹鸡八| 草b在线 | 九九RE视频在线精品| av在线一区二区三区| 性久久久| A 天堂| 欧美天天性| 精品无吗m| 色色97爱| 午夜亚洲| 伊人宅男大香蕉| 欧美色图自拍| 91欧美丝袜| 91处女在线视频| 我爱搞逼综合网| 男人的天堂日本东京热| AV99热18这里只有精品| 美女主播色欲91抠b在线播放| 极品粉嫩一区二区| 国产久久久9999| 91爱综合| 欧美日韩夜夜| 欧美激情亚洲色图| 麻豆AV一区二区| 色 婷97| 久久有碼| 色哟哟1区2区| 久久精品国产久精国产| 日韩精品大香蕉伊人在线| 久久伦理视频久久大香蕉视频| 加勒比av中文| 9999久久久久| 91久久久久| 欧美熟妇精品黑人巨大91| 日韩性色| 日韩无码极品| 69XX一中文字幕人妻91| 国产精品日韩在线一区| 成人麻豆av电影网站| 久久av成人无码免费| 国产极品一区二区三区三州| 天天草天天干天天日| 欧美十八禁在线看| 婷婷色综合| 丝袜夫妻自拍| 天天干天天日天天射黄色片| 91美女色视频亚洲| 少妇精品久久久八区九区| 亚州欧美在线| 欧美v日韩v亚洲v最新在线| 欧美日韩国产一区二区小黄片大全| 黑人精品XXX一区一二区| 强奸乱伦亚洲第一页| 午夜国产成人福利视频| 人妻嗯啊啊在线播放| 伊人国产av| 夜夜免费视频| 欧美成人精品欧美一级乱黄一区二… | AV99热18这里只有精品| 欧美淫乱视频| 亚洲欧美情色| 波多野42部无码喷潮在线观看| 日韩一区二区三区四区五区| 激情久久久| 性色中出| 亚洲另类色综合网站| 久草新在线| 一区不卡在线观看av| 免费看久久久性性| 麻豆黄色五月天| 中文字幕一区二区三四五区日日骚| 999久久芭蕾| 国产福利一区二| 免费在线观看国内色片网站网址| 激情综合五月天| 国产精品丝袜久久亚洲不卡| 91美女视频直播| 欧美呦呦性爱| 欧美十八禁在线看| 国产福利夜| 78m啪啪啪|