This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

target not created

Hi gays I need some help with my code I use kiel 4.1 when I want to creat it it shows the target not created with no errors or warnings,thanks advance for your help.

#include<REGX51.H>
//#include<reg51.h>
#include<stdio.h>
#include<math.h>

//------------------------------------------------------
//ADC config.
#define adc_port P1
#define sc P3_0
#define eoc P3_1

#define ADD_A P0_0
#define ADD_B P0_1
#define ADD_C P0_2
// LCD config.
#define lcd_port P2
#define rs P3_6
#define en P3_7
//------------------------------------------------------
//#define red P0_3
//#define ir P0_4
#define red P0_3
#define ir P0_4
//------------------------------------------------------
// function using
void delay(unsigned int);
void lcd_data(unsigned char value);
void ADC_0808();
void calc();
//------------------------------------------------------
unsigned int sum1=0,sum2=0;
unsigned char spo2[100],l[6],s;
char adc,avg1,avg2;
//------------------------------------------------------
//------------------------------------------------------
void calc()
{ unsigned int i,j,k,n=0; ADD_A=0; ADD_B=0; ADD_C=0;
for(i=0;i<6;i++)
{ for(j=0;j<100;j++) { ADC_0808(); spo2[j]=adc ; } l[n]=spo2[0] ; for(k=0;k<100;k++) {if(spo2[k]>l[n]) l[n]=spo2[k];} n++; s=spo2[0] ; for(k=0;k<100;k++) {if(spo2[k]<s) s=spo2[k];} sum2+=s; }
for(n=0;n<6;n++)
{sum1+=l[n];}
avg1=sum1/6 ;
avg2=sum2/6 ;
} //------------------------------------------------------
void ADC_0808()
{ sc=1;
sc=0;
while(eoc==0);
adc=adc_port;
} //------------------------------------------------------
// Generate Delay
void delay(unsigned int count) // Function to provide time delay in msec.
{ int i,j;
for(i=0;i<count;i++)
for(j=0;j<1275;j++);
} //------------------------------------------------------
//Sending Command to LCD
void lcd_cmd(unsigned char item) // Function to send commands to LCD
{ lcd_port= item; rs= 0; en=1; delay(1); en=0; return;
}

//Sending Data to LCD
void lcd_data(unsigned char value) // Function to send data to LCD (Letter or even any symbol in ASCII code)
{ lcd_port= value; rs= 1; en=1; delay(1); en=0; return;
} //------------------------------------------------------
//Sending String to LCD
void lcd_str(unsigned char *str)
{ int i=0; while(str[i]!='\0') { lcd_data(str[i]); i++; delay(1); } return;
} //------------------------------------------------------
void main()
{ float ratio,num,den;
while(1)
{ adc_port=0xff; red=1; ir=0; calc(); num=(avg1-avg2)/avg2; red=0; ir=0; calc(); den=(avg1-avg2)/avg2; ratio=num/den; } }

Parents
  • when I want to creat it shows :
    warnings:
    "uncalled segment,ignored for overlay process"
    "segment?pr?LCD_CMD?AA"
    "uncalled segment,ignored for overlay process"
    "segment?pr?LCD_STR?AA"

    error L107:
    "adress space overflow"
    space DATA
    segment_DATA_GROUp
    length: 0012H
    program size: data=146.0 xdata=0 code=1106
    the target not created

    #include<REGX51.H>
    //#include<reg51.h>
    #include<stdio.h>
    #include<math.h>
    
    //------------------------------------------------------
    //ADC config.
    #define adc_port P1
    #define sc P3_0
    #define eoc P3_1
    
    #define ADD_A P0_0
    #define ADD_B P0_1
    #define ADD_C P0_2
    // LCD config.
    #define lcd_port P2
    #define rs P3_6
    #define en P3_7
    //------------------------------------------------------
    //#define red P0_3
    //#define ir P0_4
    #define red P0_3
    #define ir P0_4
    //------------------------------------------------------
    // function using
    void delay(unsigned int);
    void lcd_data(unsigned char value);
    void ADC_0808();
    void calc();
    //------------------------------------------------------
    unsigned int sum1=0,sum2=0;
    unsigned char spo2[100],l[6],s;
    char adc,avg1,avg2;
    //------------------------------------------------------
    //------------------------------------------------------
    void calc()
    { unsigned int i,j,k,n=0; ADD_A=0; ADD_B=0; ADD_C=0;
    for(i=0;i<6;i++)
    { for(j=0;j<100;j++) { ADC_0808(); spo2[j]=adc ; } l[n]=spo2[0] ; for(k=0;k<100;k++) {if(spo2[k]>l[n]) l[n]=spo2[k];} n++; s=spo2[0] ; for(k=0;k<100;k++) {if(spo2[k]<s) s=spo2[k];} sum2+=s; }
    for(n=0;n<6;n++)
    {sum1+=l[n];}
    avg1=sum1/6 ;
    avg2=sum2/6 ;
    } //------------------------------------------------------
    void ADC_0808()
    { sc=1;
    sc=0;
    while(eoc==0);
    adc=adc_port;
    } //------------------------------------------------------
    // Generate Delay
    void delay(unsigned int count) // Function to provide time delay in msec.
    { int i,j;
    for(i=0;i<count;i++)
    for(j=0;j<1275;j++);
    } //------------------------------------------------------
    //Sending Command to LCD
    void lcd_cmd(unsigned char item) // Function to send commands to LCD
    { lcd_port= item; rs= 0; en=1; delay(1); en=0; return;
    }
    
    //Sending Data to LCD
    void lcd_data(unsigned char value) // Function to send data to LCD (Letter or even any symbol in ASCII code)
    { lcd_port= value; rs= 1; en=1; delay(1); en=0; return;
    } //------------------------------------------------------
    //Sending String to LCD
    void lcd_str(unsigned char *str)
    { int i=0; while(str[i]!='\0') { lcd_data(str[i]); i++; delay(1); } return;
    } //------------------------------------------------------
    void main()
    { float ratio,num,den;
    while(1)
    { adc_port=0xff; red=1; ir=0; calc(); num=(avg1-avg2)/avg2; red=0; ir=0; calc(); den=(avg1-avg2)/avg2; ratio=num/den; } }
    

