You are on page 1of 2

// Lcd pinout settings

sbit LCD_RS at RB4_bit;


sbit LCD_EN at RB5_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D4 at RB0_bit;

// Pin direction
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D7_Direction at TRISB3_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D4_Direction at TRISB0_bit;

const char character[] = {0,16,24,8,8,20,20,20};

void CustomChar_1(char pos_row, char pos_char) {


char i;
Lcd_Cmd(64);
for (i = 0; i<=7; i++) Lcd_Chr_CP(character[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 0);
}
const char character_1[] = {0,0,0,31,27,27,0,0};

void CustomChar_2(char pos_row, char pos_char) {


char i;
Lcd_Cmd(72);
for (i= 0; i<=7; i++) Lcd_Chr_CP(character_1[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 1);
}
const char character_2[] = {0,4,4,14,10,10,0,0};

void CustomChar_3(char pos_row, char pos_char) {


char i;
Lcd_Cmd(80);
for (i = 0; i<=7; i++) Lcd_Chr_CP(character_2[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 2);
}
const char character_3[] = {0,0,30,26,2,2,2,0};

void CustomChar_4(char pos_row, char pos_char) {


char i;
Lcd_Cmd(88);
for (i = 0; i<=7; i++) Lcd_Chr_CP(character_3[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 3);
}
const char character_4[] = {0,0,14,8,14,2,2,0};

void CustomChar_5(char pos_row, char pos_char) {


char i;
Lcd_Cmd(96);
for (i = 0; i<=7; i++) Lcd_Chr_CP(character_4[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 4);
}
const char character_5[] = {0,0,2,2,14,10,10,0};

void CustomChar_6(char pos_row, char pos_char) {


char i;
Lcd_Cmd(104);
for (i = 0; i<=7; i++) Lcd_Chr_CP(character_5[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 5);
}
const char character_6[] = {0,0,10,11,10,14,0,0};

void CustomChar_7(char pos_row, char pos_char) {


char i;
Lcd_Cmd(112);
for (i = 0; i<=7; i++) Lcd_Chr_CP(character_6[i]);
Lcd_Cmd(_LCD_RETURN_HOME);
Lcd_Chr(pos_row, pos_char, 6);
}
int i,j=0;
void main(){
trisb=0;
trisc=1;
portb=0;
portc=0;
Lcd_Init();

Lcd_Cmd(_LCD_CURSOR_OFF);
Lcd_Out(1,4,"thank you");
while(1){

if(portc.f0 ==1&& i==0){


i=1;
Lcd_Cmd(_LCD_CLEAR);
}
if(portc.f0==0 && i==1){
i=0;
}
if(portc.f1 ==1&& j==0){
j=1;
CustomChar_1(1,4);
CustomChar_2(1,5);
CustomChar_3(1,6);
CustomChar_4(1,7);
CustomChar_5(1,8);
CustomChar_6(1,9);
CustomChar_7(1,10);

}
if(portc.f1==0 && j==1){
j=0;
}
}

You might also like