當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]看了網(wǎng)上的資源,都不怎么好用,于是決定總結(jié)總結(jié),記錄下定時(shí)器的簡(jiǎn)單實(shí)用方法。環(huán)境: STM8SF103 ,仿真器為:STLINKTIM4 屬于8位定時(shí)器,最大128分頻。這個(gè)定時(shí)器的時(shí)鐘源是系統(tǒng)時(shí)鐘源(fMaster),然后直接通過預(yù)分

看了網(wǎng)上的資源,都不怎么好用,于是決定總結(jié)總結(jié),記錄下定時(shí)器的簡(jiǎn)單實(shí)用方法。

環(huán)境: STM8SF103 ,仿真器為:STLINK

TIM4 屬于8位定時(shí)器,最大128分頻。

這個(gè)定時(shí)器的時(shí)鐘源是系統(tǒng)時(shí)鐘源(fMaster),然后直接通過預(yù)分頻器分頻后供CK_CNT使用。如:系統(tǒng)頻率為4MHz,經(jīng)過128分頻后,提供給定時(shí)器使用的頻率就為 31250Hz


因?yàn)轫?xiàng)目需要,我這里使用的內(nèi)部RC 16MHz振蕩器,并進(jìn)行LSI 4分頻,所以主頻為4MHz。

//main.c

voidInit_Tim4(void)

{

/*很多人都是在這里裝填0xFF,其實(shí)是為了讓PSC盡快生效,對(duì)于PSC的設(shè)置,需要在下一個(gè)更新事件時(shí)才會(huì)生效*/

TIM4_CNTR=0;//計(jì)數(shù)器值

TIM4_ARR=0xFA;//自動(dòng)重裝寄存器250,產(chǎn)生125次定時(shí)1S

TIM4_PSCR=0x07;//預(yù)分頻系數(shù)為128

TIM4_EGR=0x01;//手動(dòng)產(chǎn)生一個(gè)更新事件,用于PSC生效注意,是手動(dòng)更新

TIM4_IER=0x01;//更新事件中斷使能

TIM4_CR1=0x01;//使能計(jì)時(shí)器,TIM4_CR0停止計(jì)時(shí)器

}

voidmain(void)

{

_asm("rim");//這是必須的,因?yàn)橄到y(tǒng)重啟后,軟件中斷級(jí)別為3級(jí),處于最高級(jí),除了TRAP,TLI,RESET三個(gè)中斷外不響應(yīng)其他中斷。

//rim將軟件級(jí)別更改為0級(jí)別,這樣其他中斷就能得到相應(yīng)。

Init_Tim4();

while(1);

}

//中斷向量表必須將TIM4的中斷處理函數(shù)填寫進(jìn)去

{0x82,TIM4_UPD_OVF_IRQHandler},/*irq23*/

//處理函數(shù)如下:

/*定時(shí)器4用作看門狗喂狗定時(shí),因?yàn)榭撮T狗最大延時(shí)510ms,

定時(shí)器頻率為4MHz/128=31250=250*125,125/5=25(200ms)*/

@far@interruptvoidTIM4_UPD_OVF_IRQHandler(void)

{

t4++;

TIM4_SR=0;//清除中斷標(biāo)志

//t4==125//定時(shí)1S

if(t4==25)//25*250定時(shí)200ms

{

FREE_IWDG;//喂狗,如果單純定時(shí)用,可以拿掉

//可以嘗試點(diǎn)亮LED燈

t4=0;

}

return;

}


定時(shí)器延時(shí)計(jì)算過程,如主頻4MHz,預(yù)分頻為128,定時(shí)器頻率等于 4000000 / 128 = 31250 (Hz),周期為32us。4分頻時(shí)周期為1us。

如:主頻8MHz,預(yù)分頻為128,定時(shí)器頻率等于 8000000 / 128 = 62500 (Hz),周期為16us。


整個(gè)代碼沒有使用庫函數(shù),諸如TIM4_SR TIM4_CR1之類的定義在stm8s103k.h,其他的頭也可以。


定時(shí)器2 (16位計(jì)時(shí)器) 的簡(jiǎn)單實(shí)用與此類似,但需要注意設(shè)置初值的方法,如:


voidInit_Tim2(void)

{

TIM2_EGR=0x01;//手動(dòng)產(chǎn)生更新事件,重新初始化計(jì)數(shù)器,并允許產(chǎn)生一個(gè)更新事件

//設(shè)置定時(shí)器初值

TIM2_CNTRH=0;//不能使用TIM2_CNTR直接設(shè)值,TIM2_CNTRL=0;

//設(shè)定自動(dòng)重裝寄存器值

//這里得注意不能使用TIM2_ARR的方式進(jìn)行設(shè)值,TIM2是十六位的。

//如TIM2_ARR=0xFA,實(shí)際上是賦給高字節(jié)了,TIM2_ARRH=0xFA,而不是想象中的賦給低字節(jié)。

TIM2_ARRH=0x7A;//312504MHz/128=31250Hz(1S)

TIM2_ARRL=0x12;//0x7A1231250意味著每產(chǎn)生一次中斷時(shí)間為1S

TIM2_PSCR=0x07;//分頻128

TIM2_IER=0x01;//中斷允許位使能

TIM2_CR1=0x01;//使能計(jì)時(shí)器

}



整個(gè)使用需要注意幾點(diǎn):

第一、總中斷的開啟 _asm("rim")

第二、中斷向量表對(duì)應(yīng)位置的中斷處理過程改寫

第三、定時(shí)器自身的使能,包括中斷使能和計(jì)時(shí)器使能

第四、默認(rèn)情況下,TIM4的外設(shè)時(shí)鐘是開啟的,CLK_PCKENR為0xFF,外設(shè)TIM4時(shí)鐘如果關(guān)閉,時(shí)鐘是運(yùn)行不起來的。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