duckduino icon indicating copy to clipboard operation
duckduino copied to clipboard

How to put symbols like "=" and "´´" and "-"

Open kalvini1011 opened this issue 2 years ago • 5 comments

whenever I place some of these symbols "=" and "-" and "´´" it throws me a "?" , I am a beginner.

It's my first time on this platform and the first time using something like this, I would be super grateful for any help, thanks :)

@Lacerda53 @thiagosanches @sebasop320

kalvini1011 avatar Jun 12 '22 04:06 kalvini1011

@kalvini1011 Check the keyboard section in this file, and replace the hex codes with the correct codes. I also attached an .ino file with the correct hex codes for the English keyboard. to open the .ino file, you only have to delete the .zip extension Sorry for my English

hex_codes_replaced.ino.zip

usb_hid_usages.pdf

J-Maac avatar Dec 02 '22 16:12 J-Maac

MIllll graciasss , hablas español?? @J-Maac

kalvini1011 avatar Dec 05 '22 23:12 kalvini1011

@kalvini1011 siii, jajajaja. Si ya entendiste como funciona el programa vas a poder usar los signos con el teclado puesto en español. Simplemente tenes que fijarte que tecla hay en el teclado en ingles para tu tecla en español. difteclats Por ejemplo si queres escribir el signo ( en español tendrias que apretar shift+8. Pero en ingles se escribiria el signo *. Entonces deberias buscar en el pdf que te pase, el codigo hex para escribir el *. No se si se entendió. Espero que si. Avisame cualquier duda.

J-Maac avatar Dec 06 '22 02:12 J-Maac

@J-Maac Hola buenos dias J, muchas gracias por realmente responder y por tu tiempo lo agradezco mucho, yo soy de colombia y tengo un teclado de america latina y he estado revisando el codigo por horas y no lo entiendo muy bien :cccc jajaja, tonces por las imagenes que me mandaste me muestras que el teclado original esta en estados unidos tonces por el pdf busco el codigo hex y lo pongo en el proyecto? no soy nada bueno en esto jajaja llevaré como mucho 15 horas en programacion en total ajajja, por ejemplo la letra "Ñ" y otros simbolos como !#$%&(?¡*]¨[-/ no me sirven, por lo cual busco el codigo hex de cada uno y lo pongo en el proyecto(Como se pone jaajaja)?Gracias de verdad sr J, agradezo su tiempo <3 eres un admin

kalvini1011 avatar Dec 06 '22 15:12 kalvini1011

@kalvini1011 yo soy de argentina. Sinceramente no soy ningun experto, tengo 17 años y estudio electronica en la secundaria. Llevo alrededor de un año aprendiendo arduino en la escuela. Dos compañeros y yo presentamos este proyecto en una feria de ciencias y con el paso del tiempo logramos entender bastante bien su funcionamiento.

Hay una seccion del codigo en la que vas a ver muchos ELSE IF. Todos estos estan ahi para poder escribir ciertas teclas especiales, como los signos.

el primero es el espacio, que aparece como: else if (*txt == ' ') { buf[2] = KEY_SPC; }

Aqui KEY_SPC es un codigo hex declarado al principio del codigo, con un simple #DEFINE.

El siguiente es el signo &: else if (*txt == '&') { buf[0] = KEY_LEFT_SHIFT; buf[2] = 0x24; }

KEY_LEFT_SHIFT esta declarado al principio del codigo. 0x24 corresponde al 7 o (apretando el shift) al &.

todo esto funciona para el teclado en ingles.

para poner la Ñ hay que fijarse que tecla hay en su lugar para el teclado en ingles.

205791259-ef5a46b6-28c4-4b05-a6c6-2a2a40593b21

puede que en la imagen no se note tan bien. Entonces podemos configurar nuestro teclado en ingles, tocar la Ñ y ver que aparece. al hacerlo vemos que aparece el signo ; (punto y coma). su codigo hex segun nuestro pdf es 0x33.

ahora creamos un nuevo ELSE IF para la Ñ

la extructura es facil:

else if (*txt == 'ñ') { buf[2] = 0x33; }

OJO hay que crear otro para la mayuscula.

else if (*txt == 'Ñ') { buf[0] = KEY_LEFT_SHIFT; buf[2] = 0x33; }

estos ELSE IF se colocan dentro del WHILE, abajo del VOID STRING. OJO con las llaves {}.

Yo creo que vas a poder con el resto de los signos por tu cuenta. La clave es poner tu teclado en ingles, tocar la tecla con el signo que queres escribir, y ver que signo sale escrito. Ese signo que sale escrito lo buscas en el pdf y copias su codigo. dentro de la programacion te fijas si el signo que queres escribir ya tiene su ELSE IF. si lo tuviera, solo queda remplazar el codigo hex por el que corresponde, y ver si requiere apretar shift o no. En el caso contrario de que no estuviera declarado (que no tiene un ELSE IF para ese signo), tendrias que crearlo con la extructura que explique antes.

Te adjunto el archivo INO que presentamos con nuestro proyecto en la feria de ciencias. esta hecho para teclado en español. El codigo hace lo siguiente: crea una carpeta en el escritorio, descarga una imagen, la guarda en dicha carpeta y abre la imagen. todo mediante powershell.

proyecto_final_expo.ino.zip

para abrir el archivo borrar la extension .zip.

Suerte con el proyecto. Cualquier duda avisame.

Saludos

J-Maac avatar Dec 06 '22 18:12 J-Maac