<<Inicio


TECLADO DE PC PARA PALM Parte 2


Hardware:

El hardware a implementar es tremendamente sencillo. Está basado en cualquier microcontrolador derivado del 8052. En mi caso he usado el T89c51RD2 porque lo tenia a mano, el código funcionará sin ninguna modificación en un AT89c51ED2 ó RD2 que son los modelos que actualmente comercializa ATMEL . El código se ha optimizado para que quepa todo en 4KB por lo que se puede emplear el mas económico AT89c4052 que viene en un encapsulado dip20. Todos ellos están disponibles en la web de Farnell .

El hardware será el normal en estos microcontroladores, es decir aplicar positivo, negativo y un cristal de cuarzo. Como hardware específico para el funcionamiento de este circuito solo es necesario añadir un diodo LED IR, una resistencia limitadora de unos 120Ω y en algunos casos dependiendo del derivado un transistor pnp como un DC557 y otra sesistencia de unos 2K2

Conexionado del teclado. Hay que conectar el positivo y el negativo y las líneas Clock y Data a cualquier pin libre de cualquier puerto (modificando el software en consecuencia).



Teclado DIN antiguo

Teclado MiniDIN PS-2


Vista frontal lado cable


Vista frontal lado cable

1. KBD Clock
2. KBD Data
3. N/C
4. GND
5. +5V (VCC)

 

1. KBD Clock
2. GND
3. KBD Data
4. N/C
5. +5V (VCC)
6. N/C



La salida de IR si se trata de un micro con salida apta para led como el AT89c4052 se conectará el diodo y la resistencia de 120Ω directamente, en caso contrario conectar el transistor.


Conexionado directo

Conexionado con transistor


Apto para microcontroladores con salida para LED


 




Software:

El software es algo complejo, por una parte está la lectura del teclado que he tomado de www.8052.com de su sección de rutinas, y la he modificado para que devuelva los códigos de las teclas extendidas, he eliminado la opción de recibir en ASCII ya que estaba configurado para teclado inglés y además no era útil ya que en ningún momento empleamos códigos ASCII, también se han modificado el funcionamiento de “bloq mayús” y otras teclas de control.

El software está escrito en ensamblador del 8052 usando el ensamblador de metalink, se incluye el archivo MOD8951.asm con las características particulares del AT89c51ED2 que habrá que modificar según sea el derivado que usemos y renombrarlo como mod8952 sin extensión para que funcione correctamente. El programa está diseñado para usar el famoso cristal de cuarzo de 11.0562MHz y un micro con 6 ciclos de reloj, para otros casos habría que modificar las variablea ton y toff en consonancia.

El resto de los archivos son:

tproy.asm Es el programa principal, incluye el bucle principal y la llamada al resto de módulos

vars.asm Contiene la definición de todas las variables empleadas (y de otras muchas no usadas ya que es un archivo genérico que suelo usar en mis proyectos)

kb.asm Básicamente es el programa controlador del teclado AT de www.8052.com con las modificaciones que indiqué antes módulos

teclasAT.asm Es el programa que se encarga de generar los códigos IR una vez leido el teclado, diferencia los distintos sets del teclado y permite el uso de acentos de forma natural en lugar del con el lioso proceso de palm.

TablaTEC.asm Contiene las tablas con los códigos que debe de generar por IR como podéis ver el registrar estos códigos ha sido una labor muy tediosa.


Programación y puesta en marcha:

Asumo que el lector está familiarizado con estos microcontroladores, en caso contrario puede obtener información en www.8052.com y otras muchas webs.

Mas adelante haré un tutorial básico de como hacer este circuito, con detalle pero de momento mi prototipo está montado sobre una placa que fue diseñada para algo totalmente distinto.

El proceso consistiría en:

Cabe destacar que he hecho gran esfuerzo para que todo entrase en solo 4KB de memoria de programa y de este modo poder usar derivados de bajo coste.


En la palm debe de estar instalado y activado el driver del antiguo teclado IR de cuatro filas de teclas.

Para poner en marcha basta con alimentar el sistema, si todo va bien se debe de iluminar el led Num Lock del teclado y el teclado debe de empezar a funcionar en cuanto orientemos el led al pda.


Siguiente>>