comunicacion GBA (Game Boy Advance)

Hola

Quisiera conectar el arduino a una GBA por el puerto serie y la duda que tengo es si la diferencia de tension de la GBA 3.3v y la de los pines 0 y 1 del arduino 5v (aunque en mi caso creo que van por 5.6v - supongo que habrá algún fallo en el montaje de la placa, que lo he hecho yo claro :D, o no se ...) hay que regularla de alguna manera o la acepta bien.

Googleando he visto conexiones entre el arduino y el router wrt54g que tb tiene un puerto serie a 3.3v y no utilizaban ningun integrado, ni resistencia ni nada, aunque lo hacian con una placa usb y esta creo que puede regular a su antojo el voltaje de los pines del puerto serie.

Tb he visto por ahi el uso de los integrados max233 y max322 pero creo que estos son para adecuar la tension a la de un puerto rs232 a 12v y supongo que esto no me hará falta.

Saludos y gracias.

Hola

Pues al final conecte directamente la GBA a la placa arduino y funcionaba bien. Utiliceuno de los ejemplos de comunicacion serie y un programa homebrew de gba estilo hiperterminal y la cosa rulaba bien, podía enviar y recibir datos correctamente entre el arduino y la GBA, hasta que se agotaron las pilas de la GBA y entonces me carge la GBA - intente alimentarla con un adaptador universal y la frei - :'(.

Ahora estoy intentandolo con la GBC (gameboy color) - un paso atrás jajaj -. Veremos ...

Saludos y suerte.

Suena interesante tu proyecto pero.. como te las vas apañar para meterle homebrew a la GBC ? Yo tengo una GB clasica y una GB Pocket pero no he visto que haya cartuchos "magicos" como para la DS (tambien la tengo) o la GBA.

Salu2

Hola

Para la GBC te puedes hacer tu mismo el cartucho modificando uno comercial. Y para cargarlos tb te puedes fabricar tu el programador. Yo me lo estoy mirando ahora:

http://www.reinerziegler.de/readplus.htm#4MBit%20home

mira en las secciones de "home made cartridge" y "home made programming system" creo que la GBC y la GB clasica son comptaibles.

Saludos y suerte

Uff, ya me acuerdo de esa pagina, la vi hace ya unos años y aun me sigue pareciendo muy complicado hacer algo así.

Si te interesa y te viene bien donde tu vives, en los Cash Converters (tiendas de segunda mano) tienen GBA de segunda mano por 30 o 40 euros dependiendo de los accesorios y del estado de conservación.. lo mismo te interesaba comprar una de segunda mano.

Yo tengo el M3 Perfect para DS (compatible con GBA) y la verdad que me esta tentando mucho el tema de comprar una para experimentar un poco con lo que planteaste al principio. Puedes poner algo mas de información sobre como hiciste las pruebas entre el Arduino y a GBA ?

Salu2

Hola.

Las pruebas las hice utilizando utilizando el ejemplo "serial read basic " un poco modificado:

/* Serial Read Basic
 * ----------------- 
 *
 * turns on and off a light emitting diode(LED) connected to digital  
 * pin 13. The LED will light up when receiving a 'H' over the serial
 * port. The LED will blink shortly.
 *
 * Created 1 December 2005
 * copyleft 2005 DojoDave <http://www.0j0.org>
 * http://arduino.berlios.de
 *
 */

int ledPin = 13;   // select the pin for the LED
int val = 0;       // variable to store the data from the serial port

void setup() {
  pinMode(ledPin,OUTPUT);   // declare the LED's pin as output
  Serial.begin(9600);        // connect to the serial port
}

void loop () {
  // read the serial port
  val = Serial.read();

  // if the input is '-1' then there is no data
  // at the input, otherwise check out if it is 'H'
  if (val != -1) {
    //if (val == 'H') {  // ahora acepta cualquier valor de entrada
      digitalWrite(ledPin, HIGH);
      Serial.print(val); // muestro el valor recibido
      delay(2000);
      digitalWrite(ledPin, LOW);
      serialWrite('p');  // envio respuesta
      serialWrite('o');
      serialWrite('o');
      serialWrite('m');
      serialWrite('e');
      serialWrite('r');
      serialWrite('a');
      serialWrite('n');
      serialWrite('g');
      
    //}
  }
}

Con esto cad vez que mandaba “algo” desde la GBA se encendia el led de la placa y abriendo el “serial monitor” del entorno arduino veia el valor que llegaba y le enviaba “poomernag” a la gameboy.

Las conexiones pin salida de datos de la GBA al de entrada del arduino (no me acuerdo si es el pin 0 ó el 1) y la de entrada de la GBA a la salida del arduino, tierra a tierra y ya esta.

La velocidad de comunicacion es 9600 y el programa que va en la GBA viene con codigo fuente, así que se le podría modificar alguna cosa. Tal como esta manda un caracter ascii distinto para cada boton que pulsas de la GBA y muestra los datos recibidos por pantalla. Yo la queria usar tipo LCD para mostrar valores y hacer algun menu o algo (aunque el tema de programar para la GBA debe tener mucha miga).

No me acuerdo de la página de donde me baje el programa, pero si quieres te lo mando a algun sitio.

A la hora de ejecutar el programa en la GBA no hace falta tener un cartucho, se puede cargar en “memoria” de la GBA con un cable multiboot http://petra.euitio.uniovi.es/~i1766818/TUTOR/TUTOR19.htm pequeñas aplicaciones. Para construir el cable multiboot y para conectarl la GBA al arduino lo mejor es utilizar un cable link y pelarlo.

Bueno me ha quedado un poco ladrillo. Espero te sirva.

PD: por aki no hay cash converters pero el niño tiene una gba SP que tiene una pinta … ::), además esta se carga con transformador y tiene bateria tipo movil. Y si no a ver cuando se cansa de la PSP que tiene que dar un juego de la ostia. Si por maquinitas no será.

Saludos y suerte.

Gracias por toda la información, el código fuente me va a venir muy bien para experimentar un poco, pero en vez de usar una GBA acabo de encontrar en el cajón de los cacharros una Palm M130 que tenia de hace tiempo. Con la Palm y SmallBasic puedo mandar información por el puerto serie, supongo que tendré que adaptar la salida del puerto con el famoso Max232.

Si da la casualidad de que tienes una Palm, SmallBasic lo puedes bajar de aquí http://smallbasic.sourceforge.net/ es gratuito.

Salu2

Pd, quien nos iba a decir que los “juguetes” estos nos iban a dar tanto juego eh ? ;)

Hola

Pues no tengo palm o similares :’( , pero sería lo suyo. Mucho más facil de programar la aplicación de un palm o encontrarla por internet que tener que currarse algo para la GBA o GBC - supongo -.

Saludos y suerte.