Display and scroll text on LCD
In this tutorial we are going to show you how to display a message on an LCD and make the text scroll.we require the following components:
- An LCD (16X2)
- PIC Microcontroller (PIC16F877A)
- 8 MHz oscillator
- 22pF capacitor
- A resistor (10k)
- A variable resistor (5k)
The code (command given to the microcontroller) is programmed with miKro C.
The code is shown below
// begin configuration of LCD
sbit LCD_RS_direction at TRISB0_bit;
sbit LCD_EN_direction at TRISB1_bit;
sbit LCD_D4_direction at TRISB2_bit;
sbit LCD_D5_direction at TRISB3_bit;
sbit LCD_D6_direction at TRISB4_bit;
sbit LCD_D7_direction at TRISB5_bit;
sbit LCD_RS at RB0_bit;
sbit LCD_EN at RB1_bit;
sbit LCD_D4 at RB2_bit;
sbit LCD_D5 at RB3_bit;
sbit LCD_D6 at RB4_bit;
sbit LCD_D7 at RB5_bit;
// End of LCD configuration
void main() { char txt[]="welcome to LCD"; char text[]="display by EKETECH"; char i;
TRISB=0X00; // Configure PORTB as output
PORTB=0X00; // initialise PORTB
while(1) // loop
{
lcd_Init(); // initialise LCD
lcd_cmd(_lcd_clear); // clear LCD
lcd_cmd(_lcd_cursor_off); //OFF LCD cursor
delay_ms(200); // delay 0.2 seconds
lcd_out(1,2,txt); // display "welcome to LCD" on row 1 of LCD
delay_ms(200); // delay for 0.2 second
lcd_out(2,1,text); // display "display by EKETECH"; on row 2
delay_ms(700); // delay for 0.7 seconds
for(i=0; i<16;i++){ //repeat command 15 times
lcd_cmd(_lcd_shift_left); // shift lcd display once by the left
delay_ms(100); } // delay for 0.1 second
}
}
( circuit + code)
was this interesting? leave your comments below and please subscribe to get updates directly into your inbox.