嵌入式課程設計 STM32 定時器程式設計

2021-08-21 04:30:13 字數 1124 閱讀 8303

apb1 匯流排時鐘頻率-42mhz)

42 * 2  = 84 mhz

/*定時器3驅動*/

#include"sys.h"

#include/*

初始化定時器3

計數脈衝頻率 1mhz, 定時時間設為 10ms

允許定時器中斷,採用向上計數方式

*/void inittimer3(void)

//編寫定時器3中斷服務處理程式

int timer3_count = 0;

void tim3_irqhandler(void)

tim3->sr &= (~0x1);//清除中斷標誌位

}}

/*main.c*/

#include"sys.h"

#include"usart.h"

#include"delay.h"

#include//宣告中斷相關函式

void inittimer3(void);

void tim3_irqhandler(void);

int main(void)

return 0;

}

(定時器14)

產生pwm訊號的**

/*

初始化定時器14產生pwm訊號

pwm訊號的週期 1ms

*/void initpwmtimer14(void)

//設定pwm訊號的脈衝寬度

void setpwmwidth(int w)

/*main.c*/

#include"sys.h"

#include"usart.h"

#include"delay.h"

#include//宣告

void initpwmtimer14(void);

void setpwmwidth(int w);

int dir = 1 ;

int pwmwidth = 0;

main()

else

setpwmwidth(pwmwidth);

}}

嵌入式 STM32 定時器知識點

機械週期 微控制器完成乙個操作的最短時間。機械週期主要針對組合語言,在組合語言下程式每一條執行所使用時間都是機械週期的整數倍。51標準架構下,乙個機械週期是12個時鐘週期,12m晶振下等於12 1 12000000秒。51這麼設計是歷史的原因 畢竟它已經是30年前的老古董了 所以有機器週期和時鐘週期...

stm32關定時器 STM32定時器TIM3程式

include led.h include delay.h include key.h include sys.h include usart.h include timer.h stm32開發板實驗8 定時器中斷實驗 int main void delay init 延時函式初始化 nvic co...

嵌入式課程設計日誌

第二天日誌 姓名 楊戴文 日期 9.11 今日學習任務 在linux作業系統中完成初始化棧,進棧,出棧,判斷棧是否空,獲取棧頂元素,清空棧 今日任務完成情況 老師講解了各種資料結構儲存方式,練習了初始化棧,進棧,出棧,判斷棧是否空,獲取棧頂元素,清空棧。複習了昨天的各種運算子,我是一步步跟著老師走的...