Preparacion del IDE para programar un arduino.

Cursos, reparaciones, fichas, tutoriales, etc.

Moderador: Fundadores

Responder
Avatar de Usuario
Spirax !Sinclair 1
Demonio tercer orden
Demonio tercer orden
Mensajes: 715
Registrado: 09 Oct 2017, 17:03
Ubicación: Leganes (Madrid)
Has thanked: 24 times
Been thanked: 46 times

Preparacion del IDE para programar un arduino.

Mensaje por Spirax »

Este manual esta desarrolado para el proyecto ZXKeyboard USB.

Puede servir como guia para otros proyectos, pero otros proyectos no necesariamente pueden necesitar esta versión de IDE.
Segun el proyecto original necesitamos las librerias USB del projecto AVR que deberian estar en VUSB for Arduino library
pero resulta que dichas librerias han desaparecido posiblemente se hayan movido a otro sitio :(.
por suerte las tengo yo en mi PC y las adjunto a este manual aqui

para que se compile correctamente el proyecto junto con las librerias USB necesitamos una version antigua del IDE del arduino.
Se pueden tener tantas versiones como quieras del IDE instaladas en el PC siempre que utilizes directorios de instalación diferentes.
Por lo que si no la tenemos ya, o tenemos una version mas moderna del IDE, nos tenemos que descargar la version 1.0.5 de la pagina oficial del arduino en la seccion "old Releases" aqui

precedemos a la instalación del IDE por ejemplo en el directorio c:\arduino\ide_1.0.5
y nos creará toda la estructura de directorios.
ahora podemos coger el fichero adjunto con las librerias y copiar los directorios
USBDevice
USBKeyboard
USBStream
junto al resto de librerias que hay en el directorio libraries donde hemos isntalado el IDE
en el directorio propuesto anteriormente seria en
c:\arduino\ide_1.0.5\libraries

Ahora ya podemos abrir el IDE y probarlo.
lo primero que vamos a hacer es configurar el tipo de arduino para el cual es el proyecto que queremos compilar.
nos vamos al menu herramientas, tarjeta y selecionamos nuestro arduino.
para este proyecto es el Arduino Pro o Pro MIni (5v 16Mhz) w / ATMega 328
lo siguiente es seleccionar el puerto serie (COMx) donde esta conectado, de momento da igual ya que solo vamos a probar a compilar.
(Luego lo seleccionaremos para enviar el codigo al arduino)

Ahora vamos a probar a ver si puede compilar el ejemplo de la libreria usb
si hemos copiado las librerias correctamente antes de abir el IDE nos aparecererá la libreria USBKeyboard en los ejemplos.

para abrir el ejemlo pinchamos en el menu archivo
en la seccion ejemplos, buscamos usbkeyboard y selecionamos usbkeyboardDemo1
si no aparece UsbKeyboard puede ser que hayamos descomprimido el adjunto en la carpeta libraries pero dentro de un directorio de mas o que hayamos creado un directorio librerias en español en vez de usar el de libraries que ya estaba creado ;)

Nos abre otra ventana con el sketch y arriba a la izquierda hay varios iconos debajo del menu.
pulsamos el primer icono con la V de Verificar
y deberia de compilar el ejemplo y en la ventana de la consola aparecer este mensaje..
Compilacion terminada

Tamaño binario del Sketch: 2.852 bytes (de un máximo de 30.720 bytes)

si lo compila, perfecto ya podemos comenzar con el software de este proyecto.
si da algun error en la consola nos informará del tipo de error, que falte alguna libreria, o que hayamos selecionado algun arduino incompatible con esta libreria etc.
si os da error, copiarlo en un post y vemos a ver por donde van las tiros.

ahora vamos a clonar el repositorio del proyecto del ZXKeyboard de Alistair.
abrimos la pagina del proyecto en github
https://github.com/alistairuk/ZX-Keyboard
y por la parte derecha de la pagina nos aparecerá un boton verde donde pone "clone or download"
lo pinchamos y en la parte de abajo selecionamos "download ZIP"

una vez descargado descomprimimos el zip en nuestro ordenador por ejemplo en
c:\arduino\proyectos\zxusb

veremos que tenemos varios directorios.
hardware y firmware
en hardware encontramos la documentación y esquema de conexión de todos los pines tanto del teclado como del arduino, etc.
en firmware encontramos el fichero INO que nos va a hacer falta para programar el arduino
hay dos versiones la 1 y la 1_1
usamos la 1_1 que incluye un interruptor para cambiar el mapa de teclado y tener 2 mapas.
a ver si soy capaz de explicar las diferencias sin liarlo mucho.
sin estar pulsado el boton usa un modo PC directo. Convierte las pulsaciones, por ejemplo al pulsar mayusculas y el 1 enviará ! como un teclado usb normal.
pero con el boton pulsado es para usar el teclado con emulador de Spectrum, tecla pulsada es igual a tecla enviada y es el emulador el que interpreta las pulsaciones, el simbol shift es el Control derecho, por lo que al pulsar control derecho + p, se envian las dos pulsaciones sueltas que el emulador interpretará como simbolshift + p y nos mostrara las comillas.

