51學習之定時器中斷的兩種方式 查詢和中斷

2021-06-21 11:21:25 字數 704 閱讀 8945

呵呵,從網上抄了個程式,自己改了下。能用了。不過有些地方還是不太了解,呵呵,明天來細寫。

2012.2.25

定時器中斷可用兩種方式處理:查詢和進入中斷處理。

1.查詢

void init_t0 (void)

定時器初始化

void main()

主函式}

2.進入中斷處理

void init_t0 (void)

定時器初始化

void time0_int() interrupt 1

中斷處理函式

void main()

主函式對於查詢方式,一定要手動清楚中斷標誌。

上面2段程式,我遮蔽了,中斷時重新裝計數初值的語句,程式都可正常執行,所以我認為無論對於那種處理方式,重灌初值都不必要。

初始化時,可定義輸出口的初始狀態。而在處理中斷時,一定要用取反語句。手動置0或1,程式不能正常執行。

對於方式2,開始main中沒寫最後的while(1),程式不正常執行。

上述定時最大為65535,約65ms.如果計時大於此,可在中斷中處理。

程式如下:

int a;

void time0_int() interrupt 1

}

呵呵,在寫上面這一小段時,開始沒寫a=0,燈一直亮,後來參考下,發現不清0.a一直變大,程式只能執行一次。

javaScript中兩種定時器

1.var num setinterval 方法名 毫秒值 每隔一定的毫秒值就執行函式 clearinterval num 什麼時候想停止,將setinterval 的返回值num傳給clearinterval num 即可 獲取驗證碼 執行結果是 2.var num settimeout 方法名 ...

JS中兩種定時器

settimeout 在指定的毫秒後呼叫函式或者計算表示式 傳入三個引數 code 必需 要呼叫的函式後要執行的js 串 millisec 必需 在執行 前需等待的毫秒數 lang 可選一般不寫,選擇指令碼語言型別 setinterval 按照指定週期來呼叫函式或者計算表示式。方法會不停地呼叫函式,...

WPF常見的兩種定時器

先來說一下是哪兩種定時器 先說明一下wpf介面是沒有timer控制項的 第一種 dispatchertimer定時器,可以說是專門為wpf介面設計的定時器。因為這個定時器是和ui都在同一執行緒上的。第二種 system.timers.timer定時器,這種定時器是和ui非同乙個執行緒。使用方法 di...