Pages: [1]   Go Down
Author Topic: 1 set of SMS texts to Arduino(s) to 30 LCD's  (Read 998 times)
0 Members and 1 Guest are viewing this topic.
VA
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hey, I'm working on a project where I'm trying to display about 30 different SMS messages on to 30 different LCD's. I've got a modem shield -> Arduino -> single LCD receiving,parsing and displaying fine. My problem is that I'm not sure how I distribute 30 different messages (1 message at a time) to 30 different LCD's without buying multiple modems. I've read that it's possible to hook up at least 8 LCD's to a single arduino using I2C. Would it be possible to use these serial enabled lcd's in conjunction with i2c port expanders to increase the number of LCD's I can attach to a single Arduino to 30?

And as a second option, what would be the best way to communicate data between arduinos to create a network of 30 lcd's where each lcd is addressable? Should I daisy chain arduinos together? Should I use Xbees?

Third, how many LCD's could I hook up to this guy? http://www.sparkfun.com/products/9949

Thanks guys, I really appreciate the help. My deadline is steadily approaching.
« Last Edit: July 26, 2011, 11:54:36 pm by Peterlee777 » Logged

Western New York, USA
Offline Offline
Faraday Member
**
Karma: 40
Posts: 4401
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Would it be possible to use these serial enabled lcd's in conjunction with i2c port expanders to increase the number of LCD's

You don't need (or want) serial enabled LCDs when you use an I2C port expander, the port expander does the serial enabling part for you.

I am slightly familiar with the MCP23017 I/O expander. If you use the MCP23017 each one can theoretically run 11 LCD modules with some fancy programming and 8 with some slightly less fancy programming.

You might want to check out the 'Centipede' shield (http://macetech.com/store/index.php?main_page=product_info&cPath=4&products_id=23) which has 4 of these chips on board.


Don
Logged

VA
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
You don't need (or want) serial enabled LCDs when you use an I2C port expander, the port expander does the serial enabling part for you.

Sorry, suffered a brief brainfart.
Edit-- I did some more searching and realized that I was looking for an I2C multiplexer rather than a port expander. I think. Thanks for the help though.
« Last Edit: July 27, 2011, 01:36:35 pm by Peterlee777 » Logged

Western New York, USA
Offline Offline
Faraday Member
**
Karma: 40
Posts: 4401
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

[EDIT] You edited your post while I was spending a lot of time answering it.  This is the answer to your previous post before you edited it.  It normally wouldn't make any sense since you removed the questions that I answered.  I have run into this scenario before so you will notice that I have included your questions with my answers.  Please don't do that again  

Quote
I bought a few MCP23018 port expanders ...
These are a bit different from the 23017 versions.  They have open-drain outputs so you would most likely need pull-up resistors on each I/O pin.  They also have a different pinout and they use a different technique for addressing more than one device but it still looks like you can use up to 8 of them on the I2C bus.

Quote
but I'm having trouble grasping exactly how they would work in conjunction with the LCD's.
Each 23017 or 23018 gives you 16 I/O pins.  A single parallel LCD module requires 6 pins.  You can run multiple LCD modules by paralleling 5 of the LCD lines with a separate E line for each module.  That means that two LCD modules need 7 I/O pins, three LCD modules need 8 I/O pins etc.  With 16 I/O lines you can run eleven LCD modules.  Check out this thread: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1265969050/0.  I suppose it is possible to run serial LCD modules from a port expander but I expect that you will have to write your own 'bit-banging' software.

Quote
Since the LCD's  I'm using have up to 8 changeable address, would that mean I'm limited to 8 LCD's per bus ...
Yes, if you are referring to I2C devices and the I2C bus.

Quote
... rather than 8 LCD's per port expander?
As I said previously you can run eleven parallel LCDs from a 16-bit port expander and you probably would not want to attempt to run any serial LCDs via a port expander.

Quote
Is it possible to set up a sub-addressing system to get around this?
I suppose it's possible.  I wouldn't want to try it.

Quote
How many buses can I run on a single arduino?
As far as I can tell the Atmel processors used on the various Arduinos have a single I2C bus.

Also: The Mega2560 that you linked to in your original post has 54 digital I/O lines so it could theoretically run more than 4 dozen parallel LCD modules.  I think you may run into crosstalk (interference) between the enable lines but you might be able to make it work.  It seems like overkill to use such a device just to get more I/O lines.


Don


« Last Edit: July 27, 2011, 01:54:55 pm by floresta » Logged

VA
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

My god, that's amazing. Sorry about deleting my previous post, I spoke way too soon. What do you think would be the proper rating to use as pull-up resistors for my 23018 ?

Edit-- Now I understand why you suggested the centipede to me. That seems like the easiest way to get this thing going.
« Last Edit: July 27, 2011, 02:27:36 pm by Peterlee777 » Logged

Pages: [1]   Go Up
Jump to: