STM32F0庫函式初始化系列 PWM輸出

2022-06-08 08:27:16 字數 1518 閱讀 3271

void tim1_configuration(void){

tim_timebaseinittypedef tim_time1basestructure;

tim_ocinittypedef tim_ocinitstructure;

rcc_apb2periphclockcmd(rcc_apb2periph_tim1, enable);

/*time 定時基礎設定

*/tim_time1basestructure.tim_prescaler = 0

; tim_time1basestructure.tim_countermode = tim_countermode_up; /*

time 定時設定為上公升沿計算模式

*/tim_time1basestructure.tim_period = (systemcoreclock / 40000)-1

; tim_time1basestructure.tim_clockdivision = 0

; tim_time1basestructure.tim_repetitioncounter = 0;

tim_timebaseinit(tim1, &tim_time1basestructure);

/*頻道1,2,3,4的pwm 模式設定

*/tim_ocinitstructure.tim_ocmode =tim_ocmode_pwm1;

tim_ocinitstructure.tim_outputstate = tim_outputstate_enable ;//

tim_outputstate_enable;

//pwm輸出使能位

tim_ocinitstructure.tim_outputnstate = tim_outputnstate_enable ;//

tim_outputnstate_enable;

//互補pwm輸出使能位

tim_ocinitstructure.tim_ocpolarity = tim_ocpolarity_low; //

pwm 1為有效電平

tim_ocinitstructure.tim_ocnpolarity = tim_ocnpolarity_high; //

pwm互補 0為有效電平

tim_ocinitstructure.tim_ocidlestate =tim_ocidlestate_set;

tim_ocinitstructure.tim_ocnidlestate =tim_ocidlestate_reset;

tim_ocinitstructure.tim_pulse = 600-1; //

賦占空比值

tim_oc2init(tim1, &tim_ocinitstructure);//

使能頻道2配置

/*tim1 計算器使能

*/tim_cmd(tim1, disable);

/*tim1 主輸出使能

*/tim_ctrlpwmoutputs(tim1, disable);

STM32F0系列串列埠DMA收發資料

這裡用的庫函式版本,晶元型號為stm32f030c8t6.在用到串列埠dma時,要按以下幾個步驟進行。1.確定使用的串口號,這裡,我用的是usart2,對應復用的引腳是pa2,pa3。再根據資料手冊查詢其對應dma通道。2.先進行串列埠初始化配置 void usart2 init 3.再配置dma初...

STM32F0 休眠模式下 ADC取樣失效

筆者最近在作某汽車上的智慧型方向盤按鍵專案,系統要求待機電流小於100ua,同時能檢測系統輸入電壓狀態,做到能自檢欠壓和過壓,並通過lin傳送給中控。故筆者在對輸入電壓加了乙個分壓電路來檢測,現在客戶測試發現過壓和欠壓的判斷閾值與要求不符合,筆者在實際測試過程中也確實發現了問題,但未燒錄過程式的板子...

STM32F30X USART串列埠初始化順序

void inituart void 在做串列埠初始化時候,務必先將串列埠的rcc時鐘開啟,後進行相對於的gpio與usart配置,否則串列埠會無法工作.rcc ahbperiphclockcmd rcc ahbperiph gpioa enable rcc apb2periphclockcmd r...