Pwm Modülünün Osiloskop’da Gösterimi

İlk olarak pwm modülü ile ilgili bilginiz yoksa bu modülle ilgili bilgi alabileceğiniz linki aşağıda veriyorum.

https://dosya.sakarya.edu.tr/Dokumanlar/2013/440/125663773_h5_mikro_ii.pdf

16F877A işlemcisine entegre olan pwm modülünün osiloskopta kare dalga formatında gösterme işlemini yapacağız.

Bu işlem için  gerekli modülleri bulabileceğiniz isis görüntüsü şu şekilde olmalıdır.

isisİsis’de yaptığımız programı kısaca anlatayım.Yukarıdaki butona basıldığında duty cycle’ı arttırıyoruz.Aşağıdaki butona bastığımız da ise duty cycle azaltılıyor.Peki osiloskopun en üstteki girişine neden bağlıyoruz?Çünkü kare dalga formatında çıkış istedik.

Ayrıca  Osiloskobu 16F877A işlemcisinin pwm entegresine bağlıyoruz.

Duty cycle dediğimiz ise iş süresidir.İş süresi ile pals genişliği ayarlanır.

Micro c kısmı ise şu şekilde olmalıdır.
int duty_cycle=100;
int okunan_deger=50;
void main()
{

ADCON1=7;
CMCON=7;
TRISC=0;
portc=0;
PortA.RA0=0;
PortA.RA1=0;
porta.ra2=0;
PWM1_Init(5000);
PWM1_Start(); // start PWM2
PWM1_Set_Duty(duty_cycle);
while(1)
{
if(PORTA.RA0==1)
{
duty_cycle++;
PWM1_Set_Duty(duty_cycle);
}
if(PORTA.RA1==1)
{
duty_cycle–;
PWM1_Set_Duty(duty_cycle);
}
if(porta.ra2)
{
okunan_deger=ADC_Read(2);
PWM1_Set_Duty(okunan_deger);

}

}

}

Reklamlar