LCD 1602 blue screen with backlight LCD display 1602A-5v
LCD 1602 blue screen with backlight LCD display 1602A-5v
Collection
$0.89
Collection
Color
  • Detail
  • Parameters

New Character LCD1602 LCD monitor 1602 5V blue screen blacklight and white code 1602A 16X2 for ARDUINO


THE FOLLOWING   DATA FOR REFERENCE ONLY:

---------------------------------------------------
       |LCM-----51   | LCM-----51   | LCM------51      |
       ------------------------------------------------|
       |DB0-----P1.0 | DB4-----P1.4 | RW-------P2.0    |
       |DB1-----P1.1 | DB5-----P1.5 | RS-------P2.1    |
       |DB2-----P1.2 | DB6-----P1.6 | E--------P2.2    |
       |DB3-----P1.3 | DB7-----P1.7 | VLCD 1K GND|
       ---------------------------------------------------

[AT89S52 12M
=============================================================*/

#define LCM_RW   P2_0 //
#define LCM_RS   P2_1
#define LCM_E   P2_2
#define LCM_Data   P1
#define Busy    0x80 // LCM   Busy

i nclude

void WriteDataLCM(unsigned char WDLCM);
void WriteCommandLCM(unsigned char WCLCM,BuysC);
unsigned char ReadDataLCM(void);
unsigned char ReadStatusLCM(void);
void LCMInit(void);
void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData);
void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData);
void Delay5Ms(void);
void Delay400Ms(void);

unsigned char code uctech[] = {"uctech"};
unsigned char code net[] = {"uctech.icpcn.com"};

void main(void)
{
Delay400Ms(); // LCM
LCMInit(); //LCM
Delay5Ms(); //

DisplayListChar(0, 5, uctech);
DisplayListChar(0, 0, net);
ReadDataLCM();//
while(1);
}

//
void WriteDataLCM(unsigned char WDLCM)
{
ReadStatusLCM(); //
LCM_Data = WDLCM;
LCM_RS = 1;
LCM_RW = 0;
LCM_E = 0; //
LCM_E = 0; //
LCM_E = 1;
}

//
void WriteCommandLCM(unsigned char WCLCM,BuysC) //BuysC
{
if (BuysC) ReadStatusLCM(); //
LCM_Data = WCLCM;
LCM_RS = 0;
LCM_RW = 0;
LCM_E = 0;
LCM_E = 0;
LCM_E = 1;
}

//
unsigned char ReadDataLCM(void)
{
LCM_RS = 1;
LCM_RW = 1;
LCM_E = 0;
LCM_E = 0;
LCM_E = 1;
return(LCM_Data);
}

//
unsigned char ReadStatusLCM(void)
{
LCM_Data = 0xFF;
LCM_RS = 0;
LCM_RW = 1;
LCM_E = 0;
LCM_E = 0;
LCM_E = 1;
while (LCM_Data & Busy); //
return(LCM_Data);
}

void LCMInit(void) //LCM
{
LCM_Data = 0;
WriteCommandLCM(0x38,0); //
Delay5Ms();
WriteCommandLCM(0x38,0);
Delay5Ms();
WriteCommandLCM(0x38,0);
Delay5Ms();

WriteCommandLCM(0x38,1); //
WriteCommandLCM(0x08,1); //
WriteCommandLCM(0x01,1); //
WriteCommandLCM(0x06,1); //
WriteCommandLCM(0x0C,1); //
}

//
void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)
{
Y &= 0x1;
X &= 0xF; //
if (Y) X |= 0x40; // +0x40;
X |= 0x80; //
WriteCommandLCM(X, 0); /
WriteDataLCM(DData);
}


void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)
{
unsigned char ListLength;

  ListLength = 0;
Y &= 0x1;
X &= 0xF; //
while (DData[ListLength]>0x20) //
   {
   if (X <= 0xF) //X0xF
    {
     DisplayOneChar(X, Y, DData[ListLength]); //
     ListLength++;
     X++;
    }
   }
}

//5ms
void Delay5Ms(void)
{
unsigned int TempCyc = 5552;
while(TempCyc--);
}

//400ms
void Delay400Ms(void)
{
unsigned char TempCycA = 5;
unsigned int TempCycB;
while(TempCycA--)
{
   TempCycB=7269;
   while(TempCycB--);
};


Code
ARM017
Weight
35 g
Home
Customer service
shopping cart
ADD TO CART
BUY NOW