Una vez lo tenemos descomprimido, abrimos el IDE 1.0.5
Menu, Archivo, Abrir
y buscamos el fichero ZX_Keyboard_1_1.ino
c:\arduino\projectos\zxusb\firmware\ZX_Keyboard_1_1 o en la ruta donde lo tengamos descomprimido.
os abrirá otra ventana del IDE y ya podemos probrar a compilar con la V de verificar

si todo ha ido bien nos dira
Compilación terminada

Tamaño binario del Sketch: 5.544 bytes (de un máximo de 30.720 bytes)

ya estamos en disposición de programar el arduino.....
Este Manual continuará en breve con la parte 2 cargar el software al arduino ;)
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Última edición por Spirax el 11 Ene 2019, 15:04, editado 6 veces en total.
Avatar de Usuario
Spirax !Sinclair 1
Demonio tercer orden
Demonio tercer orden
Mensajes: 715
Registrado: 09 Oct 2017, 17:03
Ubicación: Leganes (Madrid)
Has thanked: 24 times
Been thanked: 46 times

Re: Preparacion del IDE para programar un arduino.

Mensaje por Spirax »

parte 2:
ya tenemos el IDE preparado, ahora vamos a preparar el arduino y a conectarlo al ordenador.
necesitamos un interface USB Rs232 TTL, por ejemplo como este (yo tengo el rojo)
lo conectamos al ordenador y nos instalará un puerto COMx, este puerto es el que usaremos despues en el IDE.

cojemos el arduino pro mini y le soldamos una tira de pines de 1x06 hacia abajo, ( los reutilizaremos despues al montarlo en la placa)
conectamos los pines con el programador en el mismo orden.

Ahora vamos a probar la conectividad.
Abrimos el IDE. y cargamos uno de los ejemplos mas basicos que hace parpadear el led.
asi podremos probar tanto la carga de software como que el arduino funciona correctamente.
Nos vamos al menu Archivo, Ejemplos, 01.Basics, y seleccionamos el Blink.
Nos abrira otra ventana en ella nos vamos al menu herramientas, comprobamos que tenemos selecionada la placa correcta de Arduino, en este caso es el Arduino Pro o Pro MIni (5v 16Mhz) w / ATMega 328
seleccionamos el puerto COMx que nos ha instalado el programador usb al conectarlo al ordenador.
y ya podemos compilar y cargar el software al arduino.

debajo del menu tenemos varios iconos el primero con una V es el que vimos antes para verificar la compilacion y al lado una flecha hacia la derecha.
Pulsamos la flecha y el IDE compilara el software y lo subira al Arduino.
en la consola iremos viendo los mensajes cuando se producen
compilando el skectch
compilacion terminada
Tamaño binario del Sketch: 1.084 bytes (de un máximo de 30.720 bytes)
cargando
carga terminada

en este momento si el arduino esta bien (y no le hemos quitado el led previamente) veremos como el led que hay en la esquina del arduino conectado al pin13 comienza a parpadear cada segundo :)
pues bien este led NO nos hace falta para el zxkeyboard Y de echo HAY QUE QUITARLO o no nos funcionará, cuando carguemos el software del ZXKeyb veremos que este led se queda encendido de forma tenue al 50%.
Imagen
En la foto anterior el led esta desoldado.
Si dejamos el led puesto cuando conectemos la placa del teclado al usb del ordenador, en principio no se rompe nada, pero el ordenador no detecta el arduino como teclado USB y no nos funcionará.

una vez probado la carga del software y el arduino, ya podemos programar el arduino con el software necesario para el ZXkeyboard
como tenemos el IDE abierto, (ya no hay que cambiar la placa ni en puerto)
nos vamos al menu archivo, abrir y abrimos el fichero ZX_Keyboard_1_1.ino
para cargarlo al arduino usamos el boton de la flecha a la derecha y una vez acabe veremos que nos dara el mensaje
carga terminada y en la consola veremos
Tamaño binario del Sketch: 5.544 bytes (de un máximo de 30.720 bytes)
(el tamaño del binario puede variar, si se utiliza otra version de IDE previamente instalalado o se modifica el INO o por otras causas, un tamaño diferente no significa que no vaya a funcionar)

ya podemos desconectar el arduino del progrador ,cerrar el IDE y proceder a desoldar el Led que esta en la esquina del arduino. (el que parpadeaba con la prueba del blink anterior)
existe un segundo led que es el que se enciende cuando el arduino tiene alimentación que esta por el centro del arduino (ESE NO ES) ;)

Continuara con la parte 3, montaje y soldadura de componentes
Nota el spoiler solo conteine las fotos adjuntas al post para poderlas ordenar en el texto ;)
► Mostrar Spoiler
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Última edición por Spirax el 11 Ene 2019, 11:32, editado 3 veces en total.
Avatar de Usuario
Spirax !Sinclair 1
Demonio tercer orden
Demonio tercer orden
Mensajes: 715
Registrado: 09 Oct 2017, 17:03
Ubicación: Leganes (Madrid)
Has thanked: 24 times
Been thanked: 46 times

Re: Preparacion del IDE para programar un arduino.

