Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

ccsc expect hatası yardım

Başlatan xman, 04 Kasım 2009, 17:14:04

xman

#include <16f877.h>
#device ADC=10
#fuses XT,NOWDT,NOPROTECT,NOLVP
#use delay(clock=4000000)        //4 Mhz osilatör hızı
#include <benim_LCD.c>
#define use_portb_lcd TRUE
#byte portc = 0X07
#byte porte = 0x0F        //porta tanımlaması
void pwm(void);
#INT_AD
float voltaj=15;            // ondalıklı tipte voltaj isminde değişken tanıtılıyor
unsigned long int bilgi; // İşaretsiz 16 bitlik tam sayı tipinde değişken tanımlanıyor
long ADCValue=0;
long ADCValueOld=1;

void main() 
{
for(;;)
{
pwm:
if(input(pin_c0==1));
goto lcd  

////////////////////// PWM FONKSİYONU ////////////////
void pwm(void)
{
setup_ccp1(ccp_pwm);             //Yakalama modu PWM olarak ayarlandı.
setup_timer_2(t2_div_by_16, 255,1);    //PWM ferakansı ayarlandı
setup_adc(adc_clock_internal);
set_adc_channel(5);
while(true)
{
voltaj=read_adc();
set_pwm1_duty(voltaj);
}   
       ADCValue = Read_ADC();
       delay_ms(100);        // monitor 10 times a second

       if ( ADCValue != ADCValueOld )
      {
       set_pwm1_duty(ADCValue);
       ADCValueOld = ADCValue;
      }
}


lcd:    
/////////////////////////////* lcd**///////////////////
      set_tris_e(0x0F);  // E portu komple giriş    
      setup_adc_ports(ALL_ANALOG);
      setup_adc(adc_clock_div_32);   // ADC clock frekansı fosc/32
      lcd_hazirla(); // LCD başlangıç ayarları yaptırılıyor 
      imlec(1,1); // İmlec 1.satır 1.sütunda
      printf(lcd_veri "\fADC_UYGULAMASI"); // LCD'ye yazı yazdırılıyor
      delay_ms(1500);
      lcd_komut(0x01); // LCD sıfırlanıyor
    
      set_adc_channel(5);   // RE0/AN5 ucundaki sinyal A/D işlemine tabi tutulacak
      delay_us(20);         // Kanal seçiminde sonra bu bekleme süresi verilmelidir
      bilgi=read_adc();     // ADC sonucu okunuyor ve bilgi değişkenine aktarılıyor
      voltaj=0.0048828125*bilgi;   // Dijitale çevirme işlemine uğrayan sinyalin gerilimi hesaplanıyo
      
      imlec(1,1); // İmlec 1.satır 1.sütunda
      printf(lcd_veri,"fAN5_Kanali"); // LCD'ye veri 
      delay_ms(1000);
      imlec(2,4); // İmlec 2.satır 4.sütunda
      printf(lcd_veri "\nVoltaj=%fV"voltaj);
      imlec(2,4);
      delay_ms(1000);
      printf(lcd_veri,"\fDijital=%lu"bilgi); // LCD'ye veri yazdırılıyor
      delay_ms(1000);  
      
      lcd_komut(0x01); // LCD sıfırlanıyor
      lcd_komut(0x0E); // İmleç alt çizgi modunda      
      imlec(1,5); // İmlec 1.satır 5.sütunda
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri," ");
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x");delay_ms(500);
      printf(lcd_veri,"x"),delay_ms(500);
      lcd_komut(0x01); // LCD sıfırlanıyor
      delay_ms(1000);
if       (input(voltaj) == 1);     
goto     pwm;    
      
}
}

Okan AKÇA

main icinde fonksiyon blogu olmaz  :lol:

xman

ağzına sağlık arkadaş başka dikkat etmem gereken yer varmı.