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 - Saurabh_B

Pages: 1 ... 21 22 [23] 24 25 26
TFTs / Re: NHD-4.3-480272EF-ATXL#-T FFC Connector
« on: August 28, 2015, 08:08:37 AM »

Either the 54104-4031 or the 54132-4062 will work just fine, The deciding factor is where you would be likely to mount the display. On our controller they use a top contact FFC connector because it is often attached onto the bezel of the display.

OLEDs / Re: Graphic OLED bmp converter
« on: August 27, 2015, 10:18:08 AM »
One way of doing this is converting a hexdump with LCD Assistant with the following settings:
Horizontal Byte Orientation
Little Endian

The variables I pass to the function are:
*img = points to image hexdump array
a = column start
b = column end
c = row start
d = row end

Code: [Select]
void Show(unsigned char *img, unsigned char a, unsigned char b, unsigned char c, unsigned char d) {
  unsigned char    *src, temp, result;  // Source Pointer, Temp Value, Result after masking
  unsigned char i, j;                   //Variables for loops
  int cnt = 0;                          //Counter for array
  column(a, (b/2));                     //Column Set
  row(c, d);                            //Row Set
  src = img;

 /****************DISPLAY LOOP*******************************/
  for (i = 0; i <= d; i++)   // monochrome image only, no grayscale so pixels are on or off.
    for (j = 0; j <= (b/8); j++)
      temp = *src;
      result = temp & 0xC0; // Mask for 2 MSB
      if( result == 0xC0 ) {data(0xFF);}
      else if ( result == 0x80 ) {data(0xF0);}
      else if ( result == 0x40 ) {data(0x0F);}
      else data(0x00);

      result = temp & 0x30; // mask for next 2 bits
      if ( result == 0x30 ) {data(0xFF);}
      else if( result == 0x20 ){ data(0xF0);}
      else if( result == 0x10 ){ data(0x0F);}
      else data(0x00);

      result = temp & 0x0C; //mask for bits 3&4
      if ( result == 0x0C) {data(0xFF);}
      else if( result == 0x08 ) {data (0xF0);}
      else if( result == 0x04 ) {data (0x0F);}
      else data(0x00);

      result = temp & 0x03;
      if( result == 0x03 ) {data(0xFF);}
      else if( result == 0x02) {data(0xF0);}
      else if( result == 0x01) {data(0x0F);}
      else data(0x00);

OLEDs / Re: Graphic OLED bmp converter
« on: August 26, 2015, 09:56:55 AM »

We personally use the LCDAssistant. It is freeware that converts any monochrome bmp into a hex dump which can just be copied and used into the program. The display seemed just fine when it was displaying the image from that program.

I was wondering if you could post a picture of the image you wanted to display, and how the image on the display looked. Also if possible the hexdump from the bmp tool you were using along with the subroutine to display the image.

TFTs / Re: FT5306 Touch Controller
« on: August 26, 2015, 09:29:28 AM »

I was wondering if you could give me a little bit more information:

1. What size display are you using?
2. Would you be able to provide the date stamp on the touch panel of the FFC of the touch panel?
3. Also if you could provide what you have stored in registers, A3, A6 and A8 of the controller?

OLEDs / Re: Calculation of Font Addresses Multi‐Font Displays Help!
« on: August 26, 2015, 09:03:02 AM »

To get the A the hex value should be 21.

There isn't a set example for the standard 5x7 fonts, you would have to rewrite the data for the language you would like to use the 4.1 calculation. So for the letter A just replace all the ASCIICODE sections with 0x21.

ASCIICODE: 8bit ASCII character code
Address: Address of character data

if(ASCIICODE >= 0x20 && ASCIICODE <= 0xFF)
 Address = (ASCIICODE – 0x20) *8;

OLEDs / Re: NHD-2.7-12864UMY3 Mechanical Info
« on: August 25, 2015, 08:15:22 AM »
OLED displays are generally more rugged than traditional LCD's. But if you want something that sunlight readable, an OLED might not be the best way to go. If you are interested in this display we could supply a custom part where this display would come with a touch panel.  If you are interested in customizing this display please email us at

If you are looking at standard parts with a touch screen we do have our TFT displays that already come with a touch panel. We have a 2.4" Resistive Touch TFT, although the touchscreen does reduce the brightness considerably. We also have a new line of sunlight readable TFT displays that are coming out soon, if the physical size of the 3.5" Displays work for you; we will have a sunlight readable variant coming out with a touch panel as a standard part.

OLEDs / Re: NHD-2.7-12864UMY3 Mechanical Info
« on: August 24, 2015, 11:25:12 AM »

The part is attached to the PCB through the bezel. To connect to the display you could use either the 22 pin through holes or use a Molex connector; which would be soldered to the pads beneath the 22 pin through holes. We do offer a service of attaching either connector to the display.
1X22 Pin Header Soldered onto your Display
22 Pin Molex Connector

The PCB does have mounting holes on the corners; the mounting holes have a diameter of 2.5mm. You can see both the mounting holes and connections on a larger image of the display itself. Larger Image of NHD-2.7-12864UMY3

We will look into the issue you were having with the Capcha images.

These codes will work for the displays, they were written for the ST7066U controller; so you would need to increase some of the time between the instructions.
8-bit C code:
4-bit Basic code:

If you want the serial code please email


The most similar controller inside the OLED display's is the ST7066U. The commands that are used for displays with this controller will be the same as the commands used by the OLED displays. The difference will be in the amount of time required to execute the commands or time to write the data onto the display.

There is a sample initialization sequence on pages 20 and 21 in the datasheet of the display. At the same time any program used for the  ST7066U will work for this display; but the code would need to have the timing adjusted for the new display.
The links for the datasheets for the OLED displays are here:

When we say timing issue it usually refers to the time between consecutive commands or data writes to the display. For instance with the ST7066U many of the commands will have a max execution time of 37us, where as the OLED display will have a max execution time of 600us.

If the time you give the commands to execute to the display are on the borderline of the max execution time the error wont occur at first, but over time you will start seeing various errors occur with the display such as a shift in the display.

The ST7066U can be used with either 3.3V or 5V depending on which LCD display it is used in. In this case the VDD is 5V so your minimum Vih would be 3.5.

OLEDs / Re: NHD-0420CW-AB3 contrast (brightness)
« on: August 12, 2015, 09:04:51 AM »
Unfortunately if you have it at the lowest setting allowed by the contrast control, there's nothing else you can do to the display.

You can however use a filter or an overlay to dim the screen.

OLEDs / Re: NHD‐0220DZW‐AY5 loosing columns
« on: August 06, 2015, 03:39:01 PM »
Some instructions have a max execution time of up to 600us, while the write cycle has a minimum of 500ns. For the LCD display it takes a max of 37us for some instructions.

NHD-0220DZW-AY5 Datasheet

OLEDs / Re: NHD‐0220DZW‐AY5 loosing columns
« on: August 06, 2015, 08:24:01 AM »

This situation often occurs because of a timing error in the code, You mentioned you are using the same code as the NHD-0220GZ-FL-GBW, while they have the same commands, the OLED does require more time between instructions.

OLEDs / Re: NHD-0420CW-AB3 init / cgram
« on: August 06, 2015, 07:52:17 AM »
Glad to see  everything worked out.

OLEDs / Re: SPI Communication Start Byte
« on: August 05, 2015, 08:18:51 AM »
According to the datasheet you should be able to. The start byte dictates whether the following chain of instructions are commands or not.

Pages: 1 ... 21 22 [23] 24 25 26