Pages

Showing posts with label I2C. Show all posts
Showing posts with label I2C. Show all posts

Sunday, 22 February 2015

Modding an LCD1602 I2C/IIC Adapter Board to enable external PWM LCD backlight control

A big disadvantage of prototyping with LCD1602 character LCD displays is the amount of I/0-pins you need. Of course you can make use of the 4-bit control mode instead of the 8-bit, but you stil need at least 7 I/O-pins.

It's a better idea to use a cheap IIC/I2C adapter board. This enables you to control an LCD (including the backlight) with only 2 I/O pins (SDA & SCL).

You can find these cheap boards for example at DX.com.

These adapter boards contain a transitor driver to control the LCD backlight. The transistor base is driven by an I/O-pin of the onboard PCF8574. This works great to enable or disable the backlight, but it's "on" or "off". Dimming is not possible because the PCF8574 does not support PWM output.

For prototyping purposes I decided to use an external transitor driver on my Arduino Proto Shield.
Via jumpers I can choose what I want: ON/OFF (standard setting) via I2C or Dimmable via external PWM. This is how I did it.