Arkadaşlar aşağıdaki kodda derleme hatası alıyorum. Yardımcı olur musunuz?
//#FUSES CCPB0// Lcd pinout settings
sbit LCD_RS at latb1_bit;
sbit LCD_EN at latb0_bit;
sbit LCD_D7 at latb7_bit;
sbit LCD_D6 at latb6_bit;
sbit LCD_D5 at latb5_bit;
sbit LCD_D4 at latb4_bit;
// Pin direction
sbit LCD_RS_Direction at TRISB1_bit;
sbit LCD_EN_Direction at TRISB0_bit;
sbit LCD_D7_Direction at TRISB7_bit;
sbit LCD_D6_Direction at TRISB6_bit;
sbit LCD_D5_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB4_bit;
char yuzler,birler,onlar,top=0;
int okunan=0,i=0,volt_tmp,volt_set_tmp;
unsigned int duty=0;
float akim=0.0,akim_set_=0.0,volt=0.0,volt_set=0.0,old_akim=100.0,old_akim_set=100.0,old_volt=100.0,old_volt_set=100.0;
///////////////////////////////////////////////
void pwm_gorev(unsigned int a)
{
CCPR1L=(a>>2);
CCP1CON.B5=(a>>1)&1;
CCP1CON.B4=a&1;
}
///////////////////////////////////////////////
void Interrupt()
{
if (TMR1IF_bit)
{
TMR1H = 0xFF;
TMR1L = 0x60;
TMR1IE_bit=0;
okunan=ADC_Get_Sample(4);
akim=okunan*0.004;//0.5 Ohm için.
Delay_10us();
okunan=ADC_Get_Sample(10);
volt=okunan*0.029296875;
if(akim_set_<0.1)duty=0;
else if(akim>(akim_set_+0.5))duty=0;
//else if(akim>akim_set_ && akim<=(akim_set_+0.02)){}
else if(akim>(akim_set_+0.2))
{
if(duty>=3)duty-=3;
}
else if(akim>(akim_set_+0.03))
{
if(duty>0)duty--;
}
else if(volt>(volt_set+1) && duty>=5)
{
duty-=5;
}
else if(volt<=(volt_set-1) && duty<1019 )
{
duty+=5;
}
else if(volt>(volt_set+0.06))
{
if(duty>0)duty--;
}
else if(volt<volt_set)
{
if(duty<1023)duty++;
}
TMR1IF_bit = 0;
TMR1IE_bit=1;
pwm_gorev(duty);
}
}
///////////////////////////////////////////////
void InitTimer1(){
T1CON = 0x01;
TMR1IF_bit = 0;
TMR1H = 0xFF;
TMR1L = 0x60;
TMR1IE_bit = 1;
INTCON = 0xC0;
}
///////////////////////////////////////////////
void goster()
{
TMR1IE_bit = 0;
yuzler=duty/100;
onlar=(duty/10)%10;
birler=duty%10;
Lcd_chr(1,14,(yuzler+48));
Lcd_chr_cp((onlar+48));
Lcd_chr_cp((birler+48));
if(volt_set!=old_volt_set)
{
yuzler=(int)volt_set*10/100;
onlar=((int)(volt_set))%10;
birler=(int)(volt_set*10)%10;
Lcd_chr(1,2,(yuzler+48));
Lcd_chr_cp((onlar+48));
Lcd_chr_cp('.');
Lcd_chr_cp((birler+48));
Lcd_chr_cp('V');
old_volt_set=volt_set;
}
if(akim_set_!=old_akim_set)
{
yuzler=(int)(akim_set_*10/100);
onlar=((int)(akim_set_))%10;
birler=((int)(akim_set_*10))%10;
Lcd_chr(2,2,(yuzler+48));
Lcd_chr_cp((onlar+48));
Lcd_chr_cp('.');
Lcd_chr_cp((birler+48));
Lcd_chr_cp('A');
old_akim_set=akim_set_;
}
if(akim!=old_akim)
{
yuzler=(int)akim*10/100;
onlar=((int)(akim))%10;
birler=(int)(akim*10)%10;
Lcd_chr(2,8,(yuzler+48));
Lcd_chr_cp((onlar+48));
Lcd_chr_cp('.');
Lcd_chr_cp((birler+48));
Lcd_chr_cp('A');
old_akim=akim;
}
if(volt!=old_volt)
{
yuzler=(int)volt*10/100;
onlar=((int)(volt))%10;
birler=(int)(volt*10)%10;
Lcd_chr(1,8,(yuzler+48));
Lcd_chr_cp((onlar+48));
Lcd_chr_cp('.');
Lcd_chr_cp((birler+48));
Lcd_chr_cp('V');
old_volt=volt;
}
yuzler=0;birler=0;onlar=0;
TMR1IE_bit = 1;
}
///////////////////////////////////////////////////////
void main() {
OSCCON=0b11110000;
ANSELA=0b00110000;
ANSELB=4;
trisa=0b00011111;
trisb.b3=0;
CCP1CON=0x0c;
CCPR1L=0;
PR2=0xff;
T2CON.F1=0;
T2CON.F0=1;
T2CON.TMR2ON=1;
LCD_init();
Lcd_Cmd(_LCD_CLEAR);
Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Out(1,1,"HELLO");
delay_ms(500);
Lcd_Cmd(_LCD_CLEAR);
ADC_Init();
FVRCON=0b10000010;//(2.048)
ADCON1.ADPREF1=1;
ADCON1.ADPREF0=1;
InitTimer1();
while(1)
{
if(porta.f0==0)
{
if(volt_set<30)volt_set+=0.100001;
i+=1000;
delay_ms(600);
while(porta.f0==0)
{
if(volt_set<29.1)volt_set+=1;
goster();
delay_ms(200);
}
}
if(porta.f1==0)
{
if(volt_set>0.1)volt_set-=0.1;
i+=1000;
delay_ms(600);
while(porta.f1==0)
{
if(volt_set>=1)volt_set-=1;
goster();
delay_ms(200);
}
}
if(porta.f2==0)
{
if(akim_set_<=4)akim_set_+=0.100001;
i+=1000;
delay_ms(400);
/*while(porta.f2==0)
{
if(akim_set_<4)akim_set_+=1;
goster();
delay_ms(100);
}*/
}
if(porta.f3==0)
{
if(akim_set_>=0.1)akim_set_-=0.1;
i+=1000;
delay_ms(400);
/*while(porta.f3==0)
{
if(akim_set_>=1)akim_set_-=1;
goster();
delay_ms(100);
}*/
}
i++;
if(i>=2000)
{
goster();
i=0;
}
}
}
https://youtu.be/eCLn0BUl2us
:)
hangi program hangi hata hangi dil hangi platform ve hata resmi atabilirseniz daha kolay yardımcı olunabilir.
Anladığım kadarıyla c dili ve pic için ama hata ve daha fazla detay lazım