Introduction to the LM3915
The LM3915 is a popular integrated circuit (IC) used for creating LED bar graph displays to visualize analog signal levels. It contains an array of 10 comparators for detecting input voltages and 10 LED drivers to illuminate a corresponding number of LEDs based on the input voltage level. This allows the LM3915 to easily convert an analog signal into a linear bar graph display.
Some key features of the LM3915 include:
- Bar or dot display mode
- Expandable to displays of 100 steps
- Internal voltage reference from 1.2V to 12V
- Adjustable display brightness
- Single 3V to 25V supply operation
- Outputs can drive LEDs, LCDs or vacuum fluorescent displays
In this article, we’ll take an in-depth look at the lm3915 Datasheet to understand how to use this versatile IC in your projects. We’ll cover the pinout, key electrical characteristics, basic application circuits, and more.
LM3915 Pinout
The LM3915 comes in an 18-pin dual-inline package (DIP). Here is the pinout:
Pin | Name | Description |
---|---|---|
1 | LED 1 | Cathode connection for LED 1 (most significant bit) |
2 | LED 2 | Cathode connection for LED 2 |
3 | LED 3 | Cathode connection for LED 3 |
4 | LED 4 | Cathode connection for LED 4 |
5 | LED 5 | Cathode connection for LED 5 |
6 | LED 6 | Cathode connection for LED 6 |
7 | LED 7 | Cathode connection for LED 7 |
8 | LED 8 | Cathode connection for LED 8 |
9 | LED 9 | Cathode connection for LED 9 |
10 | LED 10 | Cathode connection for LED 10 (least significant bit) |
11 | REF OUT | Reference voltage output |
12 | REF ADJ | Reference voltage adjust |
13 | V+ | Positive supply voltage (3V to 25V) |
14 | SIG IN | Signal input |
15 | RHI | Resistor high end for adjusting full-scale voltage range |
16 | RLO | Resistor low end for adjusting full-scale voltage range |
17 | MODE | Display mode select (1 = bar mode, 0 = dot mode) |
18 | GND | Ground |
The LEDs are connected between the LED pins (1-10) and V+. The reference voltage on REF OUT (pin 11) determines the step size between each LED. This is 1.25V by default but can be adjusted using pin 12.
LM3915 Modes of Operation
The LM3915 has two display modes that are selected using the MODE pin (17):
-
Dot mode (MODE pin low): In dot mode, only a single LED is illuminated corresponding to the input voltage level.
-
Bar mode (MODE pin high): Bar mode illuminates all the LEDs up to and including the one corresponding to the input voltage level, creating a bar graph effect.
You can switch between modes by changing the logic level on the MODE pin.

