Driving multiple LCDs efficiently - Page 1
Forum section: electronics / beginners

author: juma98
author_rank: Contributor
timestamp: December 11, 2022, 10:10:10 am
content: I'm working on a project where I need to drive 4 different segmented LCDs. One 4-digit one and three 2-digit ones. I'm planning on driving the 4-digit, muxed main display directly with the MSP430 I will use, but I'm not quite sure how to drive the remaining ones. The device will be battery-powered, so power consumption is somewhat of a concern. So far I've come up with the following potential solutions:1. MicrocontrollersA small Microcontroller for each display. The main MCU would communicate over I2C or SPI with the display controllers. Implementing a static driver in software shouldn't be difficult.2. GreenPaksI came across those devices a while ago and they seem neat. I'd use them similarly to the option above and there are example implementations of LCD drivers available. One downside is that the package sizes are tiny and harder to work with.3. Bigger main MCUOne of the first options I considered. Finding an MCU with enough IO for all the digits and other peripherals is difficult and the software would probably get messy. These bigger chips also tend to have more peripherals I don't need.I'm torn between options one and two. Both have their pros and cons. I'd like to hear your opinions on them or any other recommendations.Thanks

author: ledtester
author_rank: Super Contributor
timestamp: December 11, 2022, 10:28:33 am
content: There are low-power driver chips to drive LCD segments. For instance, the Holtek HT1621 has a power down mode which consumes less than 10uA.The 1621 also has clones available, e.g. the TM1621:https://www.lcsc.com/product-detail/LCD-Drivers_TM-Shenzhen-Titan-Micro-Elec-TM1621B_C5174490.htmlWhat is the # of commons/segments layout of your displays? A single 1621 might be able to drive all three displays.

author: juma98
author_rank: Contributor
timestamp: December 11, 2022, 12:13:43 pm
content: Quote from: ledtester on December 11, 2022, 10:28:33 am14-16 segments per display (standard 2-digit 7-segment layout). I don't need the decimal dots, but it would be nice to hook them up if possible. The number of COMs depends on the driving solution I'll end up going with. The displays are available with either a single COM or two.

author: mariush
author_rank: Super Contributor
timestamp: December 11, 2022, 12:49:01 pm
content: You can get all kinds of lcd drivers, from a couple digits to 445+ segments, here's a list on Digikey :https://www.digikey.com/short/j8tp2hdbfor example this BU97950 can do up to 280 or 156 segments ( 35 x 8 commons or 39 x 4 commons) :https://www.digikey.com/en/products/detail/rohm-semiconductor/BU97950AFUV-E2/9664008There's also microcontrollers with built in lcd drivers, that can do 2 or 4 or more commons and usually multiples of 8 segments on each common.

author: juma98
author_rank: Contributor
timestamp: December 11, 2022, 01:32:37 pm
content: I'm aware of LCD-driver chips, but aren't they overkill for my application? Most of them are intended for hundreds of segments and 4 to 8 COM multiplexing. I assume I could combine the 3 static LCDs into a 3 COM multiplexed one, but the COM layout would be far from standard. I'll have to look into it.

author: mariush
author_rank: Super Contributor
timestamp: December 11, 2022, 02:00:09 pm
content: You say "I need to drive 4 different segmented LCDs. One 4-digit one and three 2-digit ones."Most 2 digit LCDs will have 2 commons.You can get 4 digit displays with 2 commons ... so that's 8 commons in total.So you could either have 2 drivers each with 4 commons or you could have a single chip with 8 commons.Or you could have multiple driver chips with 2 commons each.Doesn't feel like overkill to me. Maybe a bit of a pain in the ass to route the traces but other than that... it would be just a matter of shifting a few bytes into the driver each time one of the displays needs to change.Other things that may factor in... you may want to use 2 chips instead of one if the one with 8 commons if the ones with 4 commons are available from multiple manufacturers in same footprint - maybe you don't want to risk no having stock of that particular 8 commons part when you need it. But if you stock that part in advance or it's a small run of an item, then no worries.Even 4 chips each with 2 commons could be OK if the price is very good ex 20 cents for a part, when you pay 1.5$ or whatever for the 8 common part. but 4 chips will probably have higher idle power consumption compared to a single chip.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: December 11, 2022, 02:04:58 pm
content: LCD's get damaged easily by DC currents.I think that about 20mV of DC voltage may be acceptable, and this means you have to control the duty cycle of the control signals quite accurately to make sure you do not shorten the lifetime of the LCD. You also have to consider what happens during reset of your uC, or when you are for example debugging and your uC hits a breakpoint.Using an LCD controller for even a small LCD offloads this burden to the LCD driver. It also frees up your uC if it does not have to do the multiplexing, and on top of that, a dedicated LCD controller probably uses less current to do it's thing.A quick check at LCSC suggests a TM1621 costs 30ct and it probably means you can use an uC with less pins, which is usually cheaper, and the total price difference is probably negligible.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: December 11, 2022, 02:08:39 pm
content: A small chip like the TM1621 only has 4 commons, but 32 rows.I'm not entirely sure, but I think you can connect the commons of the different LCD's together, and then divide the rows over your 3 LCD displays.

author: juma98
author_rank: Contributor
timestamp: December 11, 2022, 06:54:11 pm
content: Quote from: mariush on December 11, 2022, 02:00:09 pmThe 4-digit LCD is already taken care of by the LCD module of the main MCU. I should have mentioned that not all displays will be on during all modes of operation. I'm currently looking into the use of "proper" driver chips.Quote from: Doctorandus_P on December 11, 2022, 02:04:58 pmI know, timer interrupt driven inversions of the com and segments should be accurate enough to stay below the allowed DC offsets, but that would be a thing I'd have to validate. I'd use the static displays if I go the MCU or GreenPak route to simplify the required waveform.Quote from: Doctorandus_P on December 11, 2022, 02:08:39 pmThe TM1621 certainly looks interesting. I'm not sure if connecting COMs together works. I'll definitely look into it though.