Professional Documents
Culture Documents
#include<p18f4580.h>
#pragma config OSC=HS,LVP=OFF,DEBUG=OFF,WDT=OFF,PBADEN=OFF
#define rs PORTCbits.RC0
#define rw PORTCbits.RC1
#define en PORTCbits.RC3
#define ldata PORTD
void main(void)
{
TRISD=0;
TRISC=0;
en=0;
MSDelay(250);
lcdcmd(0x38);
MSDelay(250);
lcdcmd(0x0E);
MSDelay(15);
lcdcmd(0x01);
MSDelay(15);
lcdcmd(0x06);
MSDelay(15);
lcdcmd(0x84);
MSDelay(15);
lcddata('L');
MSDelay(15);
lcddata('E');
MSDelay(15);
lcddata('E');
MSDelay(15);
lcddata('\n');
MSDelay(15);
lcddata('H');
MSDelay(15);
lcddata('U');
MSDelay(15);
lcddata('I');
MSDelay(15);
lcddata('\n');
MSDelay(15);
lcddata('L');
MSDelay(15);
lcddata('I');
MSDelay(15);
lcddata('N');
MSDelay(15);
lcddata('G');
while(1);
}
#include<p18f4580.h>
#pragma config OSC=HS,LVP=OFF,DEBUG=OFF,WDT=OFF,PBADEN=OFF
#define rs PORTCbits.RC0
#define rw PORTCbits.RC1
#define en PORTCbits.RC3
#define ldata PORTD
#define busy PORTDbits.RD7
void main(void)
{
TRISD=0;
TRISC=0;
en=0;
MSDelay(250);
lcdcmd(0x38);
MSDelay(250);
lcdcmd(0x0E);
lcdready();
lcdcmd(0x01);
lcdready();
lcdcmd(0x06);
lcdready();
lcdcmd(0x84);
lcdready();
lcddata('L');
lcdready();
lcddata('E');
lcdready();
lcddata('E');
lcdready();
lcddata('\n');
lcdready();
lcddata('H');
lcdready();
lcddata('U');
lcdready();
lcddata('I');
lcdready();
lcddata('\n');
lcdready();
lcddata('L');
lcdready();
lcddata('I');
lcdready();
lcddata('N');
lcdready();
lcddata('G');
while(1);
}
void lcdready(void)
{
TRISD=0XFF;
rs=0;
rw=1;
do
{
en=1;
MSDelay(1);
en=0;
}
while(busy==1);
TRISD=0;
}
Schematic Diagram: