Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - pla.electro

Pages: [1]
1
Dear sir
we are using NHD-0208AZ-fsn-GBW-33V3 8X2 display we are able to print standard character
but we are unable to print cgram charcter.

see the below code
unsigned char code c_gucPerHr[9]  = {0X14,0X14,0X14,0X17,0X15,0X15,0X15,0X15};

void main()
{
         LCD_Buffer[14] =0x00;
         SetLCDCharPatt(0x40,c_gucPerHr);

}
void SetLCDCharPatt(unsigned char CGRamAdd,unsigned char ChrPatt[8])
{
   unsigned char j;                        

   write4Bitcmd(0x00);
   delay_low();
   
   write4Bitcmd(CGRamAdd); /*Addr. Counter set to CGRAM Addr.*/
   dly1();
   delay_low();
   delay_low();
   
   write4Bitcmd( 0x00);
   delay_low();
   
   for(j=0;j<=7;j++)
   {
      write4Bitdata( ChrPatt[j]);
      dly1();
                  
      delay_low();
   }
}


void write4Bitdata(unsigned char u8_data)
{   
   P0 = (P0 & 0x0F )| ((u8_data) & 0XF0); // Write HI nibble

   LCD_DATAORCMD = 1;
   LCD_CS = 1;
   _nop_();
   _nop_();

   _nop_();
   _nop_();
   _nop_();
   LCD_CS = 0;

   P0 = (P0 & 0x0F )| ((u8_data <<4 ) & 0Xf0); //Write lower nibble
   LCD_DATAORCMD = 1;
   LCD_CS = 1;
   _nop_();
   _nop_();

   _nop_();
   _nop_();
   _nop_();

   LCD_CS = 0;
   
}

void write4Bitcmd(unsigned char u8_cmd)
{
   P0 = (P0 & 0x0F )| ((u8_cmd) & 0xF0); // Write HI nibble
   LCD_DATAORCMD = 0;
   LCD_CS = 1;
   _nop_();
   _nop_();
   
   _nop_();
   _nop_();
   _nop_();
   LCD_CS = 0;

   P0 = (P0 & 0x0F )| ((u8_cmd << 4 ) & 0XF0); //Write lower nibble

   LCD_DATAORCMD = 0;
   LCD_CS = 1;
   _nop_();
   _nop_();

   _nop_();
   _nop_();
   _nop_();
   LCD_CS = 0;
   
}
void delay_low(void)
{
   unsigned char delay_data;
   delay_data = 0xFF;
   while(delay_data)
   {
      --delay_data;
   }
}

void dly2(void)
{
   unsigned char del;
   del = 0x0A;
   while(del)
   {
      del--;
   }
}

kkinldy guide us to resolve the issue , our production is held up due to the LCD issue.

Regards,

Anushka

2
Character LCDs / NHD-0208AZ-fsn-GBW-33V3
« on: June 11, 2018, 04:49:16 AM »
we are unable to write CGRAM of the display
standard characters are displayed properly on the display
see the code below
unsigned char code c_gucPerHr[9]  = {0X14,0X14,0X14,0X17,0X15,0X15,0X15,0X15};

void main()
{
         LCD_Buffer[14] =0x00;
         SetLCDCharPatt(0x40,c_gucPerHr);

}
void SetLCDCharPatt(unsigned char CGRamAdd,unsigned char ChrPatt[8])
{
   unsigned char j;                        

   write4Bitcmd(0x00);
   delay_low();
   
   write4Bitcmd(CGRamAdd); /*Addr. Counter set to CGRAM Addr.*/
   dly1();
   delay_low();
   delay_low();
   
   write4Bitcmd( 0x00);
   delay_low();
   
   for(j=0;j<=7;j++)
   {
      write4Bitdata( ChrPatt[j]);
      dly1();
                  
      delay_low();
   }
}


void write4Bitdata(unsigned char u8_data)
{   
   P0 = (P0 & 0x0F )| ((u8_data) & 0XF0); // Write HI nibble

   LCD_DATAORCMD = 1;
   LCD_CS = 1;
   _nop_();
   _nop_();

   _nop_();
   _nop_();
   _nop_();
   LCD_CS = 0;

   P0 = (P0 & 0x0F )| ((u8_data <<4 ) & 0Xf0); //Write lower nibble
   LCD_DATAORCMD = 1;
   LCD_CS = 1;
   _nop_();
   _nop_();

   _nop_();
   _nop_();
   _nop_();

   LCD_CS = 0;
   
}

void write4Bitcmd(unsigned char u8_cmd)
{
   P0 = (P0 & 0x0F )| ((u8_cmd) & 0xF0); // Write HI nibble
   LCD_DATAORCMD = 0;
   LCD_CS = 1;
   _nop_();
   _nop_();
   
   _nop_();
   _nop_();
   _nop_();
   LCD_CS = 0;

   P0 = (P0 & 0x0F )| ((u8_cmd << 4 ) & 0XF0); //Write lower nibble

   LCD_DATAORCMD = 0;
   LCD_CS = 1;
   _nop_();
   _nop_();

   _nop_();
   _nop_();
   _nop_();
   LCD_CS = 0;
   
}
void delay_low(void)
{
   unsigned char delay_data;
   delay_data = 0xFF;
   while(delay_data)
   {
      --delay_data;
   }
}

void dly2(void)
{
   unsigned char del;
   del = 0x0A;
   while(del)
   {
      del--;
   }
}


3
Character LCDs / Custom Characters does not get Displayed Correctly
« on: May 17, 2018, 12:24:37 AM »
I am using 8x2 LCD NHD-0208AZ-FSW-GBW-33V3. I want to print a custom character on the display. But the display always displays a specific incorrect character. CGRAM Address - 0x40.  Attached the pattern below.

Pages: [1]