Multiple HD44780 LCDs? And what's that pin for?

Hi,

Firstly, I am not at all competent enough to do what I want, but am going to attempt anyway.

I am in need of a tachometer for my 1980 Land Rover Series III diesel. Since there are more than enough inputs, I had the idea to also put a water temp and oil pressure sensor into the mix. So, one Arduino, oil, tep and RPM sensors and three HD44780's (and maybe a feedback loop to send alarm on high temp/low pressure).

It looks to me, after researching, that I can do at least two of these, and possibly all in 4 bit mode and a three wire configuration with separate LCDs (two or three screens to a board). But, I notice in all the different ways to connect the LCD, that they all use at least two of the PWM pins.

So, my question is, does the LCD communicate using PWM (pins 9,10,11) or, can I use any I/O pin for comms? Is this just coincidence that the schematics all use two PWM pins? If the HD44780 needs one or no PWM pin, I think I can get three screens on a board?

Does that make sense?

Johnny

The LCD does not need PWM, it can use any digital pin.

You can connect the four data pins to all three LCDs, thus using only four I/O pins on the Arduino. You can also connect the R/W and RS in common likewise. But, you must use separate I/O pins for the three E signals for the three LCDs. Hope that makes sense!

In fact, the R/W signal is not used by the library but is effectively reserved for future use. It’s always in “write” mode (data from Arduino to LCD, never the reverse).

Why not display all of the information on one LCD?

Also, it's worth pointing out that you don't need a completely different set of pins for each display. You can attach the data pins, RW, RS etc of each display to the same ardiuno pin, but keep the enable pin on seperate arduino pins. Then you just give what ever LCD library you use the correct pins, including the enable, and it will only write to the display that you want.

Edit: Beaten while I was typing!

Thank you all for the very helpful information. I've been able to move on and add what I need to complete the plan (I think). Will post a schematic when I am more confident in the correctness.

Best Regards,

Johnny

ok- i've added a schematic, of sorts. I think I've covered all my physical "bases". Please look with a discriminating eye. I know i've left a few details out, i.e. resistor values, bundled power and data for the drawing, etc

my biggest question is, can the board handle the current draw of 5 LCDs and at least two analog sensors?

and, can i really do the contrast parallel the way i have drawn it? seems to be the easiest way. having trouble finding out current draw for the contrast on the LCD to determine pot resistance. i think a 10k way suggested. does that mean a 50k is right? ok, i can look that up.

Anyway, please send your critical comments- My parts are in the mail and now I only have to learn how to program....

And thanks again for the feedback. I did want to mention that I want to use multiple monitors for two reasons- one is aesthetics. I think a stainless steel panel of the LCDs with red warning lights and a some toggle buttons would look really cool in my old land rover. But the main reason is, for easy or reading when im off road. i think the multilined LCD would be more difficult to read, while bouncing around- you know, relative to the single lined LCD. Not that anything is easy to read bouncing around, but the warning lights will be a good indicator.

So thanks, again.

here is the schematic

You threw me with the bus (data signals and +5) at first but that bit looks OK.

No you can’t do contrast like that each display will need it’s own pot because the setting will be different for the same contrast (LCD chips vary) Also the contrast voltage needs to be applied all the time not just when the headlamp is on. If you want to switch the contrast with the headlamp you will need an analogue multiplexer to switch between two different pots. However, you don’t need to adjust the contrast with light level at all you might want to control the back lighting.

Firstly, you have a switch in series with the contrast pot wiper. That shouldn't be there, because you'll need the contrast pot connected to the LCD at all times (it's nothing to do with the backlight). In fact, you may need a separate 10k Ohm pot for each LCD, because they may all need sloghtly different settings.

You'll need three resistors in series with the three LEDs on pins 3, 4 and 5.

Not sure about the other sensors (pins 12, 13) -- will you need pull-ups on those lines, or will you need to protect the Arduino from the 12V signals there? You'll definitely need to protect the Arduino and the LCDs from voltage spikes on all the power supplies.

The parallel connection of the LCD data and R/S lines is OK. The separate E signals look OK, too.

Just noticed the hall effect sensor is going into pin 12, you would be better off using pin 2 or 3 as that way you could use the interrupt system to count your revs.

For protection look at:- http://www.thebox.myzen.co.uk/Tutorial/Protection.html

Ugghhh. No one told me this was going to become an addiction!

Thanks again for all the input. I have gone back and made your recommended corrections. Your replies also made me see a few errors. I want to use the 5V from the board to power all the sensors. My biggest problem is the oil sending unit. I have not seen anyone on line talk about hooking one to an Arduino. Maybe there's a reason.... can I go straight from an analog pin and measure the voltage? I think that's how it's done on the 12v system?

But, the hall effect is now on pin 2, the LCDs all have separate pots and I am going to keep the back light on continuous, for simplicity.

I think that using the 5V in the sensors will remove most of the threat of spikes, excepting through the main power supply. Should I still use grumpy Mike's protection circuit? Or, will a regulated power supply afford me enough?

So, I'll get back to the drawing board, now.

Thanks Again for all your help!

Johnny

I go straight from an analog pin and measure the voltage?

Only if you can guarantee that the output will not go over 5v. Otherwise you will have to pot the signal down before applying it to the analogue input.

If you change to all 5V then will the oil sensor work on only 5V?

excepting through the main power supply.

I thought this was for a car, they tend not to have mains supplies.

Should I still use a protection circuit?

On a 5V only system there is no need but you could probably do with some extra de coupling. http://www.thebox.myzen.co.uk/Tutorial/De-coupling.html