Smart LCD Brightness Control using Arduino and LDR




Smart LCD  with Automatic Brightness Adjusting Using Arduino and LDR Sensor

Here is a simple Arduino project that focuses on adjusting the brightness of an LCD screen whenever there isn’t  sufficient light in a room. The Arduino reads the surrounding light intensity using an LDR sensor.  The room temperature and humidity range will also be displayed on the LCD. The entire hardware of this simple project using Arduino can be divided into three parts. The sensors, Arduino board, and the LCD module.

Smart LCD Brightness Control using Arduino and LDR




Circuit Diagram – Smart Brightness Control

Let’s have a look at the sensors first.

Sensors – LDR and DHT11

In order to detect the intensity of light, we use a sensor called an LDR (Light Dependent Resistor). The LDR is a special type of resistor which allows higher voltages to pass through it (low resistance) whenever there is a high intensity of light, and passes a low voltage (high resistance) whenever it is dark. The resistance of an LDR is inversely proportional to the intensity of the light falling on it. So when there is sufficient amount of light in the room, the resistance of the LDR will be low. So the voltage dropped across the LDR will be low and vice versa. The voltages dropped across the LDR is given as input to the analog input pin A4 of the arduino board.

Temperature and humidity ranges are obtained using a DHT-11 module. The DHT11 is a basic, ultra low-cost digital temperature and humidity sensor. It uses a capacitive humidity sensor and a thermistor to measure the surrounding air and spits out a digital signal on the data pin (no analog input pins needed). Its fairly simple to use, but requires careful timing to grab data. Arduino provides a library which makes easier for fetching data from the DHT11 module.

READ  ST7565 LCDs: Graphical LCDs

Arduino UNO Board

 Arduino UNO is a microcontroller board, contains an on-board power supply, USB port to communicate with PC, and an Atmel microcontroller chip. It simplifies the process of creating any control system by providing the standard board that can be programmed and connected to the system without the need of any sophisticated PCB design and implementation. ThArduinono board has to be programmed to read  the sensor values and displaying it accurately with proper LCD brightness. This is done by reading the LDR sensor connected to analog input A4 of the arduino and the DHT11 module connected to the 6th digital pin of arduino. The voltage range that can be applied to a particular analog input of the arduino is 0 to 5V. This range can be converted into a digital value between 0 and 1023 using  analogRead () command.

 LCD Module

Interfacing LCD module to arduino is another important step in this project. JHD162A is the LCDmodule used here. JHD162A is a 16×2 LCD module based on the HD44780 driver from Hitachi. The JHD162A has 16 pins and can be operated in 4-bit mode or 8-bit mode. Here we are using the LCD module in 4-bit mode. In 8 bit mode we require 8 data pins and 3 control pins whereas in 4 bit mode, data is sent using 4 data pins and 3 control pins. In our project, R/W pin is always grounded so we require only 6 pins in 4 bit mode, thus saving no of pins. During interfacing  the library is first initialized and then define pins using the command LiquidCrystal lcd(RS, E, D4, D5, D6, D7), pins are assigned in this order.

READ  Salvaging Liquid Crystal Displays (LCDs)

Read more: Smart LCD Brightness Control using Arduino and LDR




Leave a Comment

*
= 4 + 7

(Spamcheck Enabled)

Read previous post:
How to Improve Buck Converter Light Load Efficiency with an LDO
How to Improve Buck DC Converter Light Load Efficiency with an LDO

Designing a DC/ DC converter that only consumes micro amps of current at no load can be compared to fueling...

Close
Scroll to top