lek
Member
My EXT port's Tx pin is constantly at 3.3v unless it is sending a signal (i.e. it is active low), which is a bit of a pain when it comes to controlling things via the port (simple circuits become more complicated for components that expect high signals to represent data)
An easy way around this is to wire such components between the Tx pin and the 3.3v pin, thus creating a potential difference of 0 (3.3 - 3.3). Then when a signal is generated at the Tx pin, it's voltage lowers, thus the potential difference between the Tx 3.3v pin increases.
However, it seems that the higher the baud rate of the UART, the less this potential difference is, as the Tx pin seems to have less and less voltage change when sending data at higher baudrates. At 300bps, I can expect ~1V potential differnce to drive a component, at 7200bps, this drops to ~100-200mV (as far as I can tell). Either way, neither voltage is really sufficient to drive much
A transistor hooked up to the Tx pin should allow a component to be used with the full 3.3V however, the Tx signal turns the transistor on/off, which in turn can control the flow between the GND and 3.3V pins that your component is connected too.
Has anyone else noticed this about the Tx port, that it is active low? I was under the impression that computer serial ports had a Tx line that was at 0v when idle (although there seems to be comflicting info on this). I would've expected the GP32's EXT port to act the same, given that it is geared somewhat towards serial communication.
Seeing as I managed to break a leg off each of ~10 transistors yesterday :blink:, I'll have to wait until later this week to overcome my problem/try a circuit with a transistor.
-------------------------------------------------------------------------
On another note, the IR receiver I am building now successfully receives signals reliably at up to 3600bps (low I know, also only seems to work at multiples of this, 900, 1800, otherwise the data is sometimes not the same between received signals when it should be). The original receiver worked off low voltage, but wasn't reliable. Having switched to an even-lower voltage one, it works great. Receiving distance has been tested to 10m currently. When I find the time I'll try it over a greater distance, outside or something.
The IR transmitter part works, but due to the above gripe over the Tx ports voltage, it only works very close to the receiver (it only gets a few mV to run off), and also only transmits at a max of 1200bps (this is the max of the transmitter unfortunately, higher would require IRDA components, which may or may not allow control of TV's, etc, and would run off a higher voltage).
Still enough to learn IR remotes and reproduce the signals though, maybe even simple low data multiplayer games (pong anyone?)
Receiving wise, enough to control an MP3 player program or other app on the gp32_console from a distance.
Should be getting some tri-colour LED's in the post soon to signify transmitting/receiving/both. B)
An easy way around this is to wire such components between the Tx pin and the 3.3v pin, thus creating a potential difference of 0 (3.3 - 3.3). Then when a signal is generated at the Tx pin, it's voltage lowers, thus the potential difference between the Tx 3.3v pin increases.
However, it seems that the higher the baud rate of the UART, the less this potential difference is, as the Tx pin seems to have less and less voltage change when sending data at higher baudrates. At 300bps, I can expect ~1V potential differnce to drive a component, at 7200bps, this drops to ~100-200mV (as far as I can tell). Either way, neither voltage is really sufficient to drive much
A transistor hooked up to the Tx pin should allow a component to be used with the full 3.3V however, the Tx signal turns the transistor on/off, which in turn can control the flow between the GND and 3.3V pins that your component is connected too.
Has anyone else noticed this about the Tx port, that it is active low? I was under the impression that computer serial ports had a Tx line that was at 0v when idle (although there seems to be comflicting info on this). I would've expected the GP32's EXT port to act the same, given that it is geared somewhat towards serial communication.
Seeing as I managed to break a leg off each of ~10 transistors yesterday :blink:, I'll have to wait until later this week to overcome my problem/try a circuit with a transistor.
-------------------------------------------------------------------------
On another note, the IR receiver I am building now successfully receives signals reliably at up to 3600bps (low I know, also only seems to work at multiples of this, 900, 1800, otherwise the data is sometimes not the same between received signals when it should be). The original receiver worked off low voltage, but wasn't reliable. Having switched to an even-lower voltage one, it works great. Receiving distance has been tested to 10m currently. When I find the time I'll try it over a greater distance, outside or something.
The IR transmitter part works, but due to the above gripe over the Tx ports voltage, it only works very close to the receiver (it only gets a few mV to run off), and also only transmits at a max of 1200bps (this is the max of the transmitter unfortunately, higher would require IRDA components, which may or may not allow control of TV's, etc, and would run off a higher voltage).
Still enough to learn IR remotes and reproduce the signals though, maybe even simple low data multiplayer games (pong anyone?)
Receiving wise, enough to control an MP3 player program or other app on the gp32_console from a distance.
Should be getting some tri-colour LED's in the post soon to signify transmitting/receiving/both. B)