Timer’ın OCRnA Karşılaştırma Değerine Kadar Saydığı Mod
Program Kodları
//AÇIKLAMA
//Bu uygulamada; Timer0 sayacının OCR0A karşılaştırma kayıtçısı değerine kadar saydığı Phase Correct PWM
//modunu kullandık.
//Uygulama Proteustaki Arduino kartında tam olarak çalışmadığı için Atmega328p'de yapıldı.
//Üretilen frekans "Phase_Correct_PWM-2 timer frekans formülü.xlsx" dosyasındaki formülle hesaplanır.
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 = 150; //OCR0A bitiş/karşılaştırma değeri belirlendi
OCR0B = 50; //OCR0B bitiş/karşılaştırma değeri belirlendi
TCCR0A |= (0 << COM0A1) | (1 << COM0A0) | (1 << COM0B1) | (0 << COM0B0) | (0 << WGM01) | (1 << WGM00);
TCCR0B |= (1 << CS02) | (0 << CS01) | (1 << CS00) | (1 << WGM02);
}
void loop()
{
}
Devre Şeması
0 comments:
Yorum Gönder