Timer’ın Maximum Değerine Kadar Saydığı Mod
Program Kodları
//AÇIKLAMA
//Bu uygulamada; OCR0A ve OCR0B karşılaştırma kayıtçılarının OC0A ve OC0B çıkışlarının invert(tersleme)
//olmayan, Timer0 sayacının maximum değerine(0-255-0) kadar saydığı Phase Correct PWM modunu kullandık.
//Uygulama Proteustaki Arduino kartında tam olarak çalışmadığı için Atmega328p'de yapıldı.
void setup()
{
pinMode(6, OUTPUT); //Arduino pin6 = ATMEGA328 pin12
pinMode(5, OUTPUT); //Arduino pin5 = ATMEGA328 pin11
TCCR0A = 0; //TCCR0A register 0'lanıyor
TCCR0B = 0; //TCCR0B register 0'lanıyor
OCR0A = 180; //OCR0A bitiş/karşılaştırma değeri belirlendi
OCR0B = 50; //OCR0B bitiş/karşılaştırma değeri belirlendi
TCCR0A |= (1 << COM0A1) | (0 << COM0A0) | (1 << COM0B1) | (0 << COM0B0) | (0 << WGM01) | (1 << WGM00);
TCCR0B |= (1 << CS02) | (0 << CS01) | (1 << CS00) | (0 << WGM02);
}
void loop()
{
}
Devre Şeması
0 comments:
Yorum Gönder