I don't quite know how to put it other than I need to use the Arduino to essentially short some pins together.
Here's the deal: I want to use the Arduino to connect a device with no TTL output to a device with only TTL inputs. I set up a socket connection to the arduino from the no-ttl device and I can parse commands to do things like set pin states and what-not. I know this part works as I've been using it successfully for some time.
Now the TTL device essentially just needs to have certain pins shorted to ground from time to time - it detects this as a 'trigger' and saves the 'trigger' in an output file. I have done something similar where I needed to provide a device with a voltage from the arduino -- that was not a problem and I got that working. But this system basically supplies it's own voltage on a pin and I just need the arduino to connect it to ground somehow...completing the circuit. Is this possible without using a relay? I thought just setting a digital pin to INPUT and then reading it might work, but it doesn't seem to.
I'm a psychologist, not an electrical engineer, so I'm sure this seems to be a stupid question, but I could sure use some guidance on this.
You could try a strong drive low (set as output and digitalwrite low), but some more detail about your application would help us out in terms of giving you useful suggestions.
The 'TTL' device is a NeuroScan Synamps2 EEG amplifier. The system unit has a 25-pin connector on it. Pins 1-7 are the trigger pins and carry +3.3v. When they are shorted to ground, the system reads the pins as a binary number and records that number in its output stream. Normally this is done by another piece of hardware connected to another computer.
I need to connect this to a driving simulator to trigger the EEG system when events are encountered in the simulation. That part is easy as I have done something similar with an impedance cardiography system. That system just required me to supply +5 volts to some input pins.
Have the arduino drive an open collector or open drain device to bring the pin low. The seperate transistor can be rated to handle whatever higher voltage may be on the other part, so will not damage the 5V only ATMega.
Can be discrete transistor, or a transistor array like ULN2003/2803.
I was hoping I could do it without any other circuitry, which is not my specialty. I'll look into this, though. I know I have several transistors in the lab.
The problem is the 3.3V. If you use an output pin to pull it low, the Atmega will try to take it to 5V when it is Not low.
You could play games like use pinMode to make the pin an input so it floats, then use pinMode to make it an output and drive it low, then pinMode again to make it an input when done - actual hi/lo will be indeterminate as you switch modes tho, so you may get unexpected results, or multiple triggers.