R
RobustRohit
Guest
Mon écran LCD n'affiche pas les caractères ....
L'écran LCD est JHD162A
Je travaille sur p89v51RD2
Les broches de données sont connectées à p0.4-p0.7
RS est à P0.0
RW à P0.1
E à P0.2J'ai écrit le code suivant dans KEIL compilateur C, plz quelqu'un peut-il le déboguer???# include "reg51.h"
sbit rs = P0 ^ 0;
sbit Rw = P0 ^ 1;
e sbit P0 = ^ 2;
void initialisation ();
void putval (unsigned int);
void Delay ();
void write (unsigned char);void main ()
(
P0 = 0x00;
initialize ();
write ( 'A');
write ( 'B');
)void Delay ()
(
unsigned int i;
unsigned int j;
unsigned int t;
for (i = 0; i <100; i )
(
t = 0;
for (int j = 0; j <255; j ) / / juste pour le plaisir de tuer le temps ....
t ;
)
)void putval (unsigned int n)
(
RW = 0;
e = 1;
/ / Higher grignoter premier
P0 = ((n & 0xF0) | (0x08));
Delay ();
e = 0;
Delay ();
e = 1;
/ / Lower grignoter prochaine
P0 = (((n & (0x0F)) * 16) | (0x08));
Delay ();
e = 0;
Delay ();
)void initialisation ()
(
rs = 0;
putval (0x38);
putval (0x0e);
putval (0x04);
/ / Putval (0x02);
/ / Putval (0x0e);
/ / Putval (0x06);
/ / Putval (0x80);
)
void write (unsigned char c)
(
P0 = 0x01;
rs = 1; / / Le fonctionnement est d'écriture de données
RW = 0;
e = 1;
/ / Higher grignoter premier
P0 = ((c & 0xF0) | 0x09);
Delay ();
e = 0;
Delay ();
e = 1;
P0 = (((c & (0x0F)) * 16) | 0x09);
Delay ();
e = 0;
Delay ();
)
L'écran LCD est JHD162A
Je travaille sur p89v51RD2
Les broches de données sont connectées à p0.4-p0.7
RS est à P0.0
RW à P0.1
E à P0.2J'ai écrit le code suivant dans KEIL compilateur C, plz quelqu'un peut-il le déboguer???# include "reg51.h"
sbit rs = P0 ^ 0;
sbit Rw = P0 ^ 1;
e sbit P0 = ^ 2;
void initialisation ();
void putval (unsigned int);
void Delay ();
void write (unsigned char);void main ()
(
P0 = 0x00;
initialize ();
write ( 'A');
write ( 'B');
)void Delay ()
(
unsigned int i;
unsigned int j;
unsigned int t;
for (i = 0; i <100; i )
(
t = 0;
for (int j = 0; j <255; j ) / / juste pour le plaisir de tuer le temps ....
t ;
)
)void putval (unsigned int n)
(
RW = 0;
e = 1;
/ / Higher grignoter premier
P0 = ((n & 0xF0) | (0x08));
Delay ();
e = 0;
Delay ();
e = 1;
/ / Lower grignoter prochaine
P0 = (((n & (0x0F)) * 16) | (0x08));
Delay ();
e = 0;
Delay ();
)void initialisation ()
(
rs = 0;
putval (0x38);
putval (0x0e);
putval (0x04);
/ / Putval (0x02);
/ / Putval (0x0e);
/ / Putval (0x06);
/ / Putval (0x80);
)
void write (unsigned char c)
(
P0 = 0x01;
rs = 1; / / Le fonctionnement est d'écriture de données
RW = 0;
e = 1;
/ / Higher grignoter premier
P0 = ((c & 0xF0) | 0x09);
Delay ();
e = 0;
Delay ();
e = 1;
P0 = (((c & (0x0F)) * 16) | 0x09);
Delay ();
e = 0;
Delay ();
)