Reply
  • when I want to creat it shows :
    warnings:
    "uncalled segment,ignored for overlay process"
    "segment?pr?LCD_CMD?AA"
    "uncalled segment,ignored for overlay process"
    "segment?pr?LCD_STR?AA"

    error L107:
    "adress space overflow"
    space DATA
    segment_DATA_GROUp
    length: 0012H
    program size: data=146.0 xdata=0 code=1106
    the target not created

    #include<REGX51.H>
    //#include<reg51.h>
    #include<stdio.h>
    #include<math.h>
    
    //------------------------------------------------------
    //ADC config.
    #define adc_port P1
    #define sc P3_0
    #define eoc P3_1
    
    #define ADD_A P0_0
    #define ADD_B P0_1
    #define ADD_C P0_2
    // LCD config.
    #define lcd_port P2
    #define rs P3_6
    #define en P3_7
    //------------------------------------------------------
    //#define red P0_3
    //#define ir P0_4
    #define red P0_3
    #define ir P0_4
    //------------------------------------------------------
    // function using
    void delay(unsigned int);
    void lcd_data(unsigned char value);
    void ADC_0808();
    void calc();
    //------------------------------------------------------
    unsigned int sum1=0,sum2=0;
    unsigned char spo2[100],l[6],s;
    char adc,avg1,avg2;
    //------------------------------------------------------
    //------------------------------------------------------
    void calc()
    { unsigned int i,j,k,n=0; ADD_A=0; ADD_B=0; ADD_C=0;
    for(i=0;i<6;i++)
    { for(j=0;j<100;j++) { ADC_0808(); spo2[j]=adc ; } l[n]=spo2[0] ; for(k=0;k<100;k++) {if(spo2[k]>l[n]) l[n]=spo2[k];} n++; s=spo2[0] ; for(k=0;k<100;k++) {if(spo2[k]<s) s=spo2[k];} sum2+=s; }
    for(n=0;n<6;n++)
    {sum1+=l[n];}
    avg1=sum1/6 ;
    avg2=sum2/6 ;
    } //------------------------------------------------------
    void ADC_0808()
    { sc=1;
    sc=0;
    while(eoc==0);
    adc=adc_port;
    } //------------------------------------------------------
    // Generate Delay
    void delay(unsigned int count) // Function to provide time delay in msec.
    { int i,j;
    for(i=0;i<count;i++)
    for(j=0;j<1275;j++);
    } //------------------------------------------------------
    //Sending Command to LCD
    void lcd_cmd(unsigned char item) // Function to send commands to LCD
    { lcd_port= item; rs= 0; en=1; delay(1); en=0; return;
    }
    
    //Sending Data to LCD
    void lcd_data(unsigned char value) // Function to send data to LCD (Letter or even any symbol in ASCII code)
    { lcd_port= value; rs= 1; en=1; delay(1); en=0; return;
    } //------------------------------------------------------
    //Sending String to LCD
    void lcd_str(unsigned char *str)
    { int i=0; while(str[i]!='\0') { lcd_data(str[i]); i++; delay(1); } return;
    } //------------------------------------------------------
    void main()
    { float ratio,num,den;
    while(1)
    { adc_port=0xff; red=1; ir=0; calc(); num=(avg1-avg2)/avg2; red=0; ir=0; calc(); den=(avg1-avg2)/avg2; ratio=num/den; } }
    

Children