16f628 Analog giriş ile pwm kontrolü

Başlatan hoten, 27 Ekim 2014, 15:52:14

hoten

CSS'de bu kodun nasıl yazılacağı konusunda yardımcı olabilir misiniz?

hoten

Arkadaşlar karşılaştırma ve buna bağlı olarak pwm üretme ile alakalı örnek CCS kodu var mıdır? yardımcı olabilir misiniz?

papsukkal

#include <main.h>


long adc_in=0;
long adc_out=0;
int16 i=2000;
signed long fark=0;
#int_EXT

void  EXT_isr(void) 
{
      delay_us(i);   
      output_high(pin_a5);
      delay_us(100);
      output_low(pin_a5);

         set_adc_channel(0);
         delay_us(25);
         adc_in=read_adc();
         set_adc_channel(1);
         delay_us(25);
         adc_out=read_adc(); 
         fark=adc_in-adc_out;

         
         
         
         
         if(fark>170)
         { 
            i=i+50;
            if(i>=8950) i=9000;
         }
         if(fark<160)
         { 
            i=i-50;
            if(i==1550) i=1600;
         }
         
}



void main()
{
   
   setup_adc(ADC_CLOCK_INTERNAL );
   setup_adc_ports( AN0_analog|AN1_analog);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_8);
   setup_timer_1(T1_DISABLED);
   setup_comparator(NC_NC);
   setup_vref(FALSE);
   enable_interrupts(INT_EXT);
   enable_interrupts(GLOBAL);
   set_tris_a(0x0f);
   
   PORT_a_PULLUPS(1);

   while(true) {} 
   
}


12f675 ile iki analog sinyali karşılaştırıp farkına göre triac kontrol etmiştim.
inceleyip kendine göre uyarlayabilirsin.

kolay gelsin.

hoten

Hem karşılaştıcı modu kullanıp hemde pwm modu kullanmak mümkün müdür?

papsukkal

Ben komparatörü kullanmadım. İncelemek lazım.

selimkoc

Alıntı Yap"Hem karşılaştıcı modu kullanıp hemde pwm modu kullanmak mümkün müdür?"

Her ikisi de farklı modül olduğundan birbirini etkilemez yani her ikisini de aynı anda kullanabilirsin.

PICaso

Comparator modu ile pwm duty kontrol etmek mümkün müdür?


PICaso

Dc motor hız kontrolü yapmayı düşünüyordum (potans ile). Bu durumda farklı bir işlemci seçmem gerekecek.

sadogan

Hangi mcu yu kullanmayı düşünüyordunuz ki ?

fide

16f628 yerine pin to pin 16f1826-27 deneyebilirsiniz
Her birimiz, geride bıraktığımız eserler kadar ölümsüzüz. Evlat gibi, talebe gibi, icatlar gibi...   http://fidenetgaraj.blogspot.com

omereliusuk


PICaso

Alıntı yapılan: sadogan - 14 Mayıs 2020, 20:12:40Hangi mcu yu kullanmayı düşünüyordunuz ki ?
16F628A elimde vardı. Yazılım da lcd ayarlarını yapmıştım. Adc için datasheeti açtığımda beynimden vurulmuşa döndüm. Adc yi iptal edip buton kullanacağım.

PhD

PIC16F628 veya PIC16F628A türevlerinde tek CCP (Capture, Compare, PWM) modulü bir tane olduğu için hem karşılaştırma hem de aynı anda PWM yapılamaz.
...hiç...

PICaso

Alıntı yapılan: PhD - 15 Mayıs 2020, 10:08:47PIC16F628 veya PIC16F628A türevlerinde tek CCP (Capture, Compare, PWM) modulü bir tane olduğu için hem karşılaştırma hem de aynı anda PWM yapılamaz.
Buton ile pwm duty kontrol edeceğim.