原创 使用stm32的HAL庫完成pwm輸入模式測量頻率和佔空比的詳細教程

STM32定時器具有PWM的輸入捕獲模式。 PWM輸入捕獲是定時器輸入捕獲的一個特例,單通道的輸入捕獲只能獲取波形的頻率,但是PWM輸入捕獲可以獲取到頻率和佔空比,對應的高低電平寬度也就能獲取到。 它的時序如下圖所示:  使用cubem

原创 迪文屏幕無聲音

迪文的上位機IDE語音設置界面很不人性化: 注意這裏要填16進制的數字,比如你的音頻文件是31.wav那你這裏就要寫1F而不是31  

原创 單按鍵長短按狀態機

1 短按以鬆手作爲觸發條件 2 長按以2秒鐘未鬆手作爲觸發條件 3 按鍵按下爲0 鬆開爲1 4 key_return 0 未按下 1 短按 2 長按 僞代碼如下: enum key_state {

原创 使用cubeMX完成STM32定時器觸發多通道adc並用DMA讀取的功能

cubeMX 5.0.1 KEIL 5.26 compiler: v6.10.1   cubeMX中設置: 定時器: ADC: 開啓通道1和通道2 DMA:   main.c HAL_TIM_Base_Start(&htim8

原创 stm32基於HAL庫的串口與DMA完成不定長數據接收教程及相關解疑

http://www.stmcu.org/module/forum/thread-606385-1-1.html https://blog.csdn.net/u014515202/article/details/73293917/ htt

原创 5v過壓保護電路

假如要在6v切斷輸出可以按照上邊計算的公式進行配置,實測5.8v切斷輸出,但是到10v左右的時候電路開始冒煙,雖然恢復到5v之還是正常工作不過還是需要繼續調整參數 但是作爲保護電路有一點不足: 管子是常開的, 過壓一上電齊納還沒反應過來

原创 GD32F450串口空閒中斷加DMA接收不定長數組

串口初始化 typedef struct { uint8_t RX_flag; //IDLE receive flag uint16_t RX_Size; //receive length

原创 SCCB總線

SCCB總線就是簡化了的I2C總線 使用SCCB總線目的是爲了讀寫寄存器,所以只需要掌握總線讀寫就ok了, 可以參考該文章:https://blog.csdn.net/weixin_43529046/article/details/904

原创 基於STM32CUBEMX的HAL庫完成兩片STM32的IIC通信

參考資料: 1 https://blog.csdn.net/u011456016/article/details/70233599 2 https://blog.csdn.net/g_crisis/article/details/8222

原创 利用stm32高級定時器的重複計數實現輸出精確個數的pwm波

TIM_TimeBaseStructure.TIM_RepetitionCounter = 0; 利用該配置完成輸出精確數量的PWM波形,但是該值取值範圍是[0, 255], 如果需要大於該數值的pwm波個數,可以對中斷進行計數,當達到需

原创 關於stm32啓動及運行異常

在測試stm32的時候發現最簡單的串口打印demo都無法運行,而且現象特別奇怪: 1 下載後程序無法自動運行 2 調試的時候要點三次full speed才能進入c代碼, 前兩次看到都是在反彙編代碼的窗口中運行, 進入c代碼之後可以正常打印

原创 關於mos驅動芯片的layout

在繪製buck電路的過程中發現layout對電路的影響較大. 高手指出了我繪製電路中的問題, 如下: 各個迴路的面積都比較大, 下邊是更改後的layout,還是不夠好,不過經過調試後輸出也基本能符合要求了, 可以對比一下. 在調試的

原创 正版ST-link/V2 JTAG/SWD引腳定義和注意事項

原文鏈接: https://blog.csdn.net/xinghuanmeiying/article/details/78026561 但是換成正版的ST-link/V2,還是四線(SWIO,SWCLK,3V3,GND)連接的話,就會出

原创 我的友情鏈接

51CTO博客開發集成系統-踏上文明的征程