pwm metodunda doluluk ayarlarını nasıl yapabilirim

nanit

Üye
Katılım
21 Ocak 2011
Mesajlar
159
Puanları
1
Yaş
33
arkadaşlar potumu %50 ye getirdiğimde pwm sinyalinden %10 doluluk oranı alabiliyorum
potumu %90dan %99a getirdinmi pwm doluluk oranım %45 den %95 çıkıyor bu sorunla daha önce karşılaşanınız varmı yardımlarınız için şimdiden teşekürler
HTML:
#include <12f683.h>
#device adc=8
#use delay(clock=20000000)
#fuses NOWDT, INTRC_IO, NOMCLR, PUT
#use fast_io(a)
void main(void)
{    
   int16 bilgi,periyot;
    int16 pasif;
    periyot=256;
    set_tris_a(8);
    setup_adc(ADC_CLOCK_DIV_16);
    setup_adc_ports(ALL_ANALOG);
    set_adc_channel(0);
    delay_us(10);
    while(1) 
 {     
    bilgi=read_adc();
    pasif=periyot-bilgi;
    output_high(PIN_A2);
    delay_us(bilgi);
        output_low(PIN_A2);
    delay_us(pasif);
    }
}
 
Potla alakalı olabilir mi? Pot un çıkışındaki voltu incelesen? Bence sorun potta..

Bi de asm biliyorsan ve mümkünse döngü kısmını asm de yaz bence.. 1 çıkışı süresi sadece output_high ve delay_uS(bilgi)'ye bağlıyken.. 0 çıkışı süresi ise delay_us(pasif) e, while'da başa dönmek için harcanan goto komutuna, 4Mhz için harcanan 44uS lik adc ölçümüne, pasif hesaplama işlemine bağlı.. Yani yeterince sağlıklı pwm alır mısın bilemiyorum..
 

Forum istatistikleri

Konular
128,894
Mesajlar
921,410
Kullanıcılar
451,038
Son üye
teknoinfo

Yeni konular

Geri
Üst