We have seen how to interface an LCD with PIC16F877A . In this we are printing only a letter in the LCD , now we are going to Display a string on the LCD for this following steps are followed
First Create a MPLAB X project as in the steps for Blinking a LED using MPLAB X , PIC16F877A
And check the Interfacing LCD with PIC16F877A in MPLAB X to know how to interface a LCD
Components
1.PIC16F877A micro controller
2. 2x16 LCD Display
we are using the following functions
To display the string in LCD , just call the below lines in main function
The functions are defined below
First Create a MPLAB X project as in the steps for Blinking a LED using MPLAB X , PIC16F877A
And check the Interfacing LCD with PIC16F877A in MPLAB X to know how to interface a LCD
Components
1.PIC16F877A micro controller
2. 2x16 LCD Display
we are using the following functions
- void delay(unsigned int msec) // Time delay function
- void lcd_cmd(unsigned char item) // Function to send command to LCD
- void lcd_data(unsigned char item) // Function to send data to LCD
- void lcd_data_string(unsigned char *str) // Function to send data to string
- void lcd(unsigned char str[10])
To display the string in LCD , just call the below lines in main function
lcd_cmd(0x01);
lcd_cmd(0x86);
lcd("STRING TO DISPLAY");
The functions are defined below
void delay(unsigned int msec) // Time delay function
{
int i,j ;
for(i=0;i<msec;i++)
for(j=0;j<1275;j++);
}
void lcd_cmd(unsigned char item) // Function to send command to LCD
{
dataport = item;
rs= 0;
rw=0;
en=1;
delay(1);
en=0;
return;
}
void lcd_data(unsigned char item) // Function to send data to LCD
{
dataport = item;
rs= 1;
rw=0;
en=1;
delay(1);
en=0;
return;
}
void lcd_data_string(unsigned char *str) // Function to send data to string
{
int i=0;
while(str[i]!='\0')
{
lcd_data(str[i]);
i++;
//delay(10);
}
return;
}
void lcd(unsigned char str[10])
{
lcd_cmd(0x38);
lcd_cmd(0x0e);
lcd_data_string(str);
}