Have been searching online but could not find anything except networking equipment.
Is there some sort of integrated circuit available that can do routing / switching of IO(Input / Output) lines?
Example, if you have 5 input and output lines I would like to be able to change how input pins are forwarded
to the output pin. A real world example of this would be like the old phone exchanges where the operators routed incoming
callers lines to specific receiver lines.
I know automated phone exchanges can do this somehow.
Any suggestions or pointing in the right direction would be appreciated.
Protoneer:
A real world example of this would be like the old phone exchanges
A more relevant example is the analog inputs of your Arduino. There is only one A/D in the chip. The 6 analog inputs are connected to an Analog-Multiplexer (also on chip), which gives multiple analog inputs.
It's a bit different because the multiplexer handles analog inputs, but a port extender basically just outputs low or high. I suppose it depends on your definition of those words.
Thanks for pointing that out... A multiplexer will actually be more useful because like the Arduino analog pins, you can also make them act like Digital pins.
There aren't that many I think, I have data sheets for these ones
AD75019
CD22M3494
M22100
MAX4359-MAX4456
EDIT: Crosspoint switches are mostly used in telecoms and are analogue but still switch digital. If you have a digital application one way to do it is to use a SRAM chip and program the bits to provide the transfer function you want, I've never done it but I would think it would work. Also if the speeds are real fast you could dedicate a CPU to the job, read 8 bits, index into a table, write 8 bits.
I personally used a 22100 in a matrix scanned keyboard solution to "simulate" key-presses... though I think that part is considered quite obsolete now.