国产成人av人人爽人人澡-亚洲国产日韩欧美一区-好吊日视频这里只有精品-日本高清精品视频在线

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當前位置:首頁 >> 技術(shù)中心 >> 單片機入門 >> 單片機C語言編程定時器的幾種表達方式

單片機C語言編程定時器的幾種表達方式

關(guān)鍵字:單片機 C語言 編程 作者:admin 來源:不詳 發(fā)布時間:2018-05-19  瀏覽:32

單片機C語言編程中,定時器的初值對于初學(xué)者真的是比較不好計算,因此我總結(jié)了以下幾種方法。

第1種方法:

#define FOSC 11059200L //晶振的頻率

#define TIMS (65536-FOSC/12/1000) //12T mode 對于8051系列單片機通用

//#define TIMS (65536-FOSC/1000) //1T mode STC單片機可以用這個

unsigned int timer0_tick;

int timer0_count;

void Timer0(void) interrupt 1 using 1 //定時器0中斷外理

{

TL0=TIMS;

TH0=TIMS>>8;

if(timer0_tick--==0) //加到1000次即1秒

{

timer0_tick=1000;

LED_Timer=~LED_Timer;

}

}

初值的賦值采用的是移位運算:

TL0=TIMS;

TH0=TIMS>>8;

第2種方法:

#define FOSC 11059200L //晶振的頻率

TH=(65536-time*FOSC /12)/256

TL=(65536-time*FOSC /12)%256

time就是假設(shè)要延時的100ms(要取100000us)

FOSC 是晶振頻率

注意:定時器一定要考慮晶振的頻率,因為單片機最小的中斷時間和頻率有關(guān)系。

例如:

6MHz晶振對應(yīng)的時間范圍是:512us --- 16.384ms --- 131.072ms

因此,在設(shè)置時間前,一定要考慮晶振和定時器的關(guān)系。

編輯:admin  最后修改時間:2018-05-19

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4