Serial Handshaking

ArnieW

Senior Member
I am working out ways to network picaxes together. I'm currently exploring what might be needed to use hardware handshaking, ie. a 'clear to send' line. This line would be set high by any picaxe on the network to prevent others from using serout.
This means that each picaxe would need to have an output connected to the line and be able to check status of the line with an inputh. In order to do this, I'm guessing I will need to diode each output to a common point which is then connected to each input. Would there need to be any current limiting resistors? Is there a more elegant way to do this?

thanks, Arnie
 

hippy

Ex-Staff (retired)
Diode mixing would be easiest. The "Don't Send" line can then be set by any PICAXE to prevent sending. A 10K pull-down to 0V where the diodes meet is probably a good idea. That point can then go to all the inputs of PICAXE's which could send. Current limiting resistors shouldn't be needed unless any of those inputs could be made outputs, but it wouldn't harm to put them in.

Another alternative to a single line is to daisy chain CTS into the next PICAXE and form a loop of all PICAXE's. This may also help if multiple PICAXE's need to talk and collisions of transmission could occur.

Another method is to have a central PICAXE which arbitrates between which PICAXE gets a CTS when it asks to send.
 

ArnieW

Senior Member
Thanks hippy,
and thanks for a very informative website. At times this design or R&D phase does my head in because there are too many possibilities - and I have a tendency to overcomplicate. This is why I've headed towards handshaking - I could do it simpler, but I also want to harness the 'intelligence' of each distint picaxe module, and then I want that to dovetail to a PC, with each bit working together seamlessly.

I'll keep dreaming about the diode mixing idea rather than a daisychain.
 

ArnieW

Senior Member
I thought it might be helpful to precis the project I'm working on.

It is an update on my current automated brewing machine. Now that I understand the capabilities of picaxes, and their architecture and limitations, I want to create a more 'intelligent' machine.

What I have in mind is something that has discreet intelligent modules based on a single picaxe, that can be operated as stand-alone units, including a few inputs to vary temperature set-points etc.

These independent units are also part of a 'network' of picaxes that interact with a PC. The PC is not critical (the units are independent) but the PC has the extra processing power to automate the system. So some of the processing tasks are devolved to individual picaxes on the network, while the job of coordination and a higher level of processing that a PC can contribute allows a fully automated 'unit'.

So I'm going a bit crazy thinking about interrupts and how to put a system together that will be a breeze to use.

I should also say I'm having fun in the process.

cheers, Arnie
 

evanh

Senior Member
You will need a watchdog to reset the picaxes when the comms stalls on a serin command.


Evan
 
Top