用乙個計時器計時1秒,使得led燈間隔一秒閃爍。
主程式:
#include "stm32f10x.h"
#include "delay.h"
#include "led1.h"
#include "time.h"
int main(void)
}
標頭檔案:
1. led1.h
#ifndef __led_h
#define __led_h
void led_init1(void);
#endif
2.time.h
#ifndef __time__h
#define __time__h
#include "sys.h"
void time3_init(u16 arr, u16 psc); //定時器3初始化函式
#endif
c檔案
1. led.c
#include "led1.h" //引用標頭檔案
#include"stm32f10x.h"
void led_init1(void)
2.time.c
#include "time.h"
#include "delay.h"
#include "led1.h"
void time3_init(u16 arr, u16 psc)
void tim3_irqhandler()
}
其中在主程式中有 time3_init(9999, 7199); 這裡表示定時的時間是1s:
計算公式:
t = (a+1)*(b+1)/tclk; a為前面的輸入 ,b 為後面的那個輸入
tclk一般為72m 先計算(b+1)/tclk 當b為7199時候,(b+1)/tclk = 0.1ms 所以要讓t 為1, 只要將a設為9999。
STM32定時器溢位模式計時設定
stm32定時器溢位模式設定 環境 主機 win7 開發環境 mdk4.23 mcu stm32f103cbt6 源 1 說明 定時器採用tim2,時鐘源為內部8m晶振,向上溢位模式.此定時器用在延時函式,最小可以延時1us,故沒有採用中斷形式定時.初始化 rcc apb1periphclockcm...
STM32定時器溢位模式計時設定
stm32定時器溢位模式設定 環境 主機 win7 開發環境 mdk4.23 mcu stm32f103cbt6 源 1 說明 定時器採用tim2,時鐘源為內部8m晶振,向上溢位模式.此定時器用在延時函式,最小可以延時1us,故沒有採用中斷形式定時.初始化 rcc apb1periphclockcm...
STM32 STM32啟動方式
在復位時,會按照boot的狀態判斷進入哪種模式,boot腳不用保持長狀態。模式1 boot0拉低,使用使用者快閃儲存器區,這是最正常啟動的模式,即,在正常啟動時,boot0應該下拉為低電平 模式3 從sram執行,由於stm32的flash擦寫的次數是有限的,所以為了保護我們的flash,延長mcu...