Hi,
This is my first time working with this and I didn't find any clear instruction on how to do this. So the attached figure shows my connection. I want to control a device using the laptop via arduino as a DCB. So I want to control pulses to 5 pins from arduino but I'm not sure how to do this using Max232 as a medium between arduino and RS232 connector. Previously I connected the aurduino directly to rs232 male connector but didn't work.
Your topic does not indicate that you have a problem with the Arduino website or the forum and therefore has been moved to a more suitable location on the forum.
It looks like the device to be controlled has used a D9 connector for convenience, but the signals are not RS232 voltages.
There is no roll for the MAX232 I see.
Do you have more information about the nature of the signals (voltage and timing) that you've shown being carried by GPIOs?
A link to more about the device itself would be convenient.
a7
Hi,
It's an OCT retinal device with a flickering light. The flickering is what I'm trying to control using PC. This is what I intend to do :
GPIO_C(pin #3) is related to Power change control. This input provides for LED power changes when the GPIO_B(pin #2) is low.
LED power changes will occur one step per high-to-low transition of this input signal. LED power changes will not occur if the GPIO_B(pin #2) is in a high state
GPIO_D(pin #4) is related to the Up/Down control. This input sets the direction of LED power changes. When in a low state and GPIO_B(pin #2) is low, any high-to-low transition on GPIO_C(pin #3) will cause a one-step LED power up. When in a high state and GPIO_B(pin #2) is low, any high-to-low transition on GPIO_C(pin #3) will cause a one-step LED power down.
LED power step can be stored using the GPIO_C(pin #3) and GPIO_B(pin #2). Storage of the LED power step takes place whenever the GPIO_B(pin #2) transitions from low-to-high while the GPIO_C(pin#3) is high.
I'm using this rs232 as a connector, here 1-4 are connected to arduino D9-D12 and gnd to gnd:
RS-232 is an electrical protocol, not a connector, not anything else. Use "DB9" when referring to the connector.
At least ONE pin on the DB9 must also be connected to ground, otherwise the signal you are trying to send never gets to the unknown device at the other end.
You'll have to know if those signals are just regular logic levels.
Leaving that aside, what is the PC for? What will the PC tell the Arduino, and so forth? What will be running that talks to the Arduino?
a7
Your ground is only the metal shell of the DB9 connectors and the circuit board. You need to connect your Arduino ground and the ground of the other device you are trying to send the signal to. Otherwise the other device never can recognize the signal voltage.
@rbadhon, help us help.
Your pictures are blurry and even if they weren't wouldn't clearly show what you've connected to what.
You haven't said you are sure they are just regular logic level signals.
You haven't provided any links, links which you've obvsly used yourself to post here.
You haven't described the purpose of involving a PC in the project.
Imagine if all we knew was what you have provided. I hope you understand why it is hard to offer advice.
I think you probably have it hooked up correctly but what is to us common sense may not be to you. The pins have numbers, your DB9 thing has numbers. So maybe that part is in the bag.
a7
Ah, I thought pictures were clear. device link: KUOS-O100 / Philophos
and this is the link for rs232 that I'm using: Amazon.com: BUELEC DB9 Female and Male Connector in One Breakout Board,RS232/RS485/CAN/RS422 with DB9 Connector to Terminal Board Signal Module(2pcsDB9 Female/Male) : Electronics
This has a DB9 male side that I connected to the female side of the device. Then the green terminal 1-4 &GND is connected to the Arduino pin D9-D12 and GND.
Regarding the logic signals, I'm just sending High/Low using Arduino IDE to those digital pins, and when high, it outputs 3.2 V.
Purpose of PC: to tell Arduino when and which pins should be high or low to control the flickering LED (internal to the device) via rs232.
Now the pulse I want to send, doesn't have any link to post, so I took a screenshot. Maybe if the pic was not blurry, the idea would be clear.
Right. It may be easier or even necessary to have the PC send higher level commands to the Arduino, and let the Arduino handle what might be the fussy timing of creating the actual pattern on the output pins.
What is running on the PC that would control it no matter which entity took responsibility for the forming the pulses?
What Arduino board are you using? 3.2 volts seems low, is it a 3.3 volt version?
It seems you are willing to assume those are regular logic levels. 3.2 volts might not mean a true or HIGH value.
Where did that timing diagram come from? Please try to share whatever you have found.
Look at them! They are blurry and hide details like the actual numbers on the DB9 thing.
The DB9 diagram in post #1 above has ground on pin #5.
a7
What are the key steps for establishing communication?






