빌드 시키면 위 짤처럼 에러가 뜨는데 


교재에 있는 소스코드 그대로 갖다 넣었는데 왜 에러가 뜨는건지 모르겠어


아래가 내가 넣은 소스코드인데 잘못된 부분이 어디야??








void lcd_busy(void)


{

/*

DDRA = 0x00;

do {

PORTC &= 0b00000110;

PORTC |= 0b00000010;

PORTC |= 0b00000100;

} while(PINA & 0x80);


DDRA = 0xff;

*/

_delay_ms(50);

}






void lcd_command(unsigned char cmd)


{

lcd_busy();


PORTA = cmd;

PORTC &= ob00000110;

PORTC &= ob00000101;

PORTC |= ob00000100;

PORTC &= ob00000001;

_delay_us(1);

}






void lcd_init()


{

DDRA = 0xff;

DDRC - DDRC | 0x0f;


_delay_ms(15);


PORTA = 0b00110000;

PORTC &= 0b00000000;

_delay_us(4100);

PORTC &= 0b00000000;

_delay_us(100);

PORTC &= 0b00000000;


lcd_command(0b00111000);

lcd_command(0b00001000);

lcd_command(0b00000001);

lcd_command(0b00000110);


lcd_command(0b00001111);

}





void lcd_data(unsigned char byte)


{

lcd_busy();


PORTC |= 0b00000001;

PORTC &= 0b00000101;

PORTC |= 0b00000100;

_delay_us(50);

PORTA = byte;

_delay_us(50);

PORTC &= 0b00000111;

}




void lcd_string(char *str)


{

int i=0;

while(1) {

if (str[i] == '\0') break;

lcd_data(str[i++]);

}

}




void lcd_display_clear()


{

lcd_command(0b00000001);

}



void lcd_entry_mode(int ID, int S)


{

unsigned char cmd;


cmd = 0b00000100;

if (ID == 1) cmd = cmd | 0b00000010;

if (S == 1) cmd = cmd | 0b00000001;

lcd_command(cmd);

}





void lcd_display_OnOff(int D, int C, int B)


{


unsigned cmd;


cmd = 0b00001000;

if (D == 1) cmd = cmd | 0b00000100;

if (C == 1) cmd = cmd | 0b00000010;

if (B == 1) cmd = cmd | 0b00000001;

lcd_command(cmd);

}




void lcd_cursordisplay_shift(int SC, int RL)


{

unsigned cmd;


cmd = 0b00010000;

if (SC == 1) cmd = cmd | 0b00001000;

if (RL == 1) cmd = cmd | 0b00000100;

lcd_command(cmd);

}



void lcd_display_position(unsigned char row, unsigned char col)


{

unsigned cmd;


cmd = 0b1000000 | ((row-1)*0x40+(col-1));

lcd_command(cmd);

}