Timer FonksiyonlarıCloseTimer0() / Closetimer1() /CloseTimer2():void CloseTimer0(void);void CloseTimer1(void);void Closetimer2(void);
Belirtilern timer modülünü devre dışı bırakır.OpenTimer0(): void OpenTimer0(unsigned char config);Timer0 modülünü aktifleştirir. Timer modüllerinin ne tür işlemler için kullanıldığına ilerleyen yazılarda değineceğim. Şimdilik sadece aldığı parametrelerin ne işe yaradığı üzerinde konuşacağız.config:
- Enable Timer0 Interrupt: Timer0 modülünün oluşturacağı kesmelerin durumunu belirtir.
- Enable Timer0 Interrupt: Timer0 modülünün oluşturacağı kesmelerin durumunu belirtir.
TIMER_INT_ON: Timer0 kesmeleri aktif.
TIMER_INT_OFF:Timer0 kesmeleri devre dışı
TIMER_INT_OFF:Timer0 kesmeleri devre dışı
- Timer Width: Timer0 modülündeki sayacın 8-bit olarak mı yoksa 16-bit olarak mı kullanılacağını belirtir. 8 bitlik ise 0-255 arası, 16 bitlik ise 0-65536 arası sayma işlemi yapılır.
T0_8BIT: 8 bitlik sayaç
T0_16BIT: 16 bitlik sayaç
T0_8BIT: 8 bitlik sayaç
T0_16BIT: 16 bitlik sayaç
- Clock Source: Timer0 modülünün clock olarak hangi kaynağı kullanacağını belirtir (Clock kaynağı timer0 biriminin kesme oluşturma süresini doğrudan etkiler).
T0_SOURCE_EXT: Clock kaynağı dışarda (I/O pin)
T0_SOURCE_INT: Clock kaynağı içerde (T0sc)
T0_SOURCE_INT: Clock kaynağı içerde (T0sc)
- Prescale Value: Seçilen kaynak(clock’)tan gelen clock sinyali direkt olarak kullanılmaz. Bu değer prescale(bölme oranı) ile çarpılır. Yani prescale değeri ne kadar küçük olursa(1:128, 1:256 gibi) sayaç o kadar hızlı sayar diyebiliriz.
T0_PS_1_1: 1:1 bölme oranı
T0_PS_1_2: 1:2 bölme oranı
T0_PS_1_4: 1:4 bölme oranı
T0_PS_1_8: 1:8 bölme oranı
T0_PS_1_16: 1:16 bölme oranı
T0_PS_1_32: 1:32 bölme oranı
T0_PS_1_64: 1:64 bölme oranı
T0_PS_1_128: 1:128 bölme oranı
T0_PS_1_256: 1:256 bölme oranı
T0_PS_1_2: 1:2 bölme oranı
T0_PS_1_4: 1:4 bölme oranı
T0_PS_1_8: 1:8 bölme oranı
T0_PS_1_16: 1:16 bölme oranı
T0_PS_1_32: 1:32 bölme oranı
T0_PS_1_64: 1:64 bölme oranı
T0_PS_1_128: 1:128 bölme oranı
T0_PS_1_256: 1:256 bölme oranı
Örnek kullanım;OpenTimer0( TIMER_INT_OFF & T0_8BIT & T0_SOURCE_INT & T0_PS_1_32 );
OpenTimer1(): void OpenTimer1(unsigned char config);
Timer1 modülünü aktifleştirir.
config:- Enable Timer0 Interrupt: Timer1 modülünün oluşturacağı kesmelerin durumunu belirtir.
TIMER_INT_ON: Timer1 kesmeleri aktif.
TIMER_INT_OFF: Timer1 kesmeleri devre dışı
TIMER_INT_OFF: Timer1 kesmeleri devre dışı
- Timer Width: Timer1 modülündeki sayacın 8-bit olarak mı yoksa 16-bit olarak mı kullanılacağını belirtir.
T1_8BIT_RW: 8 bitlik sayaç
T1_16BIT_RW: 16 bitlik sayaç
T1_16BIT_RW: 16 bitlik sayaç
- Clock Source: Timer1 modülünün clock olarak hangi kaynağı kullanacağını belirtir
T1_SOURCE_EXT: Clock kaynağı dışarda (I/O pin)
T1_SOURCE_INT: Clock kaynağı içerde (T0sc)
T1_SOURCE_INT: Clock kaynağı içerde (T0sc)
- Prescale Value: Timer1 biriminin sayma süresiyle ters orantılı.
T0_PS_1_1: 1:1 bölme oranı
T0_PS_1_2: 1:2 bölme oranı
T0_PS_1_4: 1:4 bölme oranı
T0_PS_1_8: 1:8 bölme oranı
T0_PS_1_2: 1:2 bölme oranı
T0_PS_1_4: 1:4 bölme oranı
T0_PS_1_8: 1:8 bölme oranı
- Oscillator Use: Timer1 osilatörünün kullanılma durumunu belirtir.
T1_OSC1EN_ON: Timer1 osilatörü aktif.
T1_OSC1EN_OFF: Timer1 osilatörü devre dışı.
T1_OSC1EN_OFF: Timer1 osilatörü devre dışı.
- Synchronize Clock Input: Harici saat sinyali ile senkronize olma durumunu belirtir.
T1_SYNC_EXT_ON: Harici saat sinyaliyle senkronize.
T1_SYNC_EXT_OFF: Harici saat sinyaliyle senkronize değil.
T1_SYNC_EXT_OFF: Harici saat sinyaliyle senkronize değil.
Örnek kullanım;
OpenTimer1( TIMER_INT_ON & T1_SOURCE_EXT & T1_PS_1_1 & T1_OSC1EN_OFF & T1_SYNC_EXT_OFF );
OpenTimer1( TIMER_INT_ON & T1_SOURCE_EXT & T1_PS_1_1 & T1_OSC1EN_OFF & T1_SYNC_EXT_OFF );
OpenTimer2(): void OpenTimer2 (unsigned char config);
Timer2 modülünü aktifleştirir.
config:
- Enable Timer0 Interrupt: Timer2 modülünün oluşturacağı kesmelerin durumunu belirtir.
- Enable Timer0 Interrupt: Timer2 modülünün oluşturacağı kesmelerin durumunu belirtir.
TIMER_INT_ON: Timer2 kesmeleri aktif.
TIMER_INT_OFF: Timer2 kesmeleri devre dışı
TIMER_INT_OFF: Timer2 kesmeleri devre dışı
- Prescale Value: Timer2 biriminin sayma süresiyle ters orantılı.
T0_PS_1_1: 1:1 bölme oranı
T0_PS_1_4: 1:4 bölme oranı
T0_PS_1_16: 1:16 bölme oranı
T0_PS_1_4: 1:4 bölme oranı
T0_PS_1_16: 1:16 bölme oranı
- Postscale Value: Timer2 biriminin sayma işlemini kaç defa tekrarlayacağını belirtir. Sadece Timer2 modülü için kullanılabilir.
T0_POST_1_1: 1:1 bölme oranı
T0_POST_1_2: 1:2 bölme oranı
T0_POST_1_3: 1:3 bölme oranı
T0_POST_1_4: 1:4 bölme oranı
T0_POST_1_5: 1:5 bölme oranı
T0_POST_1_6: 1:6 bölme oranı
T0_POST_1_7: 1:7 bölme oranı
T0_POST_1_8: 1:8 bölme oranı
T0_POST_1_9: 1:9 bölme oranı
T0_POST_1_10: 1:10 bölme oranı
T0_POST_1_11: 1:11 bölme oranı
T0_POST_1_12: 1:12 bölme oranı
T0_POST_1_13: 1:13 bölme oranı
T0_POST_1_14: 1:14 bölme oranı
T0_POST_1_15: 1:15 bölme oranı
T0_POST_1_2: 1:2 bölme oranı
T0_POST_1_3: 1:3 bölme oranı
T0_POST_1_4: 1:4 bölme oranı
T0_POST_1_5: 1:5 bölme oranı
T0_POST_1_6: 1:6 bölme oranı
T0_POST_1_7: 1:7 bölme oranı
T0_POST_1_8: 1:8 bölme oranı
T0_POST_1_9: 1:9 bölme oranı
T0_POST_1_10: 1:10 bölme oranı
T0_POST_1_11: 1:11 bölme oranı
T0_POST_1_12: 1:12 bölme oranı
T0_POST_1_13: 1:13 bölme oranı
T0_POST_1_14: 1:14 bölme oranı
T0_POST_1_15: 1:15 bölme oranı
Örnek kullanım;
OpenTimer2( TIMER_INT_OFF & T2_PS_1_1 & T2_POST_1_8);
OpenTimer2( TIMER_INT_OFF & T2_PS_1_1 & T2_POST_1_8);
Kaynak:http://elkitabim.net
Yorumlar
Yorum Gönder