Using an LCD with NT7603 Controller?

I really want to learn how to make THIS LCD work with my Arduino UNO. I haven't found any libraries for it so I'm not sure where to start.

It uses the NT7603 controller and the supporting documents on the webpage say it uses C51 language, but I don't know what that means. Any help on where to start with this is greatly appreciated!


Any help on where to start with this is greatly appreciated.

I would start with the venerable Liquid Crystal tutorial:

The NT7603 controller looks like it is compatible with the HD44780U on which the LiquidCrystal library is based.

The module appears to use the same pin numbers for the various lines as all the others although I am not sure about the physical configuration. The 'Pin Configuration' specifications for LCD pin 3 look strange but something may have been lost in translation, however the information in the 'Absolute Maximum Ratings' section look normal.

the supporting documents on the webpage say it uses C51 language

You can ignore that part since the 'language' mentioned would refer to the microprocessor that is sending signals to the LCD module. The document also mentions a 6800 controller (microprocessor) which dates back several decades -- to the time at which the HD44780 was being developed.


I finally received the displays and realized that I don't have a way of communicating with it. The LCD has an FPC tail with a connector that is surface mount and is way too small to connect wires with. Any idea how I can communicate with this LCD without having a circuit board already made?


After some time searching, I learned that what I needed is called an "FPC Adapter" and it will allow you to connect an FPC of varying pitches, to a breadboard. This is exactly what I needed, I just didn't know what it was called.

THIS is an example of one I'll be trying out.

My next step will be to make sure my circuit is correct with the provided technical documents.

My questions:

  1. Can you help me understand how to wire this up properly? It seems like there is conflicting language about the voltage to use. Page 8 of THIS says Pin3 (VDD) should be +5V, however, THIS document clearly shows Pin3 voltage of +3.5V.

  2. I connected 5V directly to the backlight (not pin3) and immediately smelled the magic smoke, so is it safe to assumed that the backlight is rated for 3.5V?

  3. Do I need to hook this LCD up exactly as shown in the schematic above, or can I wire it identical to that of a typical 16x2 character LCD that we see in most Arduino tutorials? I also fail to understand what C1 and C2 are doing in the schematic so a brief education on that would be greatly appreciated.

Thank you!

Here is my interpretation which may be worth no more than you are paying for it.

  1. From page 9 of the Character Module Datasheet it looks like the device can tolerate a 7 volt power supply but is designed to use a 3.5 volt supply.

  2. The backlight has a current rating, not a voltage rating. The Character Module Datasheet says that the maximum allowable current is 75mA and the Interfacing diagram shows that 45mA is the recommended current. It also says that a 12 ohm series resistor will give you this current with a 3.5 volt supply implying that the forward voltage of the LEDs is around 3 volts. The fact that the page heading references a microprocessor from the mid 1970s is sort of interesting.

  3. I think you can wire it up as shown in most Arduino tutorials EXCEPT for the fact that it appears that pins 2 and 3 are reversed from what is normally the case. The diagram on page 18 of the NT7603 datasheet shows that V5 is the 'contrast' connection that is normally found on LCD pin 3 but which is shown as pin 2 on both the Character Module Datasheet and the Interfacing diagram. You can wire the contrast potentiometer either as a voltage divider as shown on most data sheets and tutorials or as a variable resistor as shown on the Interfacing diagram.

C1 and C2 are power supply filtering and decoupling capacitors that should be found on all good digital circuit designs. They are already present on your Arduino.