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

ARTICLE DETAIL

資訊詳情

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

STM32嵌入式開發(fā)從入門到進階:核心架構、外設驅(qū)動與項目實戰(zhàn)指南

STM32嵌入式開發(fā)從入門到進階:核心架構、外設驅(qū)動與項目實戰(zhàn)指南 1. 從零開始為什么是STM32如果你剛接觸嵌入式開發(fā)或者從51單片機、Arduino轉過來面對市面上琳瑯滿目的單片機第一個問題可能就是我該學哪個我的答案是STM32。這不是因為它“最?!倍且驗樗白詈线m”。它就像一個萬金油上能觸及高性能計算和復雜系統(tǒng)下能兼容簡單的控制邏輯更重要的是它擁有一個龐大到令人安心的生態(tài)。當你遇到問題時幾乎可以肯定網(wǎng)上已經(jīng)有人踩過同樣的坑并留下了解決方案。這份學習筆記就是基于我多年使用STM32的經(jīng)驗為你梳理出一條清晰的學習路徑避開那些我當年走過的彎路。STM32并不是一個單一的芯片它是意法半導體STMicroelectronics基于ARM Cortex-M內(nèi)核打造的一個龐大的微控制器家族。你可以把它理解為一個“品牌”下面有無數(shù)個型號從低功耗的M0到高性能的M7總有一款能滿足你的項目需求。學習STM32本質(zhì)上是在學習ARM Cortex-M架構、學習一種高效的開發(fā)模式、以及學習如何利用強大的硬件外設去解決實際問題。接下來我們就從最根本的架構和選型開始一步步拆解這個強大的工具。2. STM32家族全景圖與核心架構解析剛接觸STM32那一大堆以F1、F4、H7開頭的型號絕對讓人眼花繚亂。別慌我們先把家族譜系理清楚。STM32主要按內(nèi)核性能分為幾個系列每個系列又根據(jù)內(nèi)存、外設和封裝細分成無數(shù)型號。2.1 主流系列定位與選型指南Cortex-M0/M0系列例如STM32F0、G0、L0。這是入門級和超低功耗的代表。M0內(nèi)核簡單功耗極低適合成本敏感、電池供電的簡單控制場景比如智能家居傳感器、遙控器、小家電。如果你之前用51單片機升級到STM32F0會感覺世界一下子開闊了——有了更豐富的外設和更現(xiàn)代的開發(fā)工具。Cortex-M3系列例如經(jīng)典的STM32F1系列。這是STM32的“功勛”系列也是很多人的入門選擇。性能、功耗、成本平衡得非常好資料極其豐富。F103“藍橋杯”板子遍地都是足以說明其江湖地位。它適合大多數(shù)中低復雜度的工業(yè)控制、消費電子和物聯(lián)網(wǎng)節(jié)點。如果你的項目不需要浮點運算單元FPU和極高的主頻F1系列依然是穩(wěn)妥的首選。Cortex-M4系列例如STM32F4、L4系列。M4內(nèi)核最大的特點是內(nèi)置了單精度浮點運算單元FPU這意味著它處理數(shù)學運算尤其是三角函數(shù)、PID控制算法時速度遠超M3。F4系列主頻更高通常168MHz或以上內(nèi)存更大外設更強大如更快的ADC、DAC更靈活的定時器。它適合需要一定數(shù)字信號處理DSP能力的應用比如音頻處理、電機矢量控制、簡易圖像處理等。L4則在M4高性能基礎上強化了低功耗特性。Cortex-M7系列例如STM32F7、H7系列。這是高性能領域的霸主主頻可達400MHz甚至更高帶有雙精度FPU一級緩存甚至支持外部SDRAM和NAND Flash。它可以運行復雜的圖形界面如LVGL、實時操作系統(tǒng)RTOS以及輕量級的機器學習算法。當你覺得F4都力不從心時就該考慮M7了。選型心得不要盲目追求高性能。對于初學者我強烈建議從STM32F103C8T6俗稱“最小系統(tǒng)板”或“藍色藥丸”開始。它價格低廉十元左右資料海量引腳數(shù)適中48腳外設夠用。先把一個系列玩透再切換其他系列會非常輕松因為STM32的編程思想和外設驅(qū)動庫如HAL庫是高度統(tǒng)一的。2.2 深入內(nèi)核ARM Cortex-M架構優(yōu)勢STM32的性能基石來自于ARM Cortex-M內(nèi)核。與傳統(tǒng)的8051或AVR架構相比Cortex-M是現(xiàn)代精簡指令集RISC架構優(yōu)勢明顯高性能與高能效比采用哈佛總線架構指令和數(shù)據(jù)總線分離支持單周期乘法指令和多級流水線在相同主頻下執(zhí)行效率遠高于復雜指令集CISC的老架構。中斷響應迅速嵌套向量中斷控制器NVIC是Cortex-M內(nèi)核的一部分提供了可編程的中斷優(yōu)先級和極低的中斷延遲。這對于實時控制至關重要。豐富的調(diào)試功能通過標準的SWD串行調(diào)試或JTAG接口可以輕松實現(xiàn)單步調(diào)試、斷點、實時變量查看。CoreSight調(diào)試架構讓問題排查變得直觀。良好的軟件兼容性基于Cortex-M的芯片其底層寄存器操作如NVIC、SysTick由ARM定義具有一致性。這為跨平臺移植比如從STM32F1到GD32F1降低了難度。理解這些優(yōu)勢你就能明白為什么STM32編程中我們?nèi)绱藦娬{(diào)“庫函數(shù)”和“中斷”。因為硬件本身就是為了高效處理這些任務而設計的。2.3 系統(tǒng)架構總線矩陣與存儲器映射打開STM32的參考手冊第一張核心框圖可能就是“系統(tǒng)架構”。別被那些縱橫交錯的線嚇到我們抓住核心總線矩陣。你可以把STM32內(nèi)部想象成一個城市。內(nèi)核Cortex-M是市長辦公室需要高效地指揮各個部門外設。FLASH和SRAM是倉庫存儲數(shù)據(jù)。GPIO、USART、SPI、I2C、ADC等是分布在城市各處的功能單位。總線矩陣就是城市的道路網(wǎng)。STM32有多條總線I-Bus指令總線專門用于從FLASH取指令。D-Bus數(shù)據(jù)總線用于訪問數(shù)據(jù)。S-Bus系統(tǒng)總線用于訪問外設和SRAM。AHB/APB總線高級/低級外設總線像環(huán)城高速和市內(nèi)街道將各個外設連接到核心。這種多總線并行工作的架構避免了“堵車”。例如內(nèi)核可以通過D-Bus從SRAM讀取數(shù)據(jù)的同時DMA控制器可以通過另一條總線將ADC的數(shù)據(jù)搬運到SRAM互不干擾。這就是STM32能高效處理多任務的基礎。存儲器映射則是給這個城市每個建筑內(nèi)存單元、外設寄存器分配一個唯一的地址。所有對GPIO的置位、對USART的發(fā)送數(shù)據(jù)操作本質(zhì)上都是向這個地址映射的特定寄存器寫入特定的值。HAL庫或者標準庫就是幫你把這些晦澀的地址操作封裝成了像HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET)這樣易懂的函數(shù)。3. 開發(fā)環(huán)境搭建與第一個工程理論懂了手會癢。接下來就是實實在在的“搭臺子唱戲”。一個穩(wěn)定、高效的開發(fā)環(huán)境能讓你事半功倍。3.1 工具鏈選型Keil、IAR還是VS Code這是經(jīng)典的“三門派”之爭。Keil MDK-ARM國內(nèi)最主流特別是高校和企業(yè)。優(yōu)勢是集成度高安裝配置簡單調(diào)試功能強大對STM32支持極好通過Device Family Pack。缺點是收費雖然有代碼大小限制的免費版編輯器相對老舊。對于純初學者我仍推薦先從Keil開始因為絕大多數(shù)中文教程和問題解答都基于它能減少環(huán)境帶來的困擾。IAR Embedded Workbench在工業(yè)界尤其是對代碼體積和效率有極致要求的領域IAR口碑很好。它的編譯器優(yōu)化非常強大。但同樣收費昂貴且學習資源相對Keil少一些。VS Code 插件這是當前越來越流行的“極客”選擇。完全免費依托VS Code強大的編輯器體驗非常好。通過安裝Cortex-Debug、STM32 for VSCode等插件并搭配arm-none-eabi-gcc編譯工具鏈和OpenOCD調(diào)試器可以搭建一個高度定制化的免費開發(fā)環(huán)境。適合有一定Linux/命令行基礎喜歡折騰追求優(yōu)雅編碼環(huán)境的開發(fā)者。初期配置過程可能稍顯復雜。實操心得我的建議是雙軌制。初期學習使用Keil快速上手把精力集中在STM32本身的學習上。當你熟悉了項目創(chuàng)建、編譯、下載、調(diào)試的完整流程后可以嘗試搭建VS Code環(huán)境將其作為主力代碼編輯器享受智能提示、代碼跳轉的便利然后用Keil進行編譯和調(diào)試VS Code也可以配置調(diào)用Keil的命令行工具。這樣平衡了學習成本和開發(fā)體驗。3.2 軟件安裝與芯片支持包以Keil MDK-ARM為例安裝MDK從官網(wǎng)下載安裝包按步驟安裝。記得選擇安裝路徑不要有中文和空格。安裝STM32 Device Family Pack這是關鍵一步。Keil安裝后本身不帶STM32的芯片型號和啟動文件。你需要去Keil官網(wǎng)或ST官網(wǎng)下載對應系列的DFP包如Keil.STM32F1xx_DFP.2.4.0.pack雙擊安裝。安裝成功后在Keil新建工程時才能選擇到你的芯片型號如STM32F103C8。安裝ST-LINK驅(qū)動如果你使用ST-LINK調(diào)試下載器需要安裝對應的USB驅(qū)動否則電腦無法識別。3.3 創(chuàng)建標準庫與HAL庫工程STM32的編程主要有三種方式寄存器、標準外設庫Standard Peripheral Library SPL、硬件抽象層庫Hardware Abstraction Layer HAL。寄存器操作最底層直接讀寫寄存器效率最高但代碼最難寫、最難讀、最難移植。不推薦初學者直接上手。標準庫ST早期推出的庫對寄存器進行了封裝提供了函數(shù)接口。代碼結構和效率都不錯是學習STM32原理的很好載體。但ST已停止更新對新系列芯片如F7、H7不支持。HAL庫ST現(xiàn)在主推且持續(xù)更新的庫。封裝程度更高提供了統(tǒng)一的API接口跨系列移植性最好。它采用了回調(diào)Callback機制代碼結構更現(xiàn)代但效率相對標準庫稍低代碼量也更大。第一個工程點亮LEDHAL庫版這里以STM32F103C8T6和HAL庫為例簡述流程新建工程打開KeilProject - New uVision Project選擇路徑和工程名。在Device選擇框里搜索并選擇STM32F103C8。管理運行時環(huán)境在彈出的“Manage Run-Time Environment”窗口中這是Keil5的特色。在Device下展開Startup勾選CMSIS-CORE和Device下的Startup。在Device下找到你的系列如STM32F1xx勾選HAL Drivers下的GPIO。點擊OKKeil會自動為你添加必要的核心文件和HAL GPIO庫文件。編寫主函數(shù)#include stm32f1xx_hal.h // 包含HAL庫頭文件 // 定義LED連接的引腳假設接在PA5 #define LED_PIN GPIO_PIN_5 #define LED_GPIO_PORT GPIOA // 系統(tǒng)時鐘配置簡化版實際項目需用CubeMX生成 void SystemClock_Config(void) { // 通常由CubeMX自動生成此處省略詳細代碼 // 主要配置HSE、PLL將系統(tǒng)時鐘設置為72MHz } int main(void) { // 初始化HAL庫 HAL_Init(); // 配置系統(tǒng)時鐘 SystemClock_Config(); // 初始化GPIO __HAL_RCC_GPIOA_CLK_ENABLE(); // 使能GPIOA時鐘 GPIO_InitTypeDef GPIO_InitStruct {0}; GPIO_InitStruct.Pin LED_PIN; GPIO_InitStruct.Mode GPIO_MODE_OUTPUT_PP; // 推挽輸出 GPIO_InitStruct.Pull GPIO_NOPULL; GPIO_InitStruct.Speed GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(LED_GPIO_PORT, GPIO_InitStruct); while (1) { HAL_GPIO_TogglePin(LED_GPIO_PORT, LED_PIN); // 翻轉LED狀態(tài) HAL_Delay(500); // 延時500ms } }配置調(diào)試器點擊魔術棒圖標 - Debug選擇你的調(diào)試器如ST-Link Debugger點擊Settings確認SWD接口被正確識別。編譯與下載點擊Build(F7) 編譯無錯誤后點擊Load(F8) 下載到芯片。復位芯片你應該能看到LED開始閃爍。避坑提示很多新手在這里會卡住。如果下載失敗請按順序檢查1) 開發(fā)板供電是否正常2) ST-LINK連接線SWDIO SWCLK是否接對3) Keil中Debug配置的接口是否選對SWD4) 芯片是否被寫保護需要先進行芯片擦除。4. 核心外設深度剖析與編程思想掌握了基本開發(fā)流程我們就可以深入STM32最強大的部分——豐富的外設。理解并熟練使用這些外設是你從“點亮LED”邁向“做出項目”的關鍵。4.1 GPIO不僅僅是輸入輸出通用輸入輸出口是基礎但STM32的GPIO遠比想象中強大。多種模式上拉/下拉輸入、浮空輸入、模擬輸入、推挽輸出、開漏輸出。推挽輸出能直接驅(qū)動LED等器件開漏輸出常用于I2C總線可以實現(xiàn)“線與”功能模擬輸入則用于連接ADC。翻轉速度GPIO可以配置輸出速度低速、中速、高速、超高速。對于普通的LED閃爍低速即可但對于驅(qū)動高速SPI通信的時鐘線必須配置為高速或超高速否則信號邊沿會變緩導致通信失敗。復用功能每個GPIO引腳除了用作普通IO還可以被“重映射”為特定外設的功能引腳如USART_TX、SPI_SCK等。這需要在初始化時配置模式為GPIO_MODE_AF_PP復用推挽輸出。按鍵掃描示例帶消抖// 假設按鍵接在PC13低電平有效 #define KEY_PIN GPIO_PIN_13 #define KEY_GPIO_PORT GPIOC uint8_t Key_Scan(void) { if (HAL_GPIO_ReadPin(KEY_GPIO_PORT, KEY_PIN) GPIO_PIN_RESET) { // 檢測到按下 HAL_Delay(20); // 簡單延時消抖 if (HAL_GPIO_ReadPin(KEY_GPIO_PORT, KEY_PIN) GPIO_PIN_RESET) { // 再次確認 while (HAL_GPIO_ReadPin(KEY_GPIO_PORT, KEY_PIN) GPIO_PIN_RESET); // 等待釋放 return 1; // 返回有效的按鍵按下 } } return 0; }4.2 中斷與事件CPU的“緊急呼叫”系統(tǒng)輪詢像上面按鍵掃描那樣不斷查詢效率低下。中斷才是嵌入式實時系統(tǒng)的靈魂。NVIC管理STM32的中斷源有成百上千個每個外設都可能產(chǎn)生多個中斷。NVIC負責統(tǒng)一管理優(yōu)先級和響應。優(yōu)先級分為搶占優(yōu)先級和子優(yōu)先級。高搶占優(yōu)先級的中斷可以打斷低搶占優(yōu)先級的中斷正在執(zhí)行的服務。外部中斷STM32的幾乎所有GPIO都可以配置為外部中斷源。例如你可以將按鍵引腳配置為下降沿觸發(fā)外部中斷這樣CPU就不需要輪詢按鍵按下時自動跳轉到中斷服務函數(shù)執(zhí)行。中斷服務函數(shù)這是一個特殊的函數(shù)需要按照HAL庫或標準庫定義的格式來寫。例如對于外部中斷線0void EXTI0_IRQHandler(void) { if (__HAL_GPIO_EXTI_GET_IT(GPIO_PIN_0) ! RESET) { // 判斷中斷標志 __HAL_GPIO_EXTI_CLEAR_IT(GPIO_PIN_0); // 清除中斷標志必須做 // 這里寫你的處理代碼比如翻轉LED HAL_GPIO_TogglePin(LED_GPIO_PORT, LED_PIN); } }核心要點在中斷服務函數(shù)里一定要盡快清除對應的中斷標志位否則退出后又會立即進入中斷形成“中斷風暴”。另外中斷服務函數(shù)里執(zhí)行的操作要盡可能短小精悍避免長時間占用CPU。復雜的處理可以置一個標志位在主循環(huán)里查詢執(zhí)行。4.3 定時器系統(tǒng)的“心跳”與精準計時STM32的定時器TIM功能強大到令人發(fā)指遠不止簡單的延時?;径〞r配置預分頻器PSC和自動重載寄存器ARR產(chǎn)生固定周期的更新中斷用作系統(tǒng)時基替代HAL_Delay的阻塞延時或任務調(diào)度。輸入捕獲測量脈沖寬度或頻率。例如捕獲超聲波模塊回響引腳的高電平時間來計算距離。輸出比較/PWM產(chǎn)生精確的脈沖或PWM波形。這是驅(qū)動舵機、控制電機速度、調(diào)光LED的基石。通過修改比較寄存器CCR的值可以輕松調(diào)整PWM的占空比。編碼器接口直接連接正交編碼器自動計算電機的轉速和方向無需軟件干預。PWM輸出呼吸燈示例HAL庫TIM_HandleTypeDef htim2; TIM_OC_InitTypeDef sConfigOC {0}; // 定時器2初始化通道1輸出PWM void PWM_Init(void) { __HAL_RCC_TIM2_CLK_ENABLE(); htim2.Instance TIM2; htim2.Init.Prescaler 72 - 1; // 72MHz/72 1MHz的計數(shù)頻率 htim2.Init.CounterMode TIM_COUNTERMODE_UP; htim2.Init.Period 1000 - 1; // 自動重載值決定PWM頻率 1MHz / 1000 1kHz htim2.Init.ClockDivision TIM_CLOCKDIVISION_DIV1; HAL_TIM_PWM_Init(htim2); sConfigOC.OCMode TIM_OCMODE_PWM1; sConfigOC.Pulse 500; // 初始占空比 500/1000 50% sConfigOC.OCPolarity TIM_OCPOLARITY_HIGH; sConfigOC.OCFastMode TIM_OCFAST_DISABLE; HAL_TIM_PWM_ConfigChannel(htim2, sConfigOC, TIM_CHANNEL_1); HAL_TIM_PWM_Start(htim2, TIM_CHANNEL_1); // 啟動PWM輸出 } // 主循環(huán)中改變占空比實現(xiàn)呼吸效果 int main(void) { // ... 系統(tǒng)初始化 PWM_Init(); uint16_t pulse 0; int8_t dir 1; while (1) { HAL_Delay(10); pulse dir * 10; if (pulse 1000) dir -1; if (pulse 0) dir 1; __HAL_TIM_SET_COMPARE(htim2, TIM_CHANNEL_1, pulse); // 動態(tài)修改比較值 } }4.4 串口通信與外界對話的橋梁USART/UART是嵌入式開發(fā)中最常用、最基礎的通信方式用于打印調(diào)試信息、連接藍牙/WiFi模塊、與上位機通信等。異步通信不需要時鐘線依靠事先約定好的波特率進行同步。關鍵配置波特率如115200、數(shù)據(jù)位8位、停止位1位、奇偶校驗位無。三種工作模式輪詢、中斷、DMA。輪詢發(fā)送時等待發(fā)送完成標志接收時不斷查詢接收寄存器。效率低會阻塞CPU。中斷數(shù)據(jù)發(fā)送完成或接收到數(shù)據(jù)時產(chǎn)生中斷。CPU效率高適合不定長或隨機數(shù)據(jù)接收。DMA直接存儲器訪問。串口接收/發(fā)送數(shù)據(jù)完全由DMA控制器在后臺搬運不占用CPU時間。這是處理大量、高速串口數(shù)據(jù)的最佳方式CPU可以解放出來做其他事情。串口中斷接收不定長數(shù)據(jù)HAL庫 這是一個經(jīng)典且實用的技巧因為實際通信中數(shù)據(jù)包長度經(jīng)常變化。UART_HandleTypeDef huart1; uint8_t rx_buffer[256]; // 接收緩沖區(qū) uint16_t rx_index 0; // 接收索引 uint8_t rx_flag 0; // 接收完成標志 // 串口初始化 void USART1_Init(void) { 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; HAL_UART_Init(huart1); // 開啟串口接收中斷 HAL_UART_Receive_IT(huart1, rx_buffer[rx_index], 1); // 每次接收1個字節(jié)就進入中斷 } // 串口中斷服務函數(shù)HAL庫已封裝我們重寫回調(diào)函數(shù) void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { if (huart-Instance USART1) { // 檢查是否收到幀尾例如換行符 \n if (rx_buffer[rx_index] \n) { rx_buffer[rx_index] \0; // 添加字符串結束符 rx_flag 1; // 設置接收完成標志 rx_index 0; // 重置索引準備下一次接收 } else { rx_index; if (rx_index 256) rx_index 0; // 防止緩沖區(qū)溢出 } // 重新開啟中斷接收等待下一個字節(jié) HAL_UART_Receive_IT(huart1, rx_buffer[rx_index], 1); } } // 主循環(huán)中處理接收完成的數(shù)據(jù) int main(void) { // ... 初始化 USART1_Init(); while (1) { if (rx_flag) { rx_flag 0; // 處理 rx_buffer 中的數(shù)據(jù) // 例如回顯數(shù)據(jù) HAL_UART_Transmit(huart1, (uint8_t*)Received: , 10, 1000); HAL_UART_Transmit(huart1, rx_buffer, strlen((char*)rx_buffer), 1000); HAL_UART_Transmit(huart1, (uint8_t*)\r\n, 2, 1000); } // ... 其他任務 } }5. 項目進階從模塊到系統(tǒng)當你熟練使用GPIO、中斷、定時器、串口這幾個核心外設后就已經(jīng)具備了完成大多數(shù)基礎項目的能力。接下來我們需要學習如何將它們組合起來并引入更強大的工具。5.1 傳感器與執(zhí)行器驅(qū)動STM32的世界離不開各種傳感器輸入和執(zhí)行器輸出。數(shù)字傳感器如DHT11溫濕度、DS18B20溫度。它們有特定的單總線或自定義時序協(xié)議。驅(qū)動它們的關鍵是精確的微秒級延時使用SysTick或定時器實現(xiàn)和嚴格的時序控制。仔細閱讀數(shù)據(jù)手冊的時序圖是成功驅(qū)動的唯一法門。模擬傳感器如光敏電阻、熱敏電阻通過ADC讀取電壓值MPU6050陀螺儀加速度計通過I2C讀取數(shù)字值。ADC的精度、參考電壓穩(wěn)定性直接影響結果。I2C通信則要注意上拉電阻、時鐘速率和從機地址。執(zhí)行器如舵機PWM控制角度、直流電機PWMH橋驅(qū)動、步進電機脈沖方向控制。驅(qū)動執(zhí)行器往往需要更大的電流STM32的IO口驅(qū)動能力有限通常幾mA到20mA必須使用三極管、MOS管或電機驅(qū)動芯片如L298N、TB6612進行功率放大。5.2 通信協(xié)議I2C、SPI與CAN當需要連接多個外設時GPIO就不夠用了。I2C兩根線SDA數(shù)據(jù) SCL時鐘支持多主多從通過設備地址尋址。速度較慢標準模式100kbps快速模式400kbps適合連接EEPROM、各種傳感器如BMP280氣壓計。要點總線上需要接上拉電阻通常4.7kΩ注意應答ACK機制。SPI四根線MOSI主出從入、MISO主入從出、SCLK時鐘、CS片選全雙工高速可達幾十Mbps適合連接Flash、SD卡、顯示屏驅(qū)動IC。要點時鐘極性CPOL和相位CPHA必須與從設備匹配通常有模式0-3四種組合。CAN汽車和工業(yè)領域的王者抗干擾能力極強支持多主、優(yōu)先級仲裁和錯誤檢測。STM32內(nèi)置了CAN控制器需要外接CAN收發(fā)器芯片如TJA1050連接到物理總線。學習CAN重點是理解報文幀標準幀/擴展幀、標識符ID、數(shù)據(jù)場以及驗收濾波器的配置。5.3 引入RTOS從裸機到多任務系統(tǒng)當你的項目需要同時處理按鍵、顯示、網(wǎng)絡通信、數(shù)據(jù)采集時一個大的while(1)循環(huán)會變得異常復雜和難以維護。這時你需要一個實時操作系統(tǒng)RTOS。FreeRTOS是STM32上最流行、資源占用最小的RTOS之一。它引入了“任務”的概念。每個任務是一個獨立的無限循環(huán)函數(shù)擁有自己的??臻g和優(yōu)先級。RTOS內(nèi)核負責在多個任務之間進行調(diào)度讓它們“看起來”在同時運行。核心概念任務你的功能函數(shù)。隊列任務間通信的安全方式一個任務寫數(shù)據(jù)另一個任務讀數(shù)據(jù)。信號量用于同步或資源計數(shù)。二進制信號量常用于任務同步如中斷服務函數(shù)給任務發(fā)信號計數(shù)信號量用于管理有限資源如緩沖區(qū)空位?;コ饬刻厥獾亩M制信號量用于保護共享資源如一個全局變量、一個外設防止多個任務同時訪問造成混亂。一個簡單的FreeRTOS應用場景// 任務1LED閃爍 void vTaskLED(void *pvParameters) { while (1) { HAL_GPIO_TogglePin(LED_GPIO_PORT, LED_PIN); vTaskDelay(pdMS_TO_TICKS(500)); // FreeRTOS延時不會阻塞其他任務 } } // 任務2按鍵掃描并發(fā)送消息 void vTaskKey(void *pvParameters) { while (1) { if (Key_Scan()) { // 向隊列發(fā)送一個消息 uint32_t msg 1; xQueueSend(xQueue, msg, portMAX_DELAY); } vTaskDelay(pdMS_TO_TICKS(50)); } } // 任務3從隊列接收消息并處理 void vTaskProcess(void *pvParameters) { uint32_t received_msg; while (1) { if (xQueueReceive(xQueue, received_msg, portMAX_DELAY) pdPASS) { // 處理按鍵消息例如控制另一個設備 // 這里不會影響LED閃爍任務的節(jié)奏 } } }使用RTOS后LED閃爍、按鍵檢測、復雜邏輯處理被解耦成獨立的任務代碼結構清晰可維護性大大增強。STM32CubeMX工具可以圖形化配置FreeRTOS自動生成代碼框架極大地降低了使用門檻。5.4 調(diào)試藝術printf重定向與邏輯分析儀調(diào)試是開發(fā)的一半。除了單步調(diào)試和斷點還有兩個神兵利器。printf重定向?qū)庫的printf函數(shù)輸出重定向到串口。這樣你就可以像在電腦上編程一樣在串口助手上打印變量值、程序狀態(tài)這是最直觀的調(diào)試手段。// 重寫 _write 函數(shù)對于ARMCC編譯器 int _write(int file, char *ptr, int len) { HAL_UART_Transmit(huart1, (uint8_t*)ptr, len, HAL_MAX_DELAY); return len; } // 之后就可以在主函數(shù)中使用 printf(Value: %d\r\n, sensor_value);邏輯分析儀當你調(diào)試SPI、I2C、PWM等時序相關的bug時光靠代碼和打印信息是遠遠不夠的。一個幾十塊錢的USB邏輯分析儀配合軟件如Saleae Logic、PulseView可以抓取硬件引腳上的真實波形讓你一眼看出時鐘頻率對不對、數(shù)據(jù)線上的數(shù)據(jù)是什么、時序是否滿足要求。這是解決通信類問題的終極武器。6. 常見問題與避坑指南實錄這條路我走過坑我也踩過。下面這些經(jīng)驗希望能幫你節(jié)省大量時間。6.1 編譯與下載類問題問題No ST-LINK detected或Cannot enter Debug mode排查1) 確認ST-LINK的SWD接口SWDIO SWCLK GND與板子連接正確且牢固。2) 檢查板子供電是否正常有時僅靠ST-LINK供電不足。3) 在Keil的Debug設置中嘗試將Connect Reset Options改為Under Reset。4) 芯片可能被讀保護使用ST-LINK Utility等工具進行全片擦除。問題程序下載后不運行排查1) 首先檢查啟動模式引腳BOOT0/BOOT1的設置。通常運行用戶程序需要BOOT00。2) 檢查復位電路是否正常手動復位一下。3) 檢查系統(tǒng)時鐘配置是否正確特別是如果使用了外部晶振HSE確保晶振起振可以換用內(nèi)部時鐘HSI測試。4) 在main函數(shù)最開始加一個LED閃爍的測試代碼排除是外設初始化導致的問題。問題代碼體積超限Flash或RAM解決1) 優(yōu)化編譯器選項Optimization等級從-O0調(diào)到-O1或-O2。2) 檢查是否包含了未使用的庫文件或函數(shù)。3) 將常量數(shù)據(jù)如字庫、圖片存儲到外部Flash運行時加載。4) 如果使用HAL庫可以考慮裁剪只包含用到的外設驅(qū)動源文件。6.2 外設與驅(qū)動類問題問題GPIO輸出沒反應口訣“一查時鐘二查模式三查引腳”。1)時鐘必須調(diào)用__HAL_RCC_GPIOx_CLK_ENABLE()使能對應GPIO端口的時鐘。這是最常忘記的一步2)模式輸出設備確認是推挽輸出OUTPUT_PP還是開漏輸出OUTPUT_OD。3)引腳確認硬件連接和代碼定義的引腳號一致。問題串口能發(fā)送但不能接收或接收亂碼排查1)波特率確保發(fā)送端和接收端波特率、數(shù)據(jù)位、停止位、校驗位完全一致。2)電平如果是3.3V MCU與5V設備通信可能需要電平轉換。3)接線TX接RXRX接TXGND共地。4)中斷/DMA配置如果使用中斷或DMA確保已正確開啟并使能中斷服務函數(shù)或回調(diào)函數(shù)已實現(xiàn)。5)緩沖區(qū)溢出中斷接收處理太慢導致新數(shù)據(jù)覆蓋舊數(shù)據(jù)。優(yōu)化代碼或使用DMA空閑中斷。問題定時器不準計算定時器計數(shù)頻率 定時器時鐘源 / (PSC 1)。中斷周期 (ARR 1) / 計數(shù)頻率。首先確認定時器的時鐘源是否正確是否被APB預分頻器影響了。例如STM32F1的APB1總線定時器時鐘是系統(tǒng)時鐘的2倍這個細節(jié)很容易忽略。注意HAL_Delay()依賴于SysTick中斷如果在其他高優(yōu)先級中斷里長時間執(zhí)行會導致HAL_Delay不準確。對于精確定時應使用硬件定時器。問題I2C或SPI通信失敗I2C1) 確認上拉電阻通常4.7kΩ已接。2) 確認從設備地址正確7位地址左移一位后最低位是R/W位。3) 用邏輯分析儀抓取波形看起始信號、地址、應答、數(shù)據(jù)、停止信號是否完整。4) 檢查時鐘速度是否過快從設備跟不上。SPI1)模式模式模式用邏輯分析儀確認CPOL和CPHA與從設備匹配。這是SPI通信失敗的首要原因。2) 檢查片選信號CS的時序是否在通信前后正確拉低和拉高。3) 檢查時鐘極性確??臻e電平和采樣邊沿正確。6.3 系統(tǒng)與穩(wěn)定性問題問題程序偶爾跑飛或死機排查1)堆棧溢出這是最常見的原因之一。在FreeRTOS中增加任務的棧空間在裸機程序中可以在啟動文件里調(diào)整堆棧大小。2)數(shù)組越界或指針野指針訪問了非法內(nèi)存區(qū)域。使用調(diào)試器觀察程序跑飛時的PC指針位置。3)中斷沖突高優(yōu)先級中斷處理時間過長導致其他中斷丟失或系統(tǒng)異常。優(yōu)化中斷服務函數(shù)。4)電源干擾電機等大功率設備與MCU共用電源引起電壓跌落或毛刺。加強電源濾波或使用隔離方案。問題使用浮點數(shù)運算后程序變慢或體積暴增解釋對于沒有硬件FPU的Cortex-M3/M0內(nèi)核浮點運算是通過軟件庫實現(xiàn)的非常耗時。如果必須用盡量用float單精度避免double。對于M4/M7內(nèi)核確保編譯器選項啟用了FPU-mfpufpv4-sp-d16等并且代碼中在訪問FPU寄存器前已使能FPUSCB-CPACR | (0xF 20)通常啟動文件會做。學習STM32的過程就是一個不斷遇到問題、分析問題、解決問題的循環(huán)。開始時一個點不亮LED的小問題可能讓你糾結半天。但請相信每解決一個這樣的問題你對系統(tǒng)的理解就加深一層。多利用官方資料參考手冊、數(shù)據(jù)手冊、應用筆記、多逛社區(qū)論壇、善用調(diào)試工具最重要的是多動手多寫代碼多做項目。從閃爍LED到做一個四軸飛行器中間隔著的就是無數(shù)個這樣的小循環(huán)。這份筆記只是一個開始希望它能幫你打好基礎少走些彎路。剩下的路帶著好奇心和耐心大膽去走吧。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91成人国产综合久久精品蜜月| 天天日天天爽| 中文字幕天天天天天| 操逼操网| 青青草一区二区高清无码视频 | 青草成人免费视频一COm| 91狠狠综合久久| 日韩无码极品| 被男人添B超爽视频| 久久女女| 岛国天天午夜影院传媒网| 国产欧美成人精品| 久久久久久久久久久久久久9999| 久久免费99精品久久久久久| 久久岛国| 丰满人妻区一区二区三| 天天综合-91入口| 亚洲欧美91√| 亚洲天天做日日做天天谢日日| 人人摸人人舔一区二区| 亚洲成人性| 大屁股国产在线视频| 成人八戒网站| 国产精品久久久鸭无码的功能| 国产精品亚洲天堂网址| 91精品婷婷国产综合久久竹菊| 97激情97激情| 精品国产一区二区三区在线播出| 精品精品精品| 97ai亚洲| A片三级无码| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 江都AV在线| 国产美女91| 很很热性爱视频| 久久精品视| 无码精品啪啪啪一区二区三区三州| 欧美亚州色的图| 日va操| 国产精品久久伊人| 国产精品久久久777| 亚洲天堂AV在线播放| 无码精品人妻一区二区三区妖精 | 做爱A级亚欧| 欧美色图99| 久草尤物| 啊啊啊97视频| www久久99| 欧美久久人人网| 亚洲天堂日本| 玖玖资源中文字幕制服丝袜| 曰韩欧美国产传媒麻豆第一区| 激情露脸爱| 精品亚洲国产成人AV制服丝袜 | 中文有码9| 思思热国产在线视频| 久久精品女同亚洲女同13| A V少妇特黄三级| 亚洲综合伊人无码久久| 夜夜 中文视频rt| 操高情无码| 极品销魂美女一区二区 | 天美传媒av一区二区| 婷婷成人久久久精品| 99热综合| 欧美成人四级在线播放| 精品久久久久久AV无码| 佐山爱中文字幕| 国产自制av蜜乳| 啊啊啊爽爽| AV99热18这里只有精品| 樱花草社区www中国| 欧美日本久久精品一区 | 国产97视频免费观看| 欧洲免费一区二| 99热这里是精品| 国产亚洲精品玖玖玖在线观看| 久久久久久久久久久久黄色 | 亚洲综合九九| 久久久久久久久久久人妻| 婷婷综合五月天| 久久不卡一区二区| 97热视频在线观看| 日韩精品-原创伙伴| 青青色综合| AV色五月天| 日本爽爽爽爽爽爽免费视频| 久久免费少妇| 综合色区偷拍| 韩国一级婬片A片无码天美| 美女91AV| 另类天堂| 男人 天堂 日 亚洲| 久9久9精品| 99热超碰| 中日韩久久久免费看| 极品五月天噜噜| 日本黄 R色 成 人网站| 自拍偷拍2025在线观看| 噜噜噜久久亚洲精品色情| 在线观看十八禁| 色香网| 国产精品久久久无码aV去| 精品国产久热在线观看| 91路www| 麻豆伊人网| 婷婷丁香五月综合| 久久久工口| 欧美一二三区四五区| 密臀在线免费观看| 99精品丰满人妻| a片 xxxx受爽视频| 爱爱啊啊啊| 亚洲经典啪啪| 看黑丝美女操逼青青网站| 亚洲蜜臀精品视频久久| 3d成人精品一区二区| 日韩精品区二区三区不卡| 男人的天堂va| 91大神电影天堂| 天天澡天天爽日日AV| 天天视频网站黄| 亚洲人妻久久| 影音综合网| 激情小说图片亚洲首页| 天天日熟妇| 亚春色色| 亚洲不卡AV在线| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 99久久综合| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 美国aaaaa一级黄片| 天天操天天射青青草| 蜜臀久久99精品久久久久久无删减| 狠狠五月天| 黑人精品XXX一区一二区| 东京热毛片177b2viP| 香蕉99秘 精品一区丁香| 欧美丰满熟妇XXXX性ppX人交| WWW啪啪的com| 亚洲精品蜜桃久久久| 精品 码产区一区二-1080P高清在线www-B029AV | 91网九色蝌蚪操熟女| 91老熟女91老女人| 亚洲精品成人动漫在线| 亚洲久久久久| 酒色综合网| 久久理论字幕视频| 黄色av一区二区在线| 9丨亚洲一区二区在线| 91无码西班牙视频在线| 久久精品导航| 久久久精品网| 亚洲高清91| 国产亚洲精品玖玖玖在线观看| 国产精品3| 嗯嗯啊啊啊好爽| 97操在线| 日本精品一区二区三| 国产原创精品| 国产精品网站www| 婷婷伊人一区| 日韩欧美俄罗斯A片| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 久久神马| 91精品国产一区三一| 99热这里都是精品| 久区视频| 国产辣妈在线视频福利| 国产一区二区三区免费视频在性观看| 成人无遮挡毛片免费看| 成人精品一区二区91毛片不卡| 91香蕉视频在线观看免费| 国产又猛又粗又爽又黄| 免费强奸av| 成人性爱美曰韩| 亚洲无线码一区国产欧美国| 五月丁香狠狠爱| 亚洲av热热色| 国产中午字一暮区| JIZZJIZZ亚洲女人被躁| 韩国毛片一区二区三区| 女人香蕉久久毛毛片精品| 中文字幕99999| 亚欧免费| 九九热精品免费视频| 国产久久一区二区| 欧美激情精品久久久久久| 综合操逼| 久 久无码人妻AV| 为用户提供免费看黄网址在线观看| 亚洲蜜乳av| 久久99视频| 丝袜狠狠草尤物人妻av91| 熟妇国产免费一区| 久久精品国产亚洲妲己影视| 熟妇操花| 人妻无码一区二区三区久久99| 96久久久| 久久久中文| 手机在线播放国产福利| 久久日本熟妇熟色高清| 久久伊人最新网址视频| 精品超碰中文在线| 九九九免费视频| 亚卅熟女乱色| 欧美一二级| 欧美福利视频啊啊啊啊| 97色冈| 91国产丝袜美女| 超碰4A| 午夜亚洲国产理论秋霞| 91嫩草欧美| 亚洲在线欧美| 丁香婷婷激情五月天无毒不卡| 亚洲欧美不卡线| 玖玖97综合| 亚州综合色| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 啊啊啊啊好疼| sss视频华人在线| 久久久久久九九九| 成人毛片免费| 校园春色欧美色图| www.高清无码诱惑一区.com| 另类小说欧美激情校园春色| 青青草视频久久| 亚洲激情在线| 高清不卡视频| 人人摸人人干人人拍97| 亚洲欧美天堂| 东北女人操比视频| 啪啪啪大香蕉| 国产一级特黄大片处女| 精品久久97观看在线视频| 久久精品免费| 91呆哥人妻| 一区AV| 亚码人妻| 亚欧中文字幕在线视频| 欧美精品自慰系列寂寞少妇| 秋霞成人一级在线观看| 日日爱99| 外国免费性情大片| 日影院久久婷婷夜夜网| 欧美色图天堂网m| 狠狠狠狠狠狠| 国产91精品福利在线| 婷婷色色五月天福利| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 12一15性XXXX粉嫩国产| 亚洲中文字幕久久无码精品| 色狠狠 - 百度| 大香蕉免费3| 91bbb| 一起草三级AV电影在线观看 | 国产精品久久久久久久久AV大片| 99久久网站| 亚洲精品男人的天堂| 97中文超碰| 超碰欧美在线欧美| 国产精品久久久啊| 欧美日韩精品一区二区三区高清| 7777欧美成是人在线观看| 中文字幕五区| 国产欧美后入| 嗯啊视频免费在线观看| 人人摸人人干| 午夜精品久久久久久久| 国产中出内射一区二区| 日本99视频| 人妻内射一区二区在线视频| 欧亚日韩中文在线| 操逼日韩无码 | 51一区二区三区| 国产精品ⅴ无码大片在线看.| 日韩av影片在线观看| 亚洲人在线| 98久久| 人人色人人操在线| 天躁夜夜躁2021| 日韩探花精品在线视频| 都市激情人妻一区二区青青操视频| 俞拍久久国应视频| 人人摸人人干| 超碰97中文| 熟女这里只有精品6| 亚洲天堂东京热| 日韩欧美午夜视频在线| 婷婷导航| 五月开心久久AV官网| 国产一区二区精品在线视频| 蜜屁av| 欧美黄色手机在线观看| 91精品啪在线观看国产城中村| 久久老子无码午夜伦不卡| 亚洲有薄码区日本系列中文字幕| 久久中文色图| 国产久久久久久| 国产精品久久久久亚洲av| 99免费在线视频| 日韩美女高潮喷水视频| 97美日韩视频| 色一色综合网| 狠狠色综合网| 沈阳熟女高潮对白视频| 国产精品人妻一区二区| 超碰免费在线| 亚洲第二页| 在线可观看的黄色网址| 啊啊啊快操我视频| 呦呦一区| 国产原创精品| 高清有码一区二区| 夜夜操91744565| 91性片| 超碰成人最新最好看| 超碰免费人人| 麻豆精品.欧美精品.日韩精品.| www..com操老师| 亚洲综合99999| 国产在线观看91精品一区| 四虎影库国产精品免费| 国产精品久久久久无码Av网曝门| 无码一区二区三区四区五区六区七区八区九区十区视频 | 天天插天天操| 99草精| 久久久久久波多野吉衣高潮| 日韩人妻一区二区| 国产视频一区二区三区久久亚洲天堂 | 大地资源在线观看中文第二页| 亚洲涩涩| 丁香五月色情| 天天干人人干天天日97| 我爱操| 97天天搞在线| 国产色呦呦| 偷拍综合网| 五月天欧美色图| 99超级碰免费视频| 久久伊人最新网址视频| 麻豆黄站| 妇女视频网站| 国产精品久久伊人| 国产在线视视频有精品| 夜夜骑日日| 色五月网址| 国模无码一区二区三区在线| 色婷婷国产精品一区在线观看| 日本精品88888888| 欧美在线视频99| 亚洲日韩视频二区| 亚洲 在线| 日影院久久婷婷夜夜网| 欧美人妻精品| 麻豆天美久久91| 亚洲精品久久久久久久蜜桃臀| 国产在线视频二区| 色九九九综合| 蜜臀精品1区2区| 色999人与兽| 91久久午夜无码鲁丝片久久人妻| 欧美亚洲宗合色性图| 青青五月天| 亚洲乱码国产乱码精网站| 曰韩精品九九无码| 俞拍自拍| 视频一区二区三区精品| 久久精品性| 动漫av中文| 国产精品久久久 | 天美精品原创av片国产| 一区二区影院| 日韩精品99久久久久久中文字幕| 超碰地址久久| 日韩欧美中文| 欧美一区二区三区成人性生活| 熟女激情综合网| 欧美日韩理论一区| 三男一女不戴套的A片| 亚洲天堂综合AV| 欧美久热| 九九热免费国产视频婷婷伊人五月 | 久久综合日韩亚洲欧美| 日韩成人在线性爱视频| 女人的天堂大香蕉网| 日韩三级在线观看mp4| 五月婷婷综合网| 五月丁香婷婷综合| 综合激情五月丁香| 美女91AV| 一区二区三区黄色片a| 国产久久一区二区三区野外在线| 午夜男女爽爽爽影院视频| 伊人青青草久久| 日韩AV无码中文一区二区| 亚洲欧美校园| 蜜臀在线免费观看在线免费观看| 国产精品日本无码A片| 偷拍在线观看视频| 婷婷爱五月| 蜜乳AV.COM| 成人一二三区| 目产99999久久999| 情侣开房子拍 日韩无码 女的很漂亮| 爱妃国产亚洲视频中文字幕| 日日日日做夜夜夜夜做无码97| 三级三久久线久久99久目本WW| 精品亚洲一区在线观看| 综合熟妇一区二区三区| 青青草乱入乱欲视频在线观看| 艹少妇网站| 岛国片在线视频网站| 91丝袜| 超碰97首页| 久久偷拍人| 四虎影库国产精品免费| 97久久网| 免费看欧美美女黄色大片| chaopen97久久| 亚洲综合另类小说色区亚洲成av人片在www| 色亚洲欧美| 欧美人妻制服| 久久9久久| 日本操大逼| 激情专区综合| 成人aⅴ一区二区三区| 一级性爱aaaa| 亚洲精品819| 啊啊啊不要啊啊受不了了视频在线| 亚洲AV不卡在线观看尤物| 久久九精品| 欲综合网| 免费少妇一区二区| 你懂得91| 天天天肏屄欧美| 天干天干天干天天做| 欧美性爱第1 页| 欧美顶级黄色大片免费| 国产亚洲人妻综合日韩 久久| 亚洲AV乱码专区国产噜噜亚洲| 91欧美性| 少妇人妻好深太紧了vr91| 亚欧国产无码精品在线| 91原创在线观看| 嗯嗯啊啊好大好爽| 久久精品久久久久久久久| 99精品成人免费看| 少妇天堂网络| 无人区高清电影免费观看一区二区三 www.qmcai2.com | www.色婷婷| 四虎视频在线观看| 91人人操| 色播综合| 小骚逼被操的爽不爽| 26uuu最新| 婷婷久久综合| 久久久少妇诱惑精品视频| 91精品国产91久久福利| 99re3这里只有精品| 蜜乳av一区二区三区| 97色碰| 日韩精品在线观看网站| 色超碰综合| 96久久久| 久久久亚洲精品电影免费看| 午夜精品久久久久久久第一页按摩| 欧美另类综合久久| 97色诱| 成人小电影网站tex| 色色婷婷丁香| 97精品网站| 尤物黄色在线观看网站| 欧美亚洲性爱一区二区| 久久色网| 白丝1区2区3区| 一二三区视频在线观看| 91婷婷| 日韩电影天堂视频一区二区| 岛国在线一区二区三区| 亚洲天堂人人妻| 欧美成人免费在线观看| 区一在线观看| 91丨九色丨国产丨人妻在线| 国内操逼视频二区| 国产在线强奸视频| 九九九九九九九九九五码| 伊人久久综合精品欧美| 亚洲文学偷乱拍啪啪啪啪| 岛国黄| 九九热精彩视频| 日韩无码一级黄色av片| 亚洲熟女乱熟乱熟妇综合网二区| 欧美一二三级精品在线| 欧亚日韩三区| 人妻中文字幕日韩电影| 91综合天天| www.久久爱| 国产日韩久久| 欧美久久婷婷| 黄色av一区二区在线| 97亚洲色图| 日韩偷拍色图| 欧美丰满少妇xx高潮| 大香蕉十区| 一级毛片久久久久久久女人18| 最新av在线| av片在线观看免费播放| 精品午夜福利| 97天天弄| 日本久久99| 国产91av在线播放| 国产自啪精品视频网站黑丝| 五月婷婷色| 亚洲AV无码秘 蜜桃臀国精产品| 裸体1区| 婷婷天堂站| 神马久久久久| 欧洲亚洲人人爽爽视频| 香蕉99秘 精品一区丁香| 波多野结衣一级视频| 一区二区播放| 麻豆久久久久久久久丝袜| 亚洲第一无码播放立川理惠| 91色综合| 一本色道久久综合亚洲二区三区| 67194无码不卡| 青青草天天亲夜夜操网| 亚洲性爱电影| 熟妇色99| 亚洲性感丝袜诱惑在线观看| 欧美狠狠操| 丁香五月天啪啪| 国产精品久久久无码aV去| 欧美综合亚洲| 亚洲自拍欧美色综合| 熟女丰满人妻一区| 天天做日日爱夜夜爽| 国产色图乱伦| 国产激情在线| 99精品热| 97人妻色| 激情AV| 亚欧Av| 国产高清精品一区二区三区毛片| 600国产精品视频| 中文久久一区| 久久婷婷在线观看视频| 青青草操逼逼视频| 美中日韩无码| 久久精品国产亚洲AV片多多| ,成人免费啪啪视频| 狼人狠干| 伊香蕉综合久久久久久久噜噜噜| 黄色成年| 日韩日韩日韩-国产乱码精品一区二区| 台湾佬中文娱乐自偷自拍| 色色综合网站| 91操操| 欧美国产日韩高清在线| 亚洲黄色a级片| 情趣丝袜无码操逼视频| 另类TS人妖一区二区三区| 97在线免费观看视频| 91色亚洲| 91N综合网| 青青草公开在线免费不卡视频| 欧美精品,四区。五区| 日韩精品电影| 亚洲综合九| 久久久专区| 啊啊啊不要啊啊受不了了视频在线 | 91久久青青草原精品| 天天噜| 97天天| 肏逼视频日本| 天天视频黄| 亚洲伊人久久综合97| 黑人娇小av在线播放| 国产91av在线播放| 秋霞成人做爱| caoni国产亚洲av| 精品久久无码午夜福利| 亚洲精品国产熟女久久久久久| 亚洲国产奇米影视久久| 成人亚欧免费视频| 日本三级大片| 好爽,再快点啊哈嗯嗯嗯嗯| 好吊色一区| 欧美暴力猛交| 2017,超碰| 国产高清成人免费视频| 日本国产亚洲一区在线观看| 亚洲自拍偷拍视频在线| 99久久久er直播网址| 欧美特大黄一级片片免费| 国产AV高清AV无码| 天操天操夜操夜月操月年年操| 97爱亚洲综合色| 国产精品久久久久久久久久久久久久久久| 99re在线视频| 91视频综合| 国产操偷| 麻豆2区1区天美| 中文伊人大香蕉视频| 亚洲黄a三级三级三级看三级| 精品无人区麻豆乱码1区2区图片 | 二色av| 97干日韩| 超碰视97中文| 国产精品白丝在线播放 | 91在线欧色| 青娱乐手机日韩在线视频| 久久精品28| 波多野结衣一级视频| 国产福利影视| 91 丝袜在线观看| 2017天天插| 一级@啪啪视频| 狠狠综合| 天天操熟妇| 成人性爱免费播放| 婷婷综合网站| 超碰 av 女人天堂| 国产午夜精品一区二区三区牛牛| 一二三四视频中文字幕在线看| 久久美女福利是上海美女| 热久日综合| 91一区二匹| 亚洲国产高清福利视频| 婷婷五月天基地| 限制级中的三级片中的黑粗大屌屌日人妻熟女| 综合伊人网12色| 国产超碰在线| 九九热re99re6在线精品| 激情 欧美 亚洲 小说| 成人情色一区二区| 91蜜桃传媒精品久久久一区二区| 狠狠色噜噜狠狠狠狠2018| 五月丁香影视| 2020中文字幕在线| 人人看人人爰人人操 | 亚洲无码超碰免费| 超碰在线974| 亚洲欧美伦综合| 日本在线视频导航| 91色噜噜狠狠| ji熟女.com| 成 人 影视 一区 二区 三区 四区| 亚洲激情久久久伊人综合| 久久精品人人做人人看| 国产无遮挡| 国产精品视频内谢女人| 亚洲无套久久嗯嗯| 成年人免费观看网站| 国产精品美女视频诱惑| 丰满欧美少妇| 神马久久久久| 操九九九九九九| 欧美精品庄| 天天摸,夜夜摸| 亚洲少妇视频| www.99视频| 激情五月天中文字幕色| 好湿好紧好爽 视频| 天天躁日日躁狠狠躁| 欧美 亚洲 大香| Sekablack无码一区| 99精品热| 欧美性爱精品一区二区| 大茄子熟女AV导航| 91一区二区| a片久久久久久久久久久久 | 欧美78| 天天干夜夜一操| 五月天人妻综合| av国产无码| 日本一区二区中文字幕久久| wwe 天天干.com| 丰满岳乱妇一区二区三区| …中文字幕亚洲乱,97人妻无码费视…| 乱论91| AV色女综合| 欧美狠狠操| 精品久久久久av影院| 亚洲男人天堂视频| 97任你吞精| 曰韩人妻中文字幕在线 | 午夜亚洲国产理论秋霞| 色踪合AV| 人人天天欧洲| 欧美大香蕉专区网| 国产精品视频在线观看| 歐美一級亂黃99在綫精品| 大伊香蕉在线视频免费| 天天综合-91入口| 东京成人一区| 裸体美女免费看网站青草| 2024年最新色情网站在线观看| 嗯嗯嗯啊啊啊干死我吧| 天天天天天天天天天天干美女| 亚洲色宗合| 999 久久久| 九九久久精品| 淫荡熟女乱伦网| 亚洲图片欧美色| 亚洲欧洲无码一区夜| 成年女人一区| 日本人人操人人操| 污色区网站| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 无码黑人精品一区二区三区三| 美女91网址 | 欧美在线大香999| 蜜桃久久综合视频| 日韩中文字幕人妻视频| 蜜臀久久久99久久久久 | 亚洲日本成人动漫| 国产av又色又爽又黄| 操b在线观看| 97久久超碰国产精品| 少妇三P| 美女黄页| 99操视频| 凸凹视频在线观看| 日本激情免费大片| 日韩有码 一区二区三区| 啊啊啊啊好疼| 91日韩网站| 9精品久久| 天操天操夜操夜月操月年年操 | 久久精品—区二区三区内射| 天天天操天天天爱| 久久99精品国产| 绯色AV粉色AV蜜臀AV| 天天干天天干天天干| www.婷婷| 国产99 中文字幕日韩小视频| 日本人妻中文字幕精品| 伊人一区二区在线播放| 青青色在线观看| 欧美日韩小说| 草草草草视频| 伊人九九九| 无码二级三级| 另类欧美色| 欧美大的香蕉有线电视视频| 亚洲 另类 丝袜 自拍 动漫| 国产成人精品午夜福利| 亚洲爱爱视频一区二区| 人夜夜精品网站香蕉嫩草| A V少妇特黄三级| 伊人AAA| 在线性黄高清免费视频| 激情综合网五月婷婷| 凸凹视频在线观看| 成人小说视频在线精品欧美| 91午夜无码| 日韩色欲久久一二三四区| 操我无码| 日韩无码成人电影| 天天爽天天操| 青青青青草av在线观看| 亚洲情色一区综合| 玖玖蜜臀资源网| 欧美天天综合站| 嗯嗯啊啊好大好爽| 人人澡人人澡人人| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 黑人黄片在线免费观看| 九九黄色网| 精品一区二区三区蜜桃臀赵总 | 欧美人妻一区二区| 高颜值美女口爆高潮浪叫| 9长久久精品| 校园春色AV天堂| 99re免费| 国产一级内射高清视频| 国产免费操逼| 色欲天天综合网| 久久av色| julia ann久久| 国产馆| 久久五月天婷婷丁香中文字幕| 免费簧片在线观看| 成人精品在线观看| 久草婷婷| 国产日本顶级一区二区三区| 91免费看一区二区三区 | 日韩中字av一区| 97超级欧美| 日日躁夜夜躁狠狠躁超爽| 亚洲一区二区在线观看91| 亚洲天堂中文字| 男人天堂久久精品| 欧美精品偷拍| 大色网久久| 激情抓乳插进去啪啪啪日韩| 人人爱人人操人人性| av优播| 人妻少妇精品无码专区二区密桃| 精品国产乱码久久久久久日本公司| 久久久久久9| 国产精品麻豆视频网站| 久操大香蕉手机视频在线看| 国产精品久久久久久久久久久久久久久久 | 亚洲va有码在线天堂| 亚洲色图超碰在线| 激情婷婷丁香| 亚洲国产美女久久久久| 色播综合| 97精品国产精品免费观看| 女人天堂av在线播放| 综合操逼| 男人的天堂色偷偷青青草视频婷婷网| 国产精品农村妇女| 日韩亚洲中文字幕在线| 色五91| 国产91 丝袜在线播放| 日韩无码a片| 久久一区无码| 午夜美女诱惑电源网| 久久九九国产精品| 熟女欧美日韩综合婷婷| 屁股久久久久久久| 激情婷婷| 亚洲欧美变态| 国产精品不卡一区二区三区av| 国产精品爽爽va在线观看98| 一区二区三区四区姦女| 热99这里有精品综合久久 | 日本久久超碰| 欧美黄色片AAAAA| 熟妇一区,二区,三区。| 中日韩熟女| 在线情色电影 91大| 免费一级精品啪啪视频| 日韩av一级黄片| AV久日| 99久久久无码国产精品性男| 97干综合网| 在线强奷到舒服的无码视频| 日本中文字幕熟妇| 国产乱伦亚洲| 久久偷偷色综合蜜桃| 日韩一区二区高清在线观看的| 日韩一级二级在线| 亚州综| 综合影院亚洲| 中文字幕在线免费观看 | 思思热久久成人| 欧美一区二区三区成人性生活| 国产综合网站在线播放 | 91青青草| 天天日天天插| 免费试看60秒| 中文字幕av久久爽Av| 91香蕉国产尤物视频| 国产精品情侣啪啪| 美国日韩黄片| 国产有码一区| 亚洲第一精品在线视频| 色五91| 超碰免费人妻在线| 美女的肌被草喷水视频| 青青久久艹| 91女网站| 久久riav中文精品| 日韩综合97P| 亚洲AV无码久久久国产精品| 久久久久久久9999| 丁香五月激情综合| 欧美日韩插逼视频| 欧美久久久| 成人性爱电影网| 麻豆亚洲AV成人无码久久精品| 久久麻豆一区二区| 国产精品懂色tv影视免费观看| 欧美香蕉视xxx| 高清无码在线播放网站| 屁股久久久久久久久| 91精品丝袜在线观看| 殴美性天天| 97蜜桃综合| 久久受www免费人成| 成人十八禁日韩欧美一二三| 欧美人妻精品一区二区| 中文字幕青青草| 亚洲欧洲小说图片视频 | 成人性爱av| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 亚洲限制级| 日本亚洲熟女视频| 91精品无码久久久久久久| 粉嫩av一区二区三区四季| 伊人成人中文字幕久久网| 国产久久成人| 久久69| 婷婷美人网| 蜜桃久久综合视频| 欧亚乱色熟女一区二区| 超碰九7免费| 亚洲天堂美臀在线| av优播| 国产三级中文有码在线视频| 99re免费| 极品出轨视频网站| 午夜福利在线视频1000| 天美国产三级传媒| 91九色精品熟女内射| 国产91会所女技师在线观看| 欧成人精品H无码| 欧美色图片色哟哟| 九九九久久久久| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 97超碰人操| 一区二区三区四区姦女| 久久久久久亚洲精品不卡人乳| 青娱乐欧美激情一区二区| 久久男人的天堂| 日本二三四区| 九九超碰综合网| 99re热| 美女黑人91神马| 中美日韩毛片| 色 婷97| 亚洲精品丝袜| 日本三级小说中文字幕| 开心五月激情网| 久久久久9| 日本黄 R色 成 人网站| 欧美少妇性爱网站| 亚洲成人一区二区精品| 人人操人人插人人摸人人干| 国产黄色剧情影片麻豆免费播放| 久久久96| 日韩一级性爱无码| 屁股久久久久久| 亚洲色图一区二区三区| 人人操欧美风骚| 色欲久久99国产精品久久久久久| 丝袜视频网国产90| 精品久久97| 久久91| 淫荡网址| 激情天天视频| 欧美成人A天堂片在线观看| 欧美一二三级精品在线| 操逼免费视频无码国产| 国产精品自拍xxxx| 国产乱子伦久久精品综合一区二区三| 果冻传媒A片麻豆熟妇人妻| 久久精品久久久久久久| 99久久99久久免费精品蜜臀| 天天噜| 日本黄大片在线观看视频| 丁香六月激情| 无套内射人妻在线播放| 一区三区啪啪| 久久,精品一二三| 亚洲国产欧美日韩人妻日中文| 毛片17S| 91操人| AV天堂因数| 免费视频一二三区| 免费αV在线视频| 日韩视频啪啪| 欧美性爱在线无码| 超碰日本97美女人妻人人玩人人爱| 一区二区三区日韩欧美| 亚洲少妇在线影音| 久久精品操| 操逼网站网站| 欧美人妻久久精品二区三区| 一级性爱aaaa| 很黄很污的免费网站| 99re在线精品78| 亚洲另类色综合网站| 男人的天堂 在线一区| 太久视频| 日韩美脚一区二区网站| 97高清啪啪| 亚洲精品乱码久久久久久蜜桃麻豆| 99精品人妻| 国产操逼视频在线观看| 丁香婷婷久久| 久久久久久9999| 超碰97国产欧美| 日本操逼视频不卡直接放| 亚洲av无码成人精品国产| 第四色色综合91| 日产成人久久| 欧美高清无码免费视频高清版| 99热在线观看| 97大色网| 久久婷婷苹果| 天天草夜夜草高潮片| 欧美亚洲玖玖玖| 九九九精品色乱九九九| 亚洲开心网| 婷婷久久五月| 射丝袜大香蕉| 曰韩中文人妻视频| 性一交一乱一交A片久久四色| 岛国人妻少妇av在线观看| 欧美激情在线观看视频| 成人无码电影在线观看网| 天天流夜夜操| 日日97| 国产h小视频在线观看免费| 青娱乐国产盛宴视频| 亚洲免费人妻在| 青青草色情网站视频| 97超碰9| h无码动漫在线观看| 日韩精品三区四区| 乱欲性色| 香蕉精品二区二区| 成人三一级一片aaa| 国产丝袜美腿美女麻豆| WWW.操逼.COM| 大香蕉啪啪网| 伊人国产视频| 欧美一区二区男人天堂| 久久美女国产| 后入内射蜜桃臀| 九九九精品美女| 人妻熟女av国产网站| 97欧美色综合| 果冻国产精品麻豆成人av| 日韩欧美成人大香蕉| 中文字幕三四五区| 99热成人| 超清中文乱码字幕| 五月天色色网站| 欧美另类丝袜熟女| 91日本在线观看| 久久黄黄黄| 尤物国产一区在线观看| av草草在线电影| 啊视频在线| 外国免费性情大片| 我要看免费韩日黄片| 可乐操亚洲蜜911| 色婷婷电影网| 97欧美超碰| 欧美日不卡| 91精品国产91久久青草| 亚洲中文字幕乱码无码一区二区| 看日韩黄片| 精品久久在线区一区| 国产在线综合网| 日日夜夜青青草母狗| 国色综合天| 91网站18在线观看| 国产成人超碰在线| 久久久99999久网站| 性色AV网站| 亚洲91网站| 国产日本久久免费精品| 日本Suv精品一区二区| 欧美香蕉视xxx| 1024午夜激情男人的天堂| 操逼操网| 精品视频久久| 18精品一区| 欧美亚洲色图另类国产| 欧美日韩系列| 又大又黄国产| 麻豆三极片| 九七毛片九九毛片| 婷婷五月天色色| 凹凸视频在线一区二区| 97玖玖人妻| 欧美视频一区二区在线| 成人性交午夜免费片| 97一区二区蜜臀| 韩国一级婬片A片无码天美| 人人操人人精品影片| 91xingse| 激情视屏国产乱伦强奸| 天天日骚逼熟女| 天综合中文| 亚洲成人久久一区二区| 60秒不遮不挡| 丁香五月大香蕉| 国产最新小视频在线播放下载| 婷婷五月天色网| 色女99一级片在线观看| 日韩欧美传媒一区国产| 久9久9精品| 人妻激情偷乱视频一区二区三区 | 边做饭边操逼逼| 操一区| 蜜臀久久99精品久久久老,,| 日本精品无码三级网站| 九九热九九| 欧美|91色综合| 亚洲第一无码播放立川理惠| 国产精品一区二区a| 97在线播放| 国产亚卅97| 五月丁香色色网| 久久九九视频九九视频| 日本不卡二区| 久久久精品,3| 嗯嗯啊啊好疼| 精品无码一区二区| 婷婷亚洲天堂| 中国一区二区亚洲人妻| 欧美成人精品一区二区男人蜜臀| 射欧美综合| 亚洲 欧美 中文 日韩超碰| 新版天堂中文资源8在线| 亚洲无码超碰免费| 欧美激情内射| 精品久操| 果冻传媒A片一二三区| 亚洲免费97免费| 黄色网址久久精品欧美喷水| 日本污ww视频网站| 亚洲成人无码影院| 操B视频日韩无码| 麻豆天美传媒毛片| 亚洲AV永久无码精品成人调教| 国产欧美黑人丰满在线| 大香蕉在线视频重口味毛片在线| 95精品在线| 亚洲精品视频在线| 在线看免费无码AV天堂的| 干日本人少妇午夜寂寞影院| 久久久精品91八戒| 91N综合网| 精品视频一区二区| 啊啊啊啊,啊啊好多水| 加勒比性爱成人在线| 美女91av| 欧洲精品久久| 中文字幕文字幕无码一区二区三区电影99 | 人妻精品4K4K4K4K4| 亚洲另类久操网| 欧美.亚洲.另类.丝袜.制服.诱惑| 丝袜 亚洲 偷拍| 国产又色又爽又舒服的三级视频 | 99re视频在线播放青草| 欧美另类丝袜熟女| 欧美91色| 亚洲 欧美 日韩另类 麻豆| 92大香蕉| 97碰碰色| 国产偷人妻精品一区二区在线| 北京美女一区二区| 成人一区二区三区四区| 一区二区三区成人| 999熟女精品| 蜜臀无码一区二区| 国产超碰97| 九九热三级片| 夜夜草天天| 中文精品一区二去|