計時器規劃 計時器規劃 計時器規劃 計時器規劃
[例例例例 3] 規劃規劃規劃規劃 TimerA 計時計時計時計時 1 秒秒秒。秒。。以。以以 TimerA 計數頻率以 計數頻率計數頻率選擇計數頻率選擇選擇 2048Hz。選擇 。。。 解
解 解
解::::計數初值的計算方法計數初值的計算方法計數初值的計算方法計數初值的計算方法,,,分為以下,分為以下分為以下 2 個步驟分為以下 個步驟個步驟:個步驟:: : 1. 選擇需要的計數頻率選擇需要的計數頻率選擇需要的計數頻率選擇需要的計數頻率。。。 。
2. 計算相對應的計數初值計算相對應的計數初值計算相對應的計數初值計算相對應的計數初值
要完成要完成要完成要完成 1 秒的定時秒的定時秒的定時,秒的定時,,計數次數應該為,計數次數應該為計數次數應該為 2048 次計數次數應該為 次次次,,,,轉換為轉換為轉換為轉換為 16 進制數為進制數為進制數為進制數為 800,,,, 0xFFFF-0x0800+1=0xF800
*P_TimerA_Ctrl = C_SourceA_1 + C_SourceB_2048Hz //選擇選擇選擇 2048Hz 選擇
*P_TimerA_Data =0xF800
[例例例例 4] 規劃規劃規劃規劃 TimerA 計時計時計時計時 1 秒秒秒。秒。。以。以以 TimerA 計數頻率以 計數頻率計數頻率選擇計數頻率選擇選擇 Fosc/ 2Hz。選擇 。。。 解
解 解
解::::預設系統時脈預設系統時脈預設系統時脈預設系統時脈(Fosc)為為為為 24.576MHz,,,,計數頻率選擇計數頻率選擇計數頻率選擇計數頻率選擇 Fosc/2,,,,要完成要完成要完成要完成 1 秒的秒的秒的秒的 定時
定時定時
定時,,,計數次數應該為,計數次數應該為計數次數應該為 24576000/2 次計數次數應該為 次次,次,,已超出,已超出已超出 16 bit Timer 所能計數範圍已超出 所能計數範圍所能計數範圍所能計數範圍 (65536),,,所以要用,所以要用所以要用所以要用2222層層層層,,,,假設計數溢出頻率為假設計數溢出頻率為假設計數溢出頻率為假設計數溢出頻率為 8000 Hz,,,,在在在在 ISR 中再計數中再計數中再計數中再計數 8000次即為次即為次即為次即為 1 秒秒秒。秒。。計數溢出頻率為。計數溢出頻率為計數溢出頻率為 8000Hz 的計數次數計數溢出頻率為 的計數次數的計數次數 Y 如下的計數次數 如下如下 如下
8000
* 2 24576000
Y =
Y=1536=(600)H ,,,,所以計數初值所以計數初值所以計數初值所以計數初值 0xFFFF-0x0600+1=0xFA00。。。。
*P_TimerA_Ctrl = C_SourceA_Fosc2 + C_SourceB_1 //選擇選擇選擇選擇 Fosc/2 Hz
*P_TimerA_Data =0xFA00