国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

STM32定時(shí)器輸入捕獲驅(qū)動(dòng)設(shè)計(jì):從PWM測(cè)量到多路信號(hào)處理實(shí)戰(zhàn)

STM32定時(shí)器輸入捕獲驅(qū)動(dòng)設(shè)計(jì):從PWM測(cè)量到多路信號(hào)處理實(shí)戰(zhàn) 1. 項(xiàng)目概述PWM輸入捕獲在藍(lán)橋杯嵌入式賽題中的核心地位如果你正在準(zhǔn)備藍(lán)橋杯嵌入式組的比賽那么“PWM輸入捕獲”這個(gè)功能點(diǎn)絕對(duì)是你繞不開、必須啃下的硬骨頭。它不像簡(jiǎn)單的GPIO點(diǎn)燈那樣直觀也不像串口通信那樣有現(xiàn)成的輪子PWM輸入捕獲往往隱藏在賽題對(duì)“信號(hào)測(cè)量”、“電機(jī)測(cè)速”、“脈沖計(jì)數(shù)”等需求背后是區(qū)分選手水平的關(guān)鍵技術(shù)點(diǎn)之一。我參加過也指導(dǎo)過多次比賽發(fā)現(xiàn)很多同學(xué)在實(shí)現(xiàn)一路PWM測(cè)量時(shí)還能勉強(qiáng)應(yīng)付但一旦題目要求同時(shí)測(cè)量?jī)陕飞踔粮嗦沸盘?hào)比如同時(shí)測(cè)量?jī)蓚€(gè)電機(jī)的轉(zhuǎn)速程序就立刻變得混亂不堪要么測(cè)量不準(zhǔn)要么互相干擾最終導(dǎo)致整個(gè)系統(tǒng)功能崩潰。這個(gè)項(xiàng)目標(biāo)題“一路PWM輸入捕獲和兩路輸入捕獲驅(qū)動(dòng)快速編寫及常見問題”精準(zhǔn)地戳中了備賽過程中的兩大痛點(diǎn)效率和穩(wěn)定性?!翱焖倬帉憽币馕吨覀冃枰惶浊逦⒛K化的驅(qū)動(dòng)框架避免每次比賽都從頭造輪子而“常見問題”則直指那些讓程序跑飛、數(shù)據(jù)跳變的隱蔽陷阱。本文將基于STM32平臺(tái)藍(lán)橋杯嵌入式競(jìng)賽指定平臺(tái)深入拆解PWM輸入捕獲的原理分享一套經(jīng)過實(shí)戰(zhàn)檢驗(yàn)的、可同時(shí)穩(wěn)定驅(qū)動(dòng)一路標(biāo)準(zhǔn)PWM輸入和兩路通用輸入捕獲的驅(qū)動(dòng)代碼框架并附上那些在官方手冊(cè)里找不到的“踩坑”實(shí)錄與解決方案。無論你是初次接觸定時(shí)器捕獲功能還是想優(yōu)化自己的代碼結(jié)構(gòu)這篇文章都能提供直接的、可“抄作業(yè)”的參考。2. 核心思路與方案選型為什么是定時(shí)器輸入捕獲模式在開始寫代碼之前我們必須搞清楚“輸入捕獲”到底是什么以及為什么它是測(cè)量PWM波形的首選方案。PWM脈沖寬度調(diào)制信號(hào)的核心參數(shù)是頻率和占空比。測(cè)量它的方法有很多比如外部中斷配合普通定時(shí)器計(jì)時(shí)或者使用輸入捕獲模式。注意對(duì)于藍(lán)橋杯賽題強(qiáng)烈建議一律使用定時(shí)器的輸入捕獲模式而不是外部中斷軟件計(jì)時(shí)。后者在測(cè)量高頻信號(hào)、多路信號(hào)時(shí)會(huì)大量占用CPU資源并極易因中斷嵌套和響應(yīng)延遲導(dǎo)致測(cè)量誤差巨大屬于事倍功半的方案。輸入捕獲模式的精妙之處在于它將“檢測(cè)邊沿”和“記錄時(shí)刻”這兩件事全部交給了定時(shí)器硬件自動(dòng)完成。其工作原理可以概括為當(dāng)指定的輸入引腳上發(fā)生預(yù)設(shè)的邊沿事件如上升沿時(shí)定時(shí)器硬件會(huì)瞬間將當(dāng)前計(jì)數(shù)器的值CNT鎖存到專用的捕獲/比較寄存器CCRx中并可以產(chǎn)生中斷。我們只需要在中斷服務(wù)函數(shù)中讀取兩次捕獲到的計(jì)數(shù)器值它們的差值就代表了兩個(gè)邊沿之間的時(shí)間間隔再乘以計(jì)數(shù)器的時(shí)鐘周期就能得到高電平或低電平的脈寬。對(duì)于一路標(biāo)準(zhǔn)PWM輸入捕獲STM32的定時(shí)器提供了一個(gè)“PWM輸入模式”這實(shí)際上是輸入捕獲模式的一個(gè)特殊應(yīng)用。它利用了兩個(gè)捕獲通道通常是CH1和CH2一個(gè)捕獲上升沿一個(gè)捕獲下降沿并且自動(dòng)將兩個(gè)通道關(guān)聯(lián)到同一個(gè)輸入引腳。這樣在一次捕獲周期內(nèi)硬件自動(dòng)完成了周期和占空比的測(cè)量非常高效。但它的限制是一個(gè)定時(shí)器只能測(cè)量一路PWM信號(hào)。當(dāng)賽題要求同時(shí)測(cè)量?jī)陕份斎胄盘?hào)可以是兩路PWM也可以是兩路頻率信號(hào)時(shí)PWM輸入模式就不夠用了。這時(shí)我們需要回歸到基礎(chǔ)的兩路獨(dú)立輸入捕獲方案。通常有兩種配置思路單定時(shí)器雙通道使用一個(gè)定時(shí)器的兩個(gè)捕獲通道如CH1和CH2分別捕獲兩路不同的輸入信號(hào)。這種方法硬件資源利用率高但兩路信號(hào)共享同一個(gè)計(jì)數(shù)器基準(zhǔn)需要注意中斷邏輯和資源競(jìng)爭(zhēng)。雙定時(shí)器使用兩個(gè)獨(dú)立的定時(shí)器各自負(fù)責(zé)一路信號(hào)的捕獲。這種方法邏輯清晰互不干擾但消耗的定時(shí)器資源較多。在藍(lán)橋杯競(jìng)賽中CT117E開發(fā)板資源有限我們需要精打細(xì)算。我的實(shí)戰(zhàn)經(jīng)驗(yàn)是如果兩路信號(hào)需要非常精確的同步測(cè)量或者頻率較高優(yōu)先考慮方案2雙定時(shí)器。如果資源緊張且兩路信號(hào)測(cè)量要求相對(duì)獨(dú)立方案1單定時(shí)器雙通道經(jīng)過精心設(shè)計(jì)后也能穩(wěn)定工作。下文將分別給出這兩種場(chǎng)景下的驅(qū)動(dòng)實(shí)現(xiàn)。3. 驅(qū)動(dòng)框架設(shè)計(jì)與模塊化思想直接寫一堆混雜在main.c里的中斷服務(wù)函數(shù)是備賽大忌。一個(gè)好的驅(qū)動(dòng)框架應(yīng)該達(dá)到以下目標(biāo)接口清晰、配置靈活、與業(yè)務(wù)邏輯解耦。我們將驅(qū)動(dòng)分為三個(gè)層次硬件抽象層HAL/LL庫(kù)配置利用STM32CubeMX生成初始化代碼或直接編寫寄存器/標(biāo)準(zhǔn)庫(kù)代碼完成GPIO、定時(shí)器、中斷的底層配置。驅(qū)動(dòng)接口層封裝核心的捕獲邏輯提供諸如PWM_In_Start()、PWM_In_GetFreq()、PWM_In_GetDuty()等函數(shù)。這一層負(fù)責(zé)處理原始計(jì)數(shù)器值計(jì)算頻率和占空比并管理捕獲狀態(tài)機(jī)。應(yīng)用層調(diào)用驅(qū)動(dòng)接口層的函數(shù)獲取測(cè)量結(jié)果用于屏幕顯示、邏輯判斷或控制輸出。這里重點(diǎn)分享驅(qū)動(dòng)接口層的設(shè)計(jì)。我們需要定義幾個(gè)關(guān)鍵的結(jié)構(gòu)體和全局變量來管理捕獲狀態(tài)。// PWM輸入捕獲結(jié)構(gòu)體 (用于標(biāo)準(zhǔn)PWM輸入模式一路) typedef struct { TIM_HandleTypeDef *htim; // 定時(shí)器句柄 uint32_t IC_Channel; // 輸入捕獲通道 volatile uint32_t period; // 周期值 (單位: 定時(shí)器計(jì)數(shù) ticks) volatile uint32_t pulse; // 高電平脈寬值 (單位: 定時(shí)器計(jì)數(shù) ticks) volatile float freq_hz; // 計(jì)算后的頻率 (Hz) volatile float duty_cycle; // 計(jì)算后的占空比 (%) volatile uint8_t is_updated; // 數(shù)據(jù)更新標(biāo)志 } PWM_In_Capture_t; // 通用輸入捕獲結(jié)構(gòu)體 (用于兩路獨(dú)立捕獲模式) typedef struct { TIM_HandleTypeDef *htim; uint32_t IC_Channel_Rising; // 上升沿捕獲通道 uint32_t IC_Channel_Falling; // 下降沿捕獲通道 (若只測(cè)頻率可只用一個(gè)) volatile uint32_t last_capture_rise; // 上一次上升沿捕獲值 volatile uint32_t last_capture_fall; // 上一次下降沿捕獲值 volatile uint32_t period_ticks; // 周期計(jì)數(shù) volatile uint32_t pulse_ticks; // 脈寬計(jì)數(shù) volatile uint8_t capture_stage; // 捕獲階段狀態(tài)機(jī) (0:等待上升沿, 1:已捕獲上升沿等下降沿...) volatile uint8_t is_valid; // 本次測(cè)量是否有效 } Dual_Input_Capture_t;使用結(jié)構(gòu)體的好處是當(dāng)需要管理多路捕獲時(shí)比如一路PWM輸入兩路獨(dú)立捕獲你可以輕松定義多個(gè)實(shí)例例如PWM_In_Capture_t pwm1;和Dual_Input_Capture_t cap1, cap2;代碼結(jié)構(gòu)非常清晰。4. 一路標(biāo)準(zhǔn)PWM輸入捕獲的快速實(shí)現(xiàn)我們以STM32的TIM2定時(shí)器通道1PA0引腳為例實(shí)現(xiàn)標(biāo)準(zhǔn)PWM輸入模式。使用STM32CubeMX配置最為快捷將PA0配置為TIM2_CH1。打開TIM2選擇“PWM Input Mode”。你會(huì)發(fā)現(xiàn)CH1和CH2會(huì)被自動(dòng)配置。CH1被映射到TI1輸入用于觸發(fā)CH2被用于捕獲。配置預(yù)分頻器PSC和自動(dòng)重載值A(chǔ)RR。這是關(guān)鍵ARR的值決定了你能測(cè)量的最大周期。例如定時(shí)器時(shí)鐘為72MHzPSC設(shè)為71則計(jì)數(shù)器時(shí)鐘為1MHz1us計(jì)數(shù)一次。若ARR設(shè)為65535則最大可測(cè)周期為65.535ms對(duì)應(yīng)最小頻率約15.26Hz。你需要根據(jù)賽題信號(hào)的可能范圍來調(diào)整這兩個(gè)參數(shù)。開啟定時(shí)器更新中斷和捕獲/比較中斷。生成的初始化代碼后我們編寫中斷服務(wù)函數(shù)和驅(qū)動(dòng)接口。核心邏輯在HAL_TIM_IC_CaptureCallback()這個(gè)回調(diào)函數(shù)中。// 全局PWM捕獲結(jié)構(gòu)體實(shí)例 PWM_In_Capture_t g_pwm_in; void PWM_In_Init(TIM_HandleTypeDef *htim) { g_pwm_in.htim htim; g_pwm_in.is_updated 0; // 啟動(dòng)輸入捕獲使用HAL庫(kù)通道2用于捕獲 HAL_TIM_IC_Start_IT(htim, TIM_CHANNEL_2); // 啟動(dòng)從模式下的觸發(fā)輸入通道1 HAL_TIM_IC_Start(htim, TIM_CHANNEL_1); } // 定時(shí)器輸入捕獲中斷回調(diào)函數(shù) void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim) { if (htim-Instance g_pwm_in.htim-Instance) { // 讀取捕獲值 uint32_t capture HAL_TIM_ReadCapturedValue(htim, TIM_CHANNEL_2); if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC2OF)) { // 發(fā)生了捕獲溢出說明兩次中斷之間CPU太忙沒來得及處理數(shù)據(jù)可能不可靠 __HAL_TIM_CLEAR_FLAG(htim, TIM_FLAG_CC2OF); // 可以在這里設(shè)置一個(gè)錯(cuò)誤標(biāo)志 } // 判斷是上升沿還是下降沿捕獲在PWM輸入模式下硬件自動(dòng)設(shè)置。 // 通常我們直接利用兩次連續(xù)捕獲值來計(jì)算周期和脈寬。 // 更穩(wěn)健的做法是結(jié)合定時(shí)器溢出次數(shù)來計(jì)算長(zhǎng)周期。 static uint32_t last_capture 0; uint32_t diff 0; if (last_capture ! 0) { // 計(jì)算差值注意計(jì)數(shù)器溢出 if (capture last_capture) { diff capture - last_capture; } else { diff (htim-Instance-ARR 1) - last_capture capture; } // 判斷是周期還是脈寬在PWM輸入模式下硬件會(huì)將TI1的上升沿和下降沿分別路由到CH1和CH2。 // 但HAL庫(kù)的回調(diào)不區(qū)分邊沿。一個(gè)更清晰的方案是在CH1和CH2的中斷里分別處理。 // 這里提供一個(gè)簡(jiǎn)化的、在CH2中斷中處理的計(jì)算思路假設(shè)信號(hào)穩(wěn)定 // 我們連續(xù)記錄三次捕獲值差值1是脈寬差值2是周期-脈寬。 static uint32_t cap_buf[3] {0}; static uint8_t idx 0; cap_buf[idx] capture; if (idx 3) idx 0; // 當(dāng)緩沖區(qū)有3個(gè)有效值時(shí)進(jìn)行計(jì)算 if (cap_buf[0] ! 0 cap_buf[1] ! 0 cap_buf[2] ! 0) { uint32_t diff1 (cap_buf[1] cap_buf[0]) ? (cap_buf[1] - cap_buf[0]) : (htim-Instance-ARR 1 - cap_buf[0] cap_buf[1]); uint32_t diff2 (cap_buf[2] cap_buf[1]) ? (cap_buf[2] - cap_buf[1]) : (htim-Instance-ARR 1 - cap_buf[1] cap_buf[2]); // 通常較小的差值是脈寬高電平較大的是低電平寬度 g_pwm_in.pulse (diff1 diff2) ? diff1 : diff2; g_pwm_in.period diff1 diff2; // 一個(gè)完整周期 // 轉(zhuǎn)換為實(shí)際物理量 float timer_clk 72000000.0f / (htim-Instance-PSC 1); // 計(jì)算定時(shí)器計(jì)數(shù)頻率 g_pwm_in.freq_hz timer_clk / g_pwm_in.period; g_pwm_in.duty_cycle (g_pwm_in.pulse * 100.0f) / g_pwm_in.period; g_pwm_in.is_updated 1; // 設(shè)置更新標(biāo)志 } } last_capture capture; } } // 應(yīng)用層獲取數(shù)據(jù)的函數(shù) uint8_t PWM_In_GetValues(float *freq, float *duty) { if (g_pwm_in.is_updated) { *freq g_pwm_in.freq_hz; *duty g_pwm_in.duty_cycle; g_pwm_in.is_updated 0; // 清除標(biāo)志 return 1; // 成功獲取新數(shù)據(jù) } return 0; // 數(shù)據(jù)未更新 }實(shí)操心得PWM輸入模式雖然方便但其中斷回調(diào)邏輯容易混淆。上述代碼中利用環(huán)形緩沖區(qū)計(jì)算周期和脈寬的方法比較穩(wěn)健。更推薦的做法是直接使用寄存器級(jí)別操作在TIMx_IRQHandler中根據(jù)捕獲標(biāo)志位如TIM_FLAG_CC1、TIM_FLAG_CC2來分別處理上升沿和下降沿這樣邏輯最清晰效率也最高。HAL庫(kù)的通用回調(diào)函數(shù)有時(shí)會(huì)掩蓋這些細(xì)節(jié)。5. 兩路獨(dú)立輸入捕獲的驅(qū)動(dòng)實(shí)現(xiàn)當(dāng)需要測(cè)量?jī)陕藩?dú)立信號(hào)時(shí)我們采用單定時(shí)器雙通道的方案例如TIM3的CH1和CH2演示如何測(cè)量頻率。如果需要占空比則需要每個(gè)信號(hào)占用兩個(gè)捕獲通道。配置要點(diǎn)以TIM3_CH1-PA6 TIM3_CH2-PA7為例配置PA6、PA7為復(fù)用功能映射到TIM3_CH1和CH2。配置TIM3設(shè)置合適的PSC和ARR。將兩個(gè)通道都配置為輸入捕獲模式邊沿選擇為“上升沿”。開啟兩個(gè)通道的捕獲中斷以及定時(shí)器更新中斷。驅(qū)動(dòng)層實(shí)現(xiàn)關(guān)鍵我們需要兩個(gè)獨(dú)立的結(jié)構(gòu)體實(shí)例并在中斷中根據(jù)通道號(hào)來區(qū)分和處理。Dual_Input_Capture_t g_cap_ch1 g_cap_ch2; void Dual_Input_Capture_Init(TIM_HandleTypeDef *htim) { // 初始化結(jié)構(gòu)體 g_cap_ch1.htim htim; g_cap_ch1.IC_Channel_Rising TIM_CHANNEL_1; g_cap_ch1.capture_stage 0; g_cap_ch1.is_valid 0; g_cap_ch2.htim htim; g_cap_ch2.IC_Channel_Rising TIM_CHANNEL_2; g_cap_ch2.capture_stage 0; g_cap_ch2.is_valid 0; // 啟動(dòng)兩個(gè)通道的輸入捕獲中斷 HAL_TIM_IC_Start_IT(htim, TIM_CHANNEL_1); HAL_TIM_IC_Start_IT(htim, TIM_CHANNEL_2); // 啟動(dòng)定時(shí)器 HAL_TIM_Base_Start(htim); } // 輸入捕獲中斷回調(diào) void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim) { if (htim-Instance TIM3) { // 判斷是哪個(gè)通道的中斷 if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC1) ! RESET) { __HAL_TIM_CLEAR_FLAG(htim, TIM_FLAG_CC1); _process_capture(g_cap_ch1, TIM_CHANNEL_1); } if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC2) ! RESET) { __HAL_TIM_CLEAR_FLAG(htim, TIM_FLAG_CC2); _process_capture(g_cap_ch2, TIM_CHANNEL_2); } } } // 定時(shí)器更新中斷溢出中斷回調(diào)用于處理長(zhǎng)周期測(cè)量 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { if (htim-Instance TIM3) { // 為每個(gè)通道的溢出計(jì)數(shù)加一如果結(jié)構(gòu)體里有這個(gè)字段的話 // g_cap_ch1.overflow_count; // g_cap_ch2.overflow_count; } } // 內(nèi)部處理函數(shù) static void _process_capture(Dual_Input_Capture_t *cap, uint32_t channel) { uint32_t current_capture HAL_TIM_ReadCapturedValue(cap-htim, channel); switch (cap-capture_stage) { case 0: // 第一次捕獲到上升沿 cap-last_capture_rise current_capture; cap-capture_stage 1; break; case 1: // 第二次捕獲到上升沿計(jì)算周期 if (current_capture cap-last_capture_rise) { cap-period_ticks current_capture - cap-last_capture_rise; } else { // 發(fā)生了計(jì)數(shù)器溢出需要結(jié)合溢出次數(shù)計(jì)算這里簡(jiǎn)化處理 cap-period_ticks (cap-htim-Instance-ARR 1) - cap-last_capture_rise current_capture; } cap-last_capture_rise current_capture; // 更新為新的上升沿 // 計(jì)算頻率 float timer_clk 72000000.0f / (cap-htim-Instance-PSC 1); cap-freq_hz timer_clk / cap-period_ticks; cap-is_valid 1; // 標(biāo)記數(shù)據(jù)有效 // 狀態(tài)機(jī)可以保持在1等待下一個(gè)上升沿繼續(xù)計(jì)算周期 break; } } // 應(yīng)用層獲取通道1頻率 uint8_t Dual_Input_GetFreq_CH1(float *freq) { if (g_cap_ch1.is_valid) { *freq g_cap_ch1.freq_hz; g_cap_ch1.is_valid 0; // 讀取后清除標(biāo)志 return 1; } return 0; } // 同理實(shí)現(xiàn)GetFreq_CH2注意事項(xiàng)上述兩路捕獲代碼共享同一個(gè)定時(shí)器計(jì)數(shù)器。這意味著如果兩路信號(hào)頻率相差很大高頻信號(hào)的中斷可能會(huì)頻繁打斷低頻信號(hào)的處理但測(cè)量值本身捕獲的CNT值是硬件鎖存的所以頻率測(cè)量值仍然是準(zhǔn)確的。主要影響是CPU中斷負(fù)荷。如果兩路信號(hào)頻率都很高需要考慮使用DMA進(jìn)行捕獲或者使用兩個(gè)定時(shí)器來徹底隔離。6. 常見問題、調(diào)試技巧與避坑指南在實(shí)際編寫和調(diào)試過程中你會(huì)遇到各種各樣的問題。下面是我總結(jié)的“血淚”清單問題1測(cè)量值跳動(dòng)非常大完全不準(zhǔn)??赡茉駻定時(shí)器時(shí)鐘和分頻設(shè)置錯(cuò)誤。這是最常見的問題。務(wù)必確認(rèn)HCLK、APB1/APB2的時(shí)鐘頻率以及定時(shí)器所在的總線。STM32中如果APBx預(yù)分頻系數(shù)不為1掛載在其上的定時(shí)器時(shí)鐘會(huì)倍頻。最穩(wěn)妥的方法是在代碼中打印出SystemCoreClock以及htim-Instance-PSC的值手動(dòng)計(jì)算計(jì)數(shù)頻率??赡茉駼ARR值設(shè)置過小。如果輸入信號(hào)的周期大于定時(shí)器計(jì)數(shù)器溢出一次的時(shí)間就會(huì)發(fā)生溢出。你需要確保ARR設(shè)置得足夠大使得(ARR1) / 計(jì)數(shù)器頻率 待測(cè)信號(hào)最大周期?;蛘吣惚仨氶_啟定時(shí)器更新中斷在中斷中記錄溢出次數(shù)在計(jì)算時(shí)結(jié)合溢出次數(shù)和捕獲值。可能原因CGPIO引腳復(fù)用錯(cuò)誤。檢查原理圖確認(rèn)你使用的引腳確實(shí)支持該定時(shí)器的該通道。使用CubeMX檢查引腳配置沖突。問題2只能捕獲到第一次邊沿之后再也進(jìn)不了中斷。可能原因中斷標(biāo)志未清除。在中斷服務(wù)函數(shù)中讀取捕獲值后必須清除對(duì)應(yīng)的捕獲/比較中斷標(biāo)志位。使用HAL庫(kù)時(shí)HAL_TIM_IRQHandler會(huì)幫你清除但如果你像上面示例那樣直接操作標(biāo)志位就必須手動(dòng)清除TIM_FLAG_CCx。忘記清標(biāo)志是導(dǎo)致中斷只觸發(fā)一次的經(jīng)典錯(cuò)誤。問題3兩路捕獲互相干擾一路有信號(hào)另一路就沒數(shù)據(jù)??赡茉蛑袛鄡?yōu)先級(jí)沖突或處理時(shí)間過長(zhǎng)。確保兩路捕獲中斷的優(yōu)先級(jí)設(shè)置正確默認(rèn)都是0。如果在一路捕獲的中斷處理函數(shù)中進(jìn)行了非常耗時(shí)的操作如浮點(diǎn)計(jì)算、LCD刷新可能會(huì)導(dǎo)致另一路中斷被延遲響應(yīng)甚至丟失。解決方案是中斷里只做最必要的事記錄捕獲值、設(shè)置標(biāo)志將復(fù)雜的計(jì)算如換算為頻率、占空比放到主循環(huán)或低優(yōu)先級(jí)任務(wù)中。問題4測(cè)量低頻信號(hào)如1Hz以下誤差大。原因與解決低頻信號(hào)周期長(zhǎng)ARR必須設(shè)置得非常大這會(huì)降低計(jì)數(shù)分辨率。更嚴(yán)重的是計(jì)數(shù)器可能會(huì)溢出多次。必須開啟定時(shí)器更新中斷并維護(hù)一個(gè)“溢出計(jì)數(shù)器”。計(jì)算周期時(shí)周期 溢出次數(shù) * (ARR1) 本次捕獲值 - 上次捕獲值。這是測(cè)量低頻信號(hào)的標(biāo)配操作。問題5使用HAL庫(kù)的HAL_TIM_IC_CaptureCallback無法區(qū)分是哪一路通道的中斷。解決這正是HAL庫(kù)封裝帶來的一個(gè)小麻煩。推薦的方法是不完全依賴這個(gè)通用回調(diào)。你可以重寫定時(shí)器的全局中斷服務(wù)函數(shù)TIMx_IRQHandler在里面先調(diào)用HAL_TIM_IRQHandler(htimx)然后立即檢查具體的中斷標(biāo)志位進(jìn)行后續(xù)處理?;蛘呦癖疚氖纠粯釉贖AL_TIM_IC_CaptureCallback中再通過__HAL_TIM_GET_FLAG來主動(dòng)判斷是哪個(gè)通道觸發(fā)的。調(diào)試技巧利用示波器這是最直接的調(diào)試工具。用示波器觀察輸入引腳的波形確認(rèn)信號(hào)是否真的到達(dá)單片機(jī)其電壓、頻率、占空比是否在預(yù)期范圍內(nèi)。軟件仿真在Keil或STM32CubeIDE的調(diào)試模式下使用邏輯分析儀功能Signal Trace可以模擬輸入PWM信號(hào)并觀察捕獲寄存器的變化非常適合驗(yàn)證底層驅(qū)動(dòng)邏輯。打印調(diào)試信息通過串口將關(guān)鍵的中間變量打印出來比如捕獲的原始計(jì)數(shù)器值、計(jì)算出的周期ticks等。這能幫你定位問題是發(fā)生在硬件捕獲階段還是軟件計(jì)算階段。7. 進(jìn)階優(yōu)化與資源管理策略當(dāng)賽題功能越來越復(fù)雜系統(tǒng)資源定時(shí)器、中斷變得緊張時(shí)我們需要更精細(xì)的策略。策略一DMA定時(shí)器捕獲對(duì)于需要極高頻率、連續(xù)不斷采集脈沖的應(yīng)用如高速編碼器可以使用DMA將捕獲寄存器的值自動(dòng)搬運(yùn)到內(nèi)存數(shù)組中。CPU只需要在數(shù)組半滿或全滿時(shí)處理一批數(shù)據(jù)大大降低了中斷頻率。這在藍(lán)橋杯高級(jí)應(yīng)用中可能會(huì)遇到。策略二輸入捕獲與輸出PWM共用定時(shí)器一個(gè)定時(shí)器有多個(gè)通道可以同時(shí)用于輸入捕獲和輸出PWM。例如用TIM2的CH1做PWM輸出控制電機(jī)用CH2做輸入捕獲測(cè)量另一路信號(hào)。關(guān)鍵點(diǎn)在于PWM輸出和輸入捕獲的時(shí)鐘源、預(yù)分頻、計(jì)數(shù)模式必須一致。通常配置為向上計(jì)數(shù)PWM輸出模式1/2。這樣做可以節(jié)省一個(gè)定時(shí)器資源。策略三低功耗下的捕獲考慮如果設(shè)備有低功耗要求在測(cè)量間歇性信號(hào)時(shí)可以讓定時(shí)器在無信號(hào)時(shí)停止由外部中斷喚醒并啟動(dòng)定時(shí)器進(jìn)行捕獲。這需要對(duì)定時(shí)器的從模式、觸發(fā)源有更深的理解。資源分配建議針對(duì)CT117E板TIM2/TIM3/TIM4通用定時(shí)器功能齊全PWM、輸入捕獲、編碼器接口等是主力。TIM1/TIM8高級(jí)定時(shí)器功能更強(qiáng)帶死區(qū)控制等適合復(fù)雜的電機(jī)控制但資源更寶貴?;径〞r(shí)器TIM6/TIM7只能用于基本定時(shí)不能做輸入捕獲。 在規(guī)劃時(shí)優(yōu)先把需要輸入捕獲的功能分配到通用定時(shí)器上并提前規(guī)劃好各通道的用途避免沖突。最后驅(qū)動(dòng)代碼的穩(wěn)定性和效率最終要靠大量的測(cè)試來驗(yàn)證。建議你建立一個(gè)簡(jiǎn)單的測(cè)試用例用另一個(gè)定時(shí)器產(chǎn)生已知頻率和占空比的PWM信號(hào)輸入到你的捕獲引腳然后驗(yàn)證測(cè)量結(jié)果是否準(zhǔn)確。通過反復(fù)的“產(chǎn)生-測(cè)量-比對(duì)”循環(huán)你能最快地定位和解決驅(qū)動(dòng)中的問題。把這些模塊調(diào)試穩(wěn)定后封裝成獨(dú)立的.c/.h文件它們就會(huì)成為你應(yīng)對(duì)藍(lán)橋杯嵌入式賽題的可靠武器庫(kù)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91丝袜视频在线观看| 78精品| 91麻豆天美国产欧美高潮| 久久久五月天| 国产强奸超碰AV| 一区二区视频在看| 中文字幕神马久久| 四虎影视在线| 91 在线亚洲| 国产精品福利视频播放| 日韩本不卡视频在线观看 | 亚洲成人碰碰| 综合欧美日韩在线观看| 午夜性刺激视频免费观看| 伊人久久蜜月| 日日夜夜青青草母狗| 日韩不卡a级视频专区| 亚洲影院无码在线| 变态综合色| 性站| 亚洲AV成人无码一区二区三区在线观看| 97天堂| 欧美激情精品| 蜜臀网址在线| 日韩久草| 男人把坤坤插入女人的下体| 色欲色香天天天综合网www-亚洲综合国| 国产精品老师| 曰韩av中文字幕专区| 亚洲小电影免费涩涩成人在线高清| 97亚洲综合| 欧美熟妇色| 人妻黑丝袜电影| wwe 天天干.com| 久久午夜伦| 亚洲AV永久无码一区仙野| 最新国内自拍av免费| 97天天摸天天爽| 97人人夜| 亚洲美女30b| 日韩人妻精品久久久久| 99久久综合| 蜜臀国产AV中文字幕| 亚洲强奸乱伦影视网| 老熟女乱子伦中文字幕一区二区| 久久首页| 国产黄片精品在线| 嗯啊抽插大香蕉网页| 国产一区二区三区久久久精品| 91在线精品一区二区三区| 久久久久97| 91蜜臀人妻中文字幕在线| 久久亚洲色图中文字幕| 欧美熟妇亚洲版| 91国产大片| 欧美精品91| 大香蕉免| 性91| 人人 操人人 操人人| A级毛片在线看免费| 久久综合九色综合欧洲98| 97超碰久久| 亚洲伊人成综合成人网| 男人天堂黄片| 操逼操操操91| 理论久久婷婷网 8| 九X超碰| 久久久穴999| 亚洲人码13| 国产2.3.4区| 欧美加勒比| 乱伦一二三区| 人人操人人摸人| 另类天堂| 亚洲熟久久| 热G综合热G中文| 天天久久| 日本国产高清色www视频在线| 嗯啊抽插大香蕉网页| 国产AV激情无码久久无码| www.色操逼| 99国内精品| 女生自91网站| 最新无码国产| 黄色高清无码无码破解免费暗网| 青青11操操操操操操操操| 青青草吊丝| 男人的天堂久久狠| 国产树林里野战在线看| 爱做久久久久久| 1区2区3区在线视频| 性色av一区二区| 久久女婷| 欧美91精彩| 97国产精选| 日本色色视频网站| 九色97| 中文字幕免费观看| 天天网综合| h无码动漫在线观看| 99热色这里只有精品| 日本五十路在线| 综合久久99| 呦呦影院| 天天综合在线4| 天天天堂影视日韩亚洲91| 东京热一区二区中文字幕| 亚洲欧美综合| 亚洲人妻av| 综合欧美日韩在线| 国产家庭乱伦性爱视频| 嗯嗯,啊啊,国产精品| 亚洲欧美综合网站| 国产精品久久久鸭无码的功能| www.夜夜操| 99精品丰满人妻| a'v在线资源| 超91综合网| 青青草日韩无码| 一块操欧美| 久操操| 精品熟女呻吟久久91| 户外裸露刺激视频第一区| 青青草日本中文字幕| 欧美91精品国产自产| 久久精彩免费视频| 亚洲天天操| 可以看的av| 天天看精品动漫视频一区| 五月天激情网站| 久久精品国产亚洲粉嫩| 在线啊啊啊啊| 一本一道vs波多野结衣| 91 丝袜在线播放| 肉丝网站91| 无码高清操逼网址| 33044男人的天堂深夜备| 99ri精品| 精品一区二区三区国产| 91综合国产精品| 亚洲性感丝袜诱惑在线观看| 国产精品亚洲免费| 欧美日韩另类在线| 国产亚热在线久久| 中文字幕高清20页视频| 成人性爱av.com| 色综合99999| 无码精品一区二区三区潘金莲| A一级色女| 思思热在线| 超碰97欧美| 欧美 亚洲 大香| 人人操人人操人人操人人操人人操人人人11.CM | 五月婷婷六月丁香| 日韩免费av片高清无码| 啊啊啊久久久视频| 超碰久久性爱| 强奸乱伦动态污图免费| 色吧 综合| 天堂伊人久久| 亚洲国产欧美日韩人妻日中文| 秋霞免费无码视频日韩A片| 性影在线视频| 欧美激情精品久久久| 五月丁香成人网| 污色区网站| 97超碰精品成| 亚洲欧美国产中文字幕| 德国一二三不卡| 国产精品亚洲美女久久久久| 又大又长又粗又爽又黄| 强奸乱伦 亚洲一区| 美女爽到高潮91| 欧美视频第二页| 一起草AV| 色综合网1| 强奸乱伦亚洲第一页| 91欧美综合| 五月婷婷基地| 天天视频黄| 欧美综合天堂| 深夜激情| 久久99深爱久久99精品| 色眯眯射| 97在线免费观看| 天天搞欧美| 91精品国久久久久久无码| 亚洲日韩一区电影| 99色色| 尤物一级在线免费观看| 午夜AV人气不卡| 国产精品不卡av免费在线观看| 日曰骚久久精品| 青青草五月份天| 97 九色| 麻豆九九九| 玖色AV| 激情五月综合网| www.人人cao| 国产一级作爱毛片| 久久精品中文字幕无码l| 日韩黄片影院| WWW啪啪的com| 日韩性爱1级片视频| 精品人妻一区二区三区四区石在线| 亚洲一区二区av| 91N综合网| 色九久| 久久伊人影院| 久热一区二区| av毛片aaaaa免费看| 热思思免费视频| 国产强奸乱伦无码视频| 黄色片A级一区二区三区| 中文字幕天堂在线| 91夜夜蜜桃臀1区2区3区| 午夜成人福利影视| 丝袜美腿校园春色| 果冻传媒A片一二三区| 中文欧丝袜诱惑| 很狠操| 99色热| 成人小电影网站tex| 91 综合网| 欧美日韩中文视频播放| 成人蜜乳小视频网站| 98人妻精品一区二区色欲| 国内毛片热久久思思热| 精品亚洲国产成人精品| 99精品热| 一区二区不卡| 亚欧美无遮挡| 欧美激情综合| 欧美性爱在线无码| 久视频在线观看| 在线观看视频91| 日韩有码回春沙龙第一页| 久久九九97| 一区二区三区国产在线播放| 手机看片1025| 嗯嗯啊啊好疼| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 国产日产精品久久快鸭的功能介绍| 日韩亚洲精品一区二区| 人妻AV在线| 久艹伊人精品综合在线| 午夜精品探花| 好淫网一二三视区| 婷婷久草| 国产亚洲日韩欧| 色综合尤物| 国产精品91一样| 加勒比av网| 国产精品一区二区a| 另类 日韩 熟女| 九九热免费国产视频婷婷伊人五月| 蜜桃视频一区二区三区| 人妻天天爽天天爽三区| 久久久九97| 久久亚洲天堂| 日韩簧片免费看| 天天插天天插| 97操综合| 九月丁香婷婷色| 丁香六月天| 91高潮喷水美女| 丰满熟女一区二区三区在线播放| 啊视频在线| 亚洲和欧美裸体美女双飞视频| 蜜桃久久一区二区| 婷婷五月天成人网| 极品出轨视频网站| 日本123区操B视频| 女上位精品在线| 欧美性爱18观看| 少妇99成人麻豆| 国产日韩美女小穴视频网站不卡| 日韩亚洲中文有码视频| 色av中文字幕| 久久久久久亚洲Av无码精| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 欧美综合狠| 一级特黄aaa大片在线观看成人一级片在线观看 | 在线观看亚洲专区| 日产成人久久| 91强奸乱轮| www.男人天堂| 欧美成人A天堂片在线观看| 久久久久久久国产a∨| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 又黑又大又粗| 色五月av| 九九九九88| 国产一二三在线视频五十路| 天天舔天天| 久9九综合在线| 婷婷中文字幕| 欧美性色网| 日本天天操| 天天综合97| 江都AV在线| 无遮挡男女激烈动态图| 夜夜福利| 五月丁香啪啪网| 精品人妻一区二区三区不卡断| 日韩午夜啪啪视频| 91免费看一区二区三区| 91天射| 天天操天天干一区二区 | 美女久久久| 亚洲综合色男人网| 国产无码三级视频在线观看| 成人熟女区| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 熟妇人妻一区二区| 操逼无码操逼| 久久久久921| 人、人、摸,人、人、草| 美女黄页网站| 亚洲伊人久久精品狠狠在线| 自拍偷拍亚洲熟女妇人精品| 97国产精品在线观看| 久久草大香蕉| 2024年最新色情网站在线观看 | 蜜臀久久久99久久久久 | 极品另类| 素颜老阿姨乱情色| 噜噜噜狠狠色综合| 日本αv| 午夜精品久久999热蜜桃介男人用| 免费中文在线| 国产精品又黄又猛又粗| 精品熟妇视频一区二区| 午夜天堂精品久久| 97中文字幕一区| 热久久精品| 99久久e免费热视| 久久啊啊啊| 久久精品夜色国产亚洲AV| 欧美日韩性爱视屏免费看了| 大屁股人妻女教师撅着屁股| 蜜臀99久久国产| 九热大香蕉| 97色在线| 毛片17S| 后入人妻无码| 久久婷婷六月综合| 久久国产性爱| 亚洲天天在线| 日骚逼视频| 97爱b| 久久久久久久极品香蕉视频| 日本操BAV| 免费A片三p视频| 久久久久九九九九九| 狠肏骚人妻| 色噜噜综合网| 久久99网站| 亚洲精品无码成人久久久99| 亚洲一区二区三区播放在线| 综合影院永久入口国产| av三级电影在线播放| 青草伊人网| 色五月激情AV在线| 久久久久9999妇女| 无码人妻丰满熟妇奶水区毛片| 九九热精品| 国产精点久久久成人| 国产精品原创巨作?v网站| 精品人妻一区二区三区四区不卡在| 亚洲日精品| 久久亚洲色图中文字幕| 国产天美传媒精品| 天操老女人| 欧美大片天天看| 免费看污网站| 丝袜喷水在线| 免费人人搞97| 久久久久久久久久黄色网| 中文字幕在线观看AV| 欧美综合骚| 国产天美欧美| 久久精品72| 精品人妻一区二区免费蜜桃| 少妇与黑人高潮在线| 亚洲人成色9999精品久久| 欧美后进式| 人人色97| 麻豆婷婷成人一二三| 亚洲永久AV无码精品秋霞| 九九英色视频| 亚洲熟女一区| 人妻少妇精品无码专区二区密桃| 国产精品伦理| 蜜臀久久99精品久久久久久-DVD原版全| 美女高潮国产高清| 性无码专区2020| 精品国产乱码| 91小视频| 婷婷四五区| 超碰在线人妻不卡| 丰满欧美放荡少妇在线| 一本久道久久综合狠狠爱一密臀精| 亚洲天堂男| 人人弄人人摸| 看日韩操逼| 六九九九| 91成人久久| 欧美性爱一区二区三区| 亚洲精品乱码线路中文字幕 | 日韩兔费看黄片| 精品人妻免费观看| HEYZO高无码国产精品227| 开心五月深爱五月| 欧美视频激情久久久久久| 91碰碰| 综合久久99| 手机看片日韩人妻| 日韩三级视频一区二区三区| 射欧美综合| 久久精品一区一起草| 中文操逼字幕| 欧美日韩国产色图在线| 97久久精品国产| 欧美淫乱视频| av天堂精品久久| 乱精品一区字幕二区| 中 文字幕一区二区三四 五 区日 日 骚 | 国产午夜福利视频在线| 久久日韩肥臀| 性在久久久久久| 天天综合亚在线| 亚洲性综合| 国产又黄又粗又猛大片| 国产一级αv免费看片| 综合亚洲情色| 熟女人妻一区二区三区免费看| 国产黄片精品在线| 天天操天天射青青草| 激情文学亚洲| 成年人黄色小视频网站| 不卡九肏| av毛片aaaaa免费看| 日本最新1区2区3区| 夜夜爽夜夜爽| 欧美日韩91| 中文字幕精品专区搜索结果91| 欧美人与动性人交a| 国产按摩一区二区三区| 日本一二三免费久久| 手机在线A片| 夜夜狼人妻| 久草新在线| 久久久97| 性高潮久久久久久久久久久| 色综合尤物| 日韩精品国模| 大香网站| 欧美线天码中字| 美女国产一区二区久久| 屁股久久久久久久久| 日本精品网站在线中文| 狠狠夜色午夜久久综合在线| 波多野42部无码喷潮在线观看| 一区=区三区视频| 乱欲视频| 欧美精品 - 91爱爱| 2021国产成人精品久久| 欧美亚洲丝袜美女电影| 美女操逼A A| 九X超碰| 久久久亚洲Av| 国产乱青青草久久| 91 亚洲 欧美 日韩 国产 综合| 97超碰总站| 亚欧性爱ab| 亚洲交换| 日韩精品99999| 午夜精品久久久久久久久久久久久 | 黑丝日韩av丝袜av| 精品午夜福利国产一区二区在线观看 | 欧美亚洲手机在线| 女人精品内射国产99| 综合网欧美在线| 久久色网| 国内97干免费看| 欧美亚洲另类在线蜜桃| 深爱伊人影院| 久久一区无码| 午夜亚洲国产理论秋霞| 精品女同一区二区三区| 日韩中字av一区| 嫩呦国产一区二区三区AV| 操逼短片| 精品国产乱码久久久久久影片| 久久超碰网| 久日91在线| 久操大香蕉| 26uuu最新| 1024午夜激情男人的天堂| 天天天天操| 亚洲精品国产日韩无码AV永久免 | 欧美日韩第一页| 97欧美日韩| 大香蕉99热| 717影院理论午夜伦八戒| 中文字幕三四区| 日逼五月天| 90后性网国产欧美| 涩综合导航| 亚洲蜜臀精品视频久久| 色女女女导航| 91干熟女| 无遮挡一级毛片视频免费的| 色爱亚洲| 91天天爽| 亚洲揄拍网| 99亚洲精品| 精品久久久久av影院| 玖玖久久久| 亚洲熟妇综合久久久久久| 999久久久九| 国产精品午夜高潮呻吟久久av| 美女啊啊啊啊啊啊啊| 日韩精品中文字幕一| 亚洲影院成人| 熟妇色99| 熟女少妇一区二区三区| 欧美国产操逼| 亚洲天堂情色| 97大色网| 歐美一級亂黃99在綫精品| 后入式五六区| 久久久∴| 色欲色香天天天综合网www-亚洲综合国| 99热亚洲| 4399成人黄A片| 蜜乳AV一区二区三区四| 久操com| 另类TS人妖一区二区三区| 精品欧美老熟女一二区| 91麻豆天美| 亚洲熟女诱惑| 亚洲图片91| 天天爱天天操| 999久久久九九九九| 久久97视频| 欧美九九九| 91成人亚洲色图| 丝袜天堂网| 毛片麻豆91糖心精品毛情片| 丰满丝袜少妇AV| 久久精品中文| 日韩av情韩国爱禁区av一区二区| 啊啊啊啊啊啊啊网址在线观看| 又摸又舔在线观看网站| 亚洲污一污二| 超碰久久草| 亚洲综合射| 九一国产精品| 日韩欧美久久婷婷网站| juliaann欧美丝袜办公室| henhen91| 91免费看一区二区三区| ,成人免费啪啪视频| 国产一区在线观看无码AV| 亚洲国产ⅴ高清在线观看| 久久爱超碰网| 后入式在线免费观看60秒| 亚洲天堂日本| 伊人性在线视频| 欧美色性情| 超碰免费人妻人人| 乱论91| www.色婷婷色综合| 人妻天天爽夜夜爽爽| 东北老女人的激情视频| 国产91专区| 色97干| 亚洲av无码国产精品字幕| 天天干天天燥| 免费综合亚洲中文| 精品国产一区二区久久| 小骚逼被操的爽不爽| 骚货 中文字幕 av| 热99这里有精品综合久久| 日本高清视频xxxx| 抽插无码高清一区| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 天天草夜夜草高潮片| 乱伦3P视频| 欧美日不卡| 丁香婷婷激情五月天无毒不卡 | 成人免费不卡在线视频| 欧美日日网| 1024手机看片欧美日韩| 97Ai亚洲| 欧美亚洲日韩16色| 91超碰在线观看| 91老熟女视频| 国产精品色片一区二区| 人妻久热在线| 97在线观看视频| 99这里只有精品国产| 97av在线视频| 国产精品天干天干综合网麻豆| 美欧色综合| 日韩欧美中文| 亚欧中文字幕在线视频| 极品色综合| 亚洲成人一区二区精品| 打av高清| 久久久96| av九九| 97超碰欧美手机在线| 丁香五六月啪啪| 色综合五月天| 91精品在线播放| 国产日韩欧美中文在线播放| 韩国轻伦国内自拍一区| 欧美草草高清日韩视频| 黄色视频特级毛片| 91丝袜美腿片| 欧美日韩国产另类综合| 1区2区3区在线视频| 97色操| 国模吧 一区二区三区| av天天在线| 国产乱伦亚洲色图高清无码| 日日操夜夜操天天操免费观看麻豆| 欧洲一级性爱视频在线观看| 好屌色综合| 欧美性爱日韩高清| 啊啊啊啊啊操我视频| 青青草福利视频| 99精品视频在线观看| 精品视频一区二区| 欧美一区二区亚洲天堂| 色偷偷综合91久久噜噜| 亚洲操逼无码| 亚洲欧美视| 牛黄色久午久| 91白虎| 婷婷中文字幕| 狠狠超| 久久手机视直播| 亚洲精品久久久久毛片A片拉屎| 97久久精品亚洲| 狠狠爱大香蕉| 99爱久久视频频| 成人精品在线免费视频| 男人的天堂.com| 亚洲AV麻豆Aⅴ无码电影一| 亚洲综合网图| 国产强奸乱伦xd| 都市激情人妻一区二区青青操视频| 嗯啊视频免费在线观看| 国产精品乱码久久久、久久| 午夜高清成人在线视频| 正宗无毛一线天嫩逼| 啊啊啊好爽快点啊啊啊嗯嗯| 亚洲日韩国产精品| 国产一级久久久| 国产一级特黄大片处女| 亚拍在线| 成人丁香五月| 乱伦熟女论坛| 91丝袜在线视频| av国产无码| 国产精品电影大全| 人人澡人人弄| 任你爽视频| 99婷婷一区二区| 日韩中文字幕宗合在线| 婷婷丁香熟妇综合网| 日本一级特级毛片视频| 日韩精品9区| 午夜黄色免费在线观看| 日韩在线国产字幕| 啊啊啊啊好大好硬啊啊啊啊啊| 超碰97人人乐| 亚洲天天艹| 亚州操逼图| 热热色中文无码| 东北女人的毛片| 久久久久国产无av| 明星性猛交ⅹxxx乱大交| 天天综合麻豆视频| 99国内精品| 91小视频| 久久无码一区二区二三区性色 | 色色色色网站| 一区二区三区美女超清| 欧美瑟综合| 国产福利夜| 91久久婷婷| 人人艹亚洲| 亚洲天堂男人网| 香蕉色网| 久久久久久久久久久久黄色 | 蜜区区视频79 | 色图综合网| 亚欧操逼片在线观看 | 久久黄黄黄| 99精品伊人| 美女诱惑1区2区| 国模吧 一区二区三区| 日欧操屄| 无码人妻精品酒店| 香蕉精品二区二区 | 天天做日日做天天欢。| 另类亚洲一区二区三区| 亚洲一区二区三区婷婷| 欧美,亚洲,日韩,v,天堂,手机在线观看| 97精品一二区| 麻豆国产尤物AV| 高清国产av无码| 国产精品激情久久久久久久| Sekablack无码一区| 精品视频在线观看| 国产精品久久久久久久久久久久久久吹| 91爱欧美| 亚洲网污污污污| 91丝袜激情在线| 欧美极品美女aaaaaa级黄片| 天堂网亚洲区手机版| 超碰精品人妻狠狠干| 免费成人在线熟妇网| 久久久久七视频| 日韩精品人妻系列无码天堂| 亚洲AV免费在线观看| 精品精品精品| 在线观看一卡二卡| 亚洲综合五月天婷婷丁香| 五月丁香激情综合| 91性高潮久久久久久久久| 偷窥自拍A片| 中国探花熟女| 日本岛国黄色网址| 天天日天天爽| 夜色五月天| 日夜啪电影| 91人妻视频在线| 精品国产一区二区三区久久久蜜臀 | 久久精品一区| 久噜噜| AV色图| 欧美综合狠| 蜜臀久久99精品久久久久电影| aV中文麻| 久久久999| 国产精品4p在线观看| 中文精品一区二去| 天天视频综合在线观看视频| 亚洲无码一区二区三区三州| 五月丁香婷婷色| 久操黄色视频| 久久亚洲熟妇在线视频| 久久亚洲色图中文字幕| 亚洲少妇自拍中文字幕懂色| 亚洲高清综合网| 免费岛国一级片| 欧美成人四级在线播放| 久久久免费一级黄片| 久久99综合| 夜夜操天天肏| 亚州九九九精品视频| 日本黄色精品| 亚洲一区在线观看欧洲 | 影音资源男人日韩| 久久加勒比| 人人操人人摸人人看人人插| 国产92麻豆天美精品色欲5| 99热aaa| 夜夜嗨老熟女AV一区二区三区| 天堂性色| 中国少妇XXXX做受| 99热精品在线| 美骚妇av高清在线| 99re这里只有| 亚洲自拍欧美色综合| 久久男人| 日韩精品人妻一| 日韩熟妇二区| 日韩综合97P| 欧美男人天堂| 小情侣高清国产在线视频| 曰韩欧美国产传媒麻豆第一区| av一区二区三区四区五区久草臀| 日日躁夜夜躁狠狠躁超爽| 精品久久久久久中文字幕三区| 伊人五月天| 一区二区视频你懂的| 美女网站91| 在线精品福利免费播放| 99999精品成人| 黑人性欧美| 亚洲熟女性高潮久久久| 午夜激情床戏激情| 久热这里| 欧美日韩精品一区二区三区高清| 熟妇女人妻呻吟久久AV| 欧美综色欧| 色乱二区| 久草草一二三四区久久| 中国熟女老妇仑乱一区二区三区| 午夜色婷婷| 东京热不卡视频| 国内精品嫩模A∨私拍小视频| 大香蕉人妻| 欧美日韩亚洲国产中文永久天天看| 强被迫伦姧在线观看无码网站| 午夜大香蕉| 人人操人人精品影片| 久久五十路熟女人妻| 亚洲综合码| 色99999| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 人人妻人人色| 久久日韩精品一区二区| 久久欧美1卡2卡3| 亚洲欧美另类图片| 色婷婷五月天| 久久老熟女| 日本女人操逼| 欧美欧美少妇| 91操操| 欧美日韩亚洲天堂| 92福利社视频| 热99re69精品8在线播放| 一起草av| 久久草草欧美精品| 天天干嫩逼网| 97亚洲国产影视| 91天天| 欧美熟妇精品黑人巨大一二三区| 凹凸视频在线一区二区| 国产夜夜艹| 无码直播久久久| 色天堂综合| 亚洲日韩美国人妻| 呻吟 欧美 日本 中出| 天天干天天操天天干天天操| rivers-china.com| 婷婷色婷婷| 超碰免费97| 日日A∨| 在线看片国产精品每日更新| AV男人天堂网| 欧美色五月| 日韩三级伊人| 丝袜美腿校园春色| 亚洲操逼视频网站| 欧美 亚洲 在线| 亚洲AV资源| www..com操老师| 亚洲好色人妻| 亚洲熟妇极品| 少妇一区二区三区精选| 久久偷偷色综合蜜桃| 九九综合久久| 久草精品国产99| 91伊人久久在线| 婷婷99狠狠躁天天躁| 熟女探花啪啪| 热热色色综合| 亚州情色j区| 国产极品精品美女视频| 密臀成人视频久久久| 久久天天摸| 亚州操逼图| 好吊色综合| 日韩精品9区| 口爆综合网| 乳欲人妻办公室奶水| 色臀AV| 另类 综合 日韩 欧美 亚洲| 久热伊人| 日韩性爱视频在线免费观看 | 密桃99999| 精品九九国产无码| 97精品一区二区视频| 熟女人妻精品一区二区视频| 欧美真人抽搐一进一出gif| 国产99 中文字幕日韩小视频| 2019天天操天天爽天天拍| 超碰97COm中文| 久久久久人妻二区精品叶可怜| 人人摸人人添人人操| 日本99视频| 日本97久久| 为用户提供免费看黄网址在线观看| A级毛片在线看免费| 中文字幕第23区| 丝袜六区| 日韩中文字幕在线视频观看| 亚洲国产成人精品久久久国产成人一区二区| 久久只有精品一区二区三区| 小草av不卡亚洲二区| 网页导航五月天免费一二三区| 国产精品999aaa| 天天舔日美女视频| 国产精品密臀网在线观看| 野狼激情网| 91黑人无码激情在线| 国产一区二区在线播放量| 欧美九九九九九| 99re在线视频这里只有精品| 诱惑人妻欧美一区在线播放| 不卡在线一区,精品一区二区三区中| 天天干天天燥| 日本欧美中文字幕| 久九九九九九九九热| 欧洲亚洲人人爽爽视频| 日本不卡二三区| 欧美日韩国第一区| 3571色综合一区二区二区| www欧美性爱| 91人妻中文| 探花一区二区三| 国产精品久久久久久高清无码免费看 | JULIA人妻风俗店中出电影| 国产免费一区二区在线A片视频| 亚洲一级特黄大片在线播放91| 国产午夜福利专区综合| 亚洲综合在线第一页| 婷婷激情丁香| 色噜噜人妻av中文字幕| 997色在线| 熟女91网| 骚熟女AV网| 日日骚av| 欧美亚洲系列| 九九九999久久久网站| 91蜜臀人妻中文字幕在线| 97超碰影音| 91N综合网| 91亚.色| 九七毛片九九毛片 | 韩日无码在线观看| 久久 亚洲 日韩 人妻| 偷拍欧美综合| 日韩伦理久 久久 清纯| 老熟女91av| 99操| 嗯,啊。舔我逼| 亚洲熟妇综合久久久久久| 国产91专区| 超碰九九| 精品黄色电影| 综合久久久久久久久91| 少妇高潮流水av免费| 狠狠操官网| 操逼逼福利视频| 久久HD| 91丨国产丨白浆| 久久天天躁日日躁狠狠躁 | 无码人妻精品一区二区三区99不卡| 中国操逼无码| 黄色AAAAAAAAAAA大片| JIZZJIZZ国产精品喷水| 涩五月婷婷| 亚洲精品蜜桃久久久一区二区三区| 一区中文字幕二区日韩| 97精选久久| 熟女少妇视频| 亚洲国产一级黄色视频| 成人八戒网站| 久久,精品一二三| 亚洲欧美日韩有码| 熟女露脸激情自拍视频| 久久久久久久久999| 岛国福利在线精品播放| 国产精品青草综合久久| 青娱乐 成人娱乐在线| 超碰午夜| 激情小说在线视频| 日韩成人性爱AV| 日本欧美韩国日产片片在线看免| 有码色中文字幕在线观看| 青青草中出视频| 亚洲欧美日韩制服另类| 中文字幕精品区先锋资源| 欧美v日韩欧亚洲电影天堂色诱,国产传媒 | 97国产超碰| 国产91精品福利在线| 夜夜爽77777| 欧美一区二区三区成人性生活| 亚洲丝袜综合| 福利在线观看一区二区| 精品国产自在在线99| 欧美在线|亚洲| 99久久久久久亚洲精品不卡| 99九九精品| 嫩草影院永久在线制服丝袜| 天天综合欧美| 在线观看黄色电话| 欧美色图私拍91| 日本男人天堂| 国产午夜无码片在线观看影视| 欧美日韩人人精品| 欧美热图99| 3P乱轮视频| 九热大香蕉| 人妻夜夜爽天天爽三区麻豆AV网站| 性色av网站| 男生女生啊啊啊啊| 九九九色| 色久综合| 9精品久久久久| 女人喷水视频在线观看| 青草香蕉网| 国产女同在线观看视频| 激情99| 日韩内| 国产精品三级视频网站| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 97亚洲国产影视| 色婷婷小说| 天美传媒精品久久视频| 日韩欧美国产一区二区三区四区| 日本97久久久精品| 色网站导航大全| 亚洲免费精品一区| 亚洲色欧美| 天天色悠悠激情| 亚洲欧美色图片| 久久精品一区二区三区不卡| 熟女熟妇一区二区三四区 | 中文视频在线观看| 99色视频| 免费视频一二三区| 五月丁香久久| 欧洲精品二区| 国产精品大香蕉| 精品国产乱码久久久久久久久久毛片| 中国一区二区亚洲人妻| 亚洲清纯唯美| 人看人人摸人人操| 久久9999| 欧美日韩第一页| 夜夜夜夜久久久久| 久久久久久国产精品| 欧美综合91| 国产日韩精品一区二区三区| 高清无码久操视频| 天天干天天中出av| 国模艳艳啪啪一区| 国产91专区| 五月婷婷基地| 91香蕉国产尤物视频| 亚洲三级网址久久最新| 八戒无码国产午夜福利| 动漫av中文| 国产CHASE男男GAYGA 毛多色婷婷| 密臀成人视频久久久| 久久女人一区二区三区| 国产v亚洲v日韩v欧美v片另类| 国产农村妇女精品一二区| 色在线亚洲视频www| 欧美色道啊| 男人天堂一区二区| 精品国产三级av韩国在线| 国产熟女二区| 免费久久精品麻豆一区二区av| 超碰97 线线 在现| 91久久午夜无码鲁丝片久久人妻| 日韩Va亚洲va欧美Ⅴa久久| 亚洲伊人青青草| 97干在线看| 一本一道vs波多野结衣| 国产精品夜夜| 熟女欧美日韩综合婷婷| 欧美v亚洲v日韩v最新在线二区| 欧美色性情| 亚洲中文电影| 超碰国产在线| 蜜乳AV.COM| 国产嫩草精品A88AV| 蜜臀AV成人精品蜜臀AV久久| 偷拍自拍在线视频观看| 女人久久久| 97精品在线| 精品国产嫩穴视频| 国产亚州高清国产拍精| 欧美综合自拍| 青青草华人在线欧美在线| 日本美女性生活久久久久久久 | 激情久久日韩精品中文字幕麻豆| 国产女人高潮视频| 久操网视频| 国内一区二区免费| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 黄色av片三级三级三级免费看| 丝袜美腿av女优在线| 蜜臀av网址| 欧美熟女激情| 99热综合| 久久精品国产亚洲AV片多多 | #NAME?| 偷拍 精品 另类 四区| 欧美性爱视频免费一区一A| 18禁看网站一区| 国产91美女视频| 男人把坤坤插入女人的下体| 欧洲无码一区二区| 91|九色|国产熟女| 久久黄色视频一区二区三区| 亚洲天堂久久久久久粉红视频| 男人的天堂三级| 欧美色图 人妻| 97人亚洲综合字幕| 亚洲av在线免费观看| 日本123区操B视频| 国产亚洲精品农村妇女| 在线毛片片免费观看| 欧美亚洲今日在线| 欧美精品不卡一二三四在线91| 日欧毛片久久| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 色青青久久影视| 强奸国产在线| 乱伦一区二区三区‘| www久久国产精品| 欧美99999| 亚洲欧美色图片| 992视频一区| 亚洲深夜福利| 91女日逼| 精品夜夜澡人妻无码AV| 少妇高潮九九九九九九九| 伦理日韩国产久久| 青青草成人视频在线观看二区| 日日干夜夜操视频h| 熟妇熟女一区二三区| 久久色一区| 不卡九肏| 大吊色| 国产白领连续中出在线播放| 久久九七| 国产乱码精品久久久久久| 蜜臀久久在线视频| 嗯嗯啊啊好疼| 99蜜桃臀久久久欧美精品网站| 大香蕉在线视频重口味毛片在线| 久久97资源 网| 91丝袜激情在线| 东京热精品97综合网| 色偷综合| 少妇人妻在线| 97碰碰色| 成人精品在线免费视频| 玖玖玖玖精品国产剧情| 天天影视激情欧美| 天天做天天爱天天爽AV| 日韩在线人妻网站| 亚洲男人的天堂在线看| 9 9无尺码天堂网| 人伦四五区| 色逼综合|