Mensaje por Spirax »

Parte 3: Soldar los componentes
vamos a comenzar soldando las resistencias R1 (2k2), R2 (68ohm) y R3 (68ohm) en sus correspondientes huellas.
continuamos con los diodos D1 (3v6) y D2 (3v6).
ahora tambien podemos soldar una tira acodada de pines de 1x2 para conectar posteriormente el interruptor externo para el cambio de mapa de teclado.

dependiendo de la opción que queramos para la conexion USB podemos soldar ahora una tira de 1x4 pines acodada para el USB
o dejarlo para el final si vamos a soldar directamente un cable USB.

esto tambien es opcional.
si ya hemos programado el arduino nos podemos saltar la tira de pines de 1x6 (recomendado que sea acodada) donde pone TTL programmer.
nota, por un error de diseño quite el pin de la derecha que tambien es GND, algunos programadores necesitan este pin.
por lo que es recomiendo unir el pin5 con el pin6 y dejar una tira de 6 por si vuestro programador lo necesita y que sea 100% compatible)
Imagen

Ahora presentamos los pines de la conexión del arduino en las plaquitas. teniendo en cuenta que no estan todos los pines.
una vez puestos todos los pines y colocado el arduino encima procedemos a soldar los pines en la cara del arduino y despues los soldamos por la parte de debajo de la placa. Quedando ambas plaquitas unidas por el arduino.
nota como podeis ver de la tira de 6 pines que soldamos para programarlo sobra el 6º ya que da en la placa.
lo quite porque el pin 5 y pin 6 estan unidos en el Arduino y para poder hacer el corte de la placa.

y por ultimos soldamos los dos conectores del teclado, conviene fijarse ya que la presión del conector sobre la cinta del teclado tiene postura.
aunque va a funcionar de las dos maneras se recomienda que la presion se haga sobre la pista de la cinta.
en la de 5 pines la pinza curvada del conector va hacia abajo,
en la de 8 pines la pinza curvada del conector va hacia arriba.

Imagen

en esta ultima foto montado con conector microsub para ponerlo en el exterior de la carcasa y se conecte como cualquier teclado USB
a la derecha el interruptor de cambio de mapa de teclado para que tambien sea acessible desde el exterior
Imagen
saludos
Nota el spoiler solo conteine las fotos adjuntas al post para poderlas ordenar en el texto ;)
► Mostrar Spoiler
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Avatar de Usuario
Popopo
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3466
Registrado: 05 Nov 2019, 15:25
Has thanked: 1120 times
Been thanked: 570 times

Re: Preparacion del IDE para programar un arduino.

Mensaje por Popopo »

Spirax escribió: 11 Ene 2019, 10:12 Parte 3: Soldar los componentes
vamos a comenzar soldando las resistencias R1 (2k2), R2 (68ohm) y R3 (68ohm) en sus correspondientes huellas.
continuamos con los diodos D1 (3v6) y D2 (3v6).
ahora tambien podemos soldar una tira acodada de pines de 1x2 para conectar posteriormente el interruptor externo para el cambio de mapa de teclado.

dependiendo de la opción que queramos para la conexion USB podemos soldar ahora una tira de 1x4 pines acodada para el USB
o dejarlo para el final si vamos a soldar directamente un cable USB.

esto tambien es opcional.
si ya hemos programado el arduino nos podemos saltar la tira de pines de 1x6 (recomendado que sea acodada) donde pone TTL programmer.
nota, por un error de diseño quite el pin de la derecha que tambien es GND, algunos programadores necesitan este pin.
por lo que es recomiendo unir el pin5 con el pin6 y dejar una tira de 6 por si vuestro programador lo necesita y que sea 100% compatible)
Imagen

Ahora presentamos los pines de la conexión del arduino en las plaquitas. teniendo en cuenta que no estan todos los pines.
una vez puestos todos los pines y colocado el arduino encima procedemos a soldar los pines en la cara del arduino y despues los soldamos por la parte de debajo de la placa. Quedando ambas plaquitas unidas por el arduino.
nota como podeis ver de la tira de 6 pines que soldamos para programarlo sobra el 6º ya que da en la placa.
lo quite porque el pin 5 y pin 6 estan unidos en el Arduino y para poder hacer el corte de la placa.

y por ultimos soldamos los dos conectores del teclado, conviene fijarse ya que la presión del conector sobre la cinta del teclado tiene postura.
aunque va a funcionar de las dos maneras se recomienda que la presion se haga sobre la pista de la cinta.
en la de 5 pines la pinza curvada del conector va hacia abajo,
en la de 8 pines la pinza curvada del conector va hacia arriba.

Imagen

en esta ultima foto montado con conector microsub para ponerlo en el exterior de la carcasa y se conecte como cualquier teclado USB
a la derecha el interruptor de cambio de mapa de teclado para que tambien sea acessible desde el exterior
Imagen
saludos
Nota el spoiler solo conteine las fotos adjuntas al post para poderlas ordenar en el texto ;)
► Mostrar Spoiler
:D :D :D por fin me he puesto manos a la obra, gracias por el manual
Responder

Volver a “Cursos y Tutoriales”