void LCD_Cmd(Byte Cde)
{ Byte D2;
LCD_RS = 0;
// envois poid fort
D2 = Cde >> 4;
LCD_RS = 0;
Transmet (D2);
// envois poid faible
D2= Cde & 0x0F;
LCD_RS = 0;
Transmet (D2);
}
void Init_LCD_2X16(void)
{
Byte Cde;
LCD_E = 0;
LCD_RW = 0;
LCD_RS = 0;
Cde= 0x30; // Mode 8 bit
LCD_Cmd(Cde);
DELAY_15MS;
Cde= 0x30; // Mode 8 bit
LCD_Cmd(Cde); // MSB
Delay_2Ms;
LCD_Cmd(Cde); // MSB
Delay_2Ms;
LCD_Cmd(Cde); // MSB
Delay_2Ms;
Cde= 0x20; // mode 4 bit sur B4..B7
LCD_Cmd(Cde);
// 2 lignes , carac 5x7 =0x28
Cde= 0x20;
LCD_Cmd(Cde);
Cde= 0x80;
LCD_Cmd(Cde);
Delay_2Ms;
// no cursor
Cde= 0x00;
LCD_Cmd(Cde);
Cde = 0x0C;
LCD_Cmd(Cde);
Delay_2Ms; // delais de 2ms
//efface display
Cde = 0x00;
LCD_Cmd(Cde);
Cde = 0x01;
LCD_Cmd(Cde);
Delay_2Ms; // delais de 2ms
}