I am a newbie here and was wondering if it is possible to connect two Arduino cards together in a way that they can communicate internally ? Well I know I can just connect ports to each other and they will receive each others value as long as one is input and the other is output, but I am wondering more about programming world(having access to variables in each other, etc) ... Is it possible ???
Thx for fast reply. Well I am developing a design for a robot(4 feet, 12 axis) for my thesis which every arms almost uses all the ports on a Duemilanove arduino card. If I use Mega, then I would be able to use one card for two arms which leaves me with 2 Arduino boards.
My earlier solution was to send them to a light weight PC(a small mother board with Linux on it) on the robot and process information and then write the commands back to Arduino, but the slow communication on Serial ports have made to get second thought about this solution. Therefore I am thinking of connecting two Arduino cards directly(so I would get higher transition speed btw two cards, but dunno if it possible or if it is faster than Serial communication).
No. You must explicitly write program code to send and receive information (and the identity of the information) you share between Arduinos.
Do you mean to do this with something like a Java code on a PC or a code on Arduino ?
Sorry it took me sometime to answer ... I need several digital ports to read incoming digital data readings from my encoders about the current position of the DC motors that I use on my robot feet. You can see the current design now on my weblog by clicking on the following link : Walloid Porject: New foot design details
While I agree that needing more ports can be accomplished in better ways than multiple arduinos .. I do have a need to have multiple and use I2C master/slave setup as shown on this playground page.
the only good reasons to use more than one Arduino board
I think achieving functional modularity could be a good reason. I could picture having two instances of a modular Arduino-based "arm" controller, say, and have a third Arduino dish out arm movement commands to each of them.