dakshatapawar
New Member
i am having an issue in displaying message on my lcd.......its not displaying anything plz help me
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
// -------------------------------------------------------
void lcd_initialise(void) /* Initialise LCD */
{
/* tie the R/W pin low permanently and ignore the DEM16217 d/sheet */
/* refer to the HD44780 d/sheet */
unsigned char data, n;
setbit(global, 1); /* indicate 1x 4 bit transfer*/
for(n=0; n<10; n++)
{
delay_10ms(); /* wait for power to stabilise*/
}
for (n=0; n<3; n++)
{
data = 0b00110000;
lcd_write(data);
}
/* function set */
data = 0b00100000;
lcd_write(data);
clearbit(global, 1); /* indicate 2x 4 bit transfer */
data = 0b00101000; /* N= 1; F=0 */
lcd_write(data);
/* display off */
data = 0b00001000;
lcd_write(data);
/* display clear */
data = 0b00000001;
lcd_write(data);
/* entry mode set */
data = 0b00000110; /* I/D = 1 S = 1 */
lcd_write(data);
/* display on */
data = 0b00001100;
lcd_write(data);
}
/* -------------------------------------------------------------*/
void lcd_write(unsigned char data) /* 4 bit LCD transfer */
{
load_lcd(data & 0xF0); /* load top 4 MSBs */
if ((global & 0b00000010)==0) /* 2 nibble transfer if bit clear */
{
data <<= 4; /* shift LSBs to MSBs */
load_lcd(data & 0xF0); /* load bottom 4 MSB */
}
delay_10ms();
}
/* -------------------------------------------------------------*/
void load_lcd(unsigned char lcd_data) /* load data into LCD */
{
setbit(PORTA, E);
PORTB &= 0x0F; /* clear top 4 bits */
PORTB |= lcd_data; /* toggle only DB7:DB4 */
asm("nop");
asm("nop");
asm("nop");
asm("nop");
clearbit(PORTA, E); /* clock in data */
}