275
{
data_value |= 0x04;
SIPO();
LCD_4bit_send(value);
}
void LCD_4bit_send(unsigned char lcd_data)
{
unsigned char temp = 0x00;
temp = (lcd_data & 0xF0);
data_value &= 0x0F;
data_value |= temp;
SIPO();
data_value |= 0x08;
SIPO();
delay_ms(dly);
data_value &= 0xF7;
SIPO();
delay_ms(dly);
temp = (lcd_data & 0x0F);
temp <<= 0x04;
data_value &= 0x0F;
data_value |= temp;
SIPO();
data_value |= 0x08;
SIPO();
delay_ms(dly);
data_value &= 0xF7;
SIPO();
delay_ms(dly);
}
void LCD_putstr(char *lcd_string)
{
while (*lcd_string != '\0')
{
LCD_send_data(*lcd_string);
lcd_string++;
};
}
void LCD_putchar(char char_data)
{
LCD_send_data(char_data);
}
void LCD_clear_home(void)
{
LCD_command(clear_display);
LCD_command(goto_home);
}