TODOPIC
Otros Microcontroladores / Dispositivos programables => ** PROYECTOS ** => Mensaje iniciado por: kukkiv en 03 de Agosto de 2016, 21:56:45
-
Buenas noches,
Poseo el siguiente proyecto:
Consiste en un teclado matricial en el cual, al presionar dos teclas consecutivas debería formarse una letra. Los dígitos que deben ingresarse son en el orden de la tabla ASCII pero en hexadecimal, desde el 41 hasta el 66. En este caso, las letras a mostrarse para cada par de dígitos será con las letras del abecedario respectivamente.
En espera de su pronta respuesta, gracias. - Tienes que ingresar para ver archivos adjuntos - - Tienes que ingresar para ver archivos adjuntos -
-
Dejame entender lo que queres decir.
Vos con el teclado matricial queres introducir 2 caracteres, supongamos el 4 y el 6.
Luego de introducido los 2 numeros, se procede a buscar cual es el 0x46 en ASCII,
Luego eso lo mostras en el Display.
Estoy en lo correcto?
Mas problemas:
Segun la imagen que me pasaste,
(http://www.todopic.com.ar/foros/imgtiny/wrjk8n.jpg)
ya que hablas de 41 a 66, esos numeros son HEXADECIMALES ( escritos asi: 0x41, o h'66', o 66h), por lo tanto vas a necesitar del A,B,C,D,E,F para hacerlo de esa forma. Pero en tu imagen pasas un teclado que no posee las letras. Y que si existe un teclado de esos, suelen tener solo 4 letras ( A,B,C,D).
Por otra parte las letras son las de mayusculas mayusculas debo imaginar, ya que de 41 a 66 decimal no hay nada, Y lo curioso es que las letras mayusculas van de 0x41 a 0x5A, o en decimal de 65 a 90.
La otra opcion seria de usar decimales en ves de hexadecimal, y con el teclado que mostras se podria realizar, PERO ( siempre hay un pero) No se como pretendes mostrar en un display de 7 segmentos todas las letras, Ejemplo la K, M, S, V, W, X, Y, Z (algunas que no se pueden y otras que se confundirian con numeros)
-------------
Supongamos ahora que todo lo anterior esta solucionado, y hay una forma de realizarlo. Ahora solo queda hacer 3 cosas:
- Leer el teclado, y cada 2 teclas guardarlo en un registro ( lo vamos a llamar ENTRADA ).
- Una rutina que tome el valor del registro (ENTRADA) de las 2 teclas presionadas y proceda a transformarlo en su valor ASCII menos 'A' y guardarlo en otro registro (INDICE)
- Una rutina de muestra, la cual llame a la tabla con el resultado del anterior rutina (INDICE) y proceda a poner el resultado en el display.
El segundo item es muy simple, seran unas 15/20 lineas a lo maximo.
El tercer item, tambien, demasiado simple, lo que mas va a ocupar es la tabla de los caracteres, Estos dos ultimos items podrian llegar a ser 1 solo.
Y el mas complicado es Leer el teclado y su proteccion para que al presionar un boton no se tome como que se presiono varias veces. Este tal ves pueda extenderse a unas 60 tal ves. ( Aunque tal ves aun asi lo considero demasiado ).