Electrical Characteristics
Here are some of the key electrical characteristics of the LM3915:
Parameter | Min | Typ | Max | Units |
---|---|---|---|---|
Supply voltage (V+) | 3 | 25 | V | |
Supply current (V+ = 5V) | 4.2 | 7 | mA | |
Supply current (V+ = 20V) | 22 | 30 | mA | |
Reference voltage (REF OUT) | 1.2 | 1.25 | 1.3 | V |
Reference adjust range | 1.2 | 12 | V | |
Input bias current | 25 | 100 | nA | |
Input signal overvoltage | 35 | V | ||
LED current (V+ = 5V) | 7 | 10 | 13 | mA |
LED voltage drop | 1.5 | 2.5 | V |
The LM3915 will work with a supply voltage between 3V and 25V. The current consumption depends on the supply voltage and number of LEDs illuminated. With a 5V supply, it draws about 10mA per illuminated LED.
The internal reference provides a very stable 1.25V output. You can adjust this between about 1.2V to 12V using a pot on the REF ADJ pin for different full scale input ranges.
The signal input has a high impedance (only 25nA typical bias current) and can tolerate overvoltages up to 35V. The LED current is around 10mA but can vary from 7mA to 13mA.
Basic Application Circuit
Here is a basic LM3915 circuit for creating a 10-step bar graph display:
V+
|
[R]
|
+---+--------+
| | |
[P] [R] [ LEDs ]
| | |
| REF |
SIG | ADJ LED1
IN | | |
| | LED2
| | |
--- | LED3
RHI [R] | |
| | LED4
| REF |
RLO [R] OUT LED5
| | |
| | LED6
| | |
| | LED7
GND | |
| | LED8
MODE | |
| | LED9
| |
| LED10
| |
GND GND
In this circuit:
- A potentiometer [P] is used on the REF ADJ pin to set the reference voltage and full scale range.
- Resistors [R] on RHI and RLO set the minimum and maximum input voltages corresponding to LED1 and LED10.
- The MODE pin is grounded to select dot mode. Connect it to V+ for bar mode instead.
- The LEDs connect to pins LED1 (most significant bit) through LED10 (least significant bit).
- A series resistor [R] is used to limit the LED current based on the supply voltage V+.
The reference voltage on REF OUT sets the step size between each LED. With the default 1.25V reference, each LED represents a 125mV step (1.25V / 10). You can change the reference voltage to adjust this.
The voltage applied to SIG IN is compared against the reference voltage by the internal comparators. The comparator outputs drive the LEDs. As the input voltage increases, more comparators turn on, illuminating more LEDs.
Expanding the Display
You can cascade multiple LM3915s to create displays with more than 10 LEDs. To make a 20-step display for example:
-
Connect the REF OUT of the first LM3915 to the SIG IN of the second.
-
Tie the REF ADJ pins of both ICs together and to the wiper of a pot between V+ and GND to set the reference.
-
The RHI end of the pot goes to RHI on the first IC. RLO of the first IC connects to RHI on the second IC. RLO on the second IC goes to GND.
-
LED1-10 connect to the first IC and LED11-20 to the second.
The first LM3915 will display the upper 10 steps and the second will display the lower 10 steps. You can keep adding more LM3915s in the same way for even larger displays.
You can also OR multiple LEDs together to get a display with 5 or fewer steps. For a 5-step display, connect LED1 and LED2 together, LED3 and LED4 together, and so forth.
Adjusting Brightness
To control the LED brightness, put a pot between pin 7 and 8 with the wiper connected to V+. This pot will adjust the current through the internal voltage reference and change the LED current.
The LED current is around 10 times the reference current, so you can use this formula to calculate the required pot resistance:
R = (V+ - 1.25V) / (ILED / 10)
For example, with a 5V supply and 10mA LED current, the pot should be about 375Ω.
Frequently Asked Questions (FAQ)
What is the LM3915 used for?
The LM3915 is an LED bar graph driver IC. It senses an analog voltage and drives 10 LEDs in a linear bar graph fashion to visually indicate the input level. It’s commonly used in audio level meters, battery meters, and other types of simple analog meters.
How do I power the LM3915?
The LM3915 needs a supply voltage between 3V and 25V on the V+ pin. The absolute maximum rating is 25V. Bypassing V+ to ground with a 0.1μF capacitor is recommended.
How much current do the LEDs need?
The LED current is typically around 10mA but can range from 7mA to 13mA. The exact current depends on the supply voltage and can be adjusted using the reference voltage. Always use a series resistor to limit the current based on your supply voltage.
Can I use the LM3915 with a microcontroller?
Yes, you can easily interface the LM3915 with a microcontroller. The SIG IN pin can directly connect to a microcontroller’s analog output or PWM output with a simple RC filter. The LED pins could connect to a microcontroller’s digital inputs to read back the level if needed.
Can I display peak or average levels?
The LM3915 only displays the instantaneous input voltage. To display peak or average levels, you’ll need to add an external peak detect or averaging circuit before the SIG IN pin. A simple op-amp peak detector can be used to capture and hold peaks.
Conclusion
The LM3915 is a very handy IC whenever you need a simple way to display an analog signal level. With 10 comparators and 10 LED drivers in one package, it really simplifies the circuitry needed for a bar graph display.
In this article, we took an in-depth look at the LM3915 datasheet. We covered the pinout, electrical characteristics, basic application circuit, different modes, expanding the display, adjusting brightness, and interfacing with microcontrollers.
Hopefully you now have a solid understanding of how the LM3915 works and some ideas of how you could use it in your own projects. It’s a great IC to have in your toolkit whenever you need a simple visual indication of a signal level.