Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<reg51.h>
- #define display_port P2 // Data pins connected to port 2 on microcontroller
- sbit rs = P3^2; // RS pin connected to pin 2 of port 3
- sbit rw = P3^3; // RW pin connected to pin 3 of port 3
- sbit e = P3^4; // E pin connected to pin 4 of port 3
- void msdelay(unsigned int time) // Function for creating delay in milliseconds
- {
- unsigned i, j;
- for(i = 0; i < time; i++)
- for(j = 0; j < 1275; j++);
- }
- void lcd_cmd(unsigned char command) // Function to send command instruction to LCD
- {
- display_port = command;
- rs = 0;
- rw = 0;
- e = 1;
- msdelay(1);
- e = 0;
- }
- void lcd_data(unsigned char disp_data) // Function to send display data to LCD
- {
- display_port = disp_data;
- rs = 1;
- rw = 0;
- e = 1;
- msdelay(1);
- e = 0;
- }
- void lcd_init() // Function to prepare the LCD and get it ready
- {
- lcd_cmd(0x38); // Using 2 lines and 5x7 matrix of LCD
- msdelay(10);
- lcd_cmd(0x0F); // Turn display ON, cursor blinking
- msdelay(10);
- lcd_cmd(0x01); // Clear screen
- msdelay(10);
- lcd_cmd(0x81); // Bring cursor to position 1 of line 1
- msdelay(10);
- }
- void main()
- {
- unsigned char a[] = "EKNM GPTC TKPR";
- unsigned char b[] = "Electronics Dept";
- int l = 0;
- lcd_init();
- while(a[l] != '\0') // Display first line
- {
- lcd_data(a[l]);
- l++;
- msdelay(30);
- }
- lcd_cmd(0xC0); // Move cursor to second line
- l = 0;
- while(b[l] != '\0') // Display second line
- {
- lcd_data(b[l]);
- l++;
- msdelay(30);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement