This shows you the differences between two versions of the page.
— |
project:gba [2007/04/27 00:21] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Game Boy Advance ====== | ||
+ | Originally this page was written as part of my project' | ||
+ | CommsProbe allows the serial port of the GBA to be misused as a general purpose I/O port (allowing each of the 4 data pins to be induvidually set as input or output). | ||
+ | |||
+ | RS232 Terminal uses the GBA serial port for rs232 serial data, suitable for connection to the serial port of a PC //via suitable level conversion logic// --- **a PC serial port runs a +/-12V and direct connection to the GBA serial port will probably have regrettable results**. That said, it is likely that the PC will be happy with the 0/+3.3V logic that the GBA uses. You can use HyperTerminal to send and recieve ASCII data on the serial port, but be warned that if you have ScrollLock on HyperTerminal will pause, and you will believe your system to be broken. I found out the hard way. | ||
+ | |||
+ | To make things easier for you I have extracted pre-compiled versions of the above, with their instructions, | ||
+ | |||
+ | {{project: | ||
+ | |||
+ | ===== Code ===== | ||
+ | See [[project: | ||
+ | |||
+ | //Note that complete code is available on the project report disc (see [[: | ||
+ | compiling. The above links to only the " | ||
+ | |||
+ | ===== Communications Port ===== | ||
+ | |||
+ | Cutting up an **offical GBA link cable** (as the unofficial one didn't have all | ||
+ | the pins necessary for serial / general-purpose IO connected to wires) so I | ||
+ | can measure the voltages of the GBA and connect it to a circuit board. | ||
+ | |||
+ | ==== Physical interface ==== | ||
+ | |||
+ | {{project: | ||
+ | |||
+ | ^ Colour ^ Pin# ^ Pin Name ^ UART Role ^ Voltage (logic 1) ^ | ||
+ | | | 1 | V< | ||
+ | | Red | 2 | **SO** SerialOut | ||
+ | | Orange | 3 | **SI** SerialIn | ||
+ | | Brown | 4 | **SD** SerialData | ||
+ | | Green | 5 | **SC** SerialClock | CTS((On GBA power-up this is an output, so a 1K Ohm resistor ought to be inserted between this and any voltage convertor logic to prevent to output from shorting each other out. See [[http:// | ||
+ | | Blue | 6 | GND | | ||
+ | |||
+ | Observations: | ||
+ | * < | ||
+ | * Apparently when you use a GB/ | ||
+ | * When the pins are set as input, but not connected to anything they float high, and the bits in the register are set to 1 accordingly. |