miércoles, 18 de mayo de 2011

Implementación del firmware

Para implementar el firmware, es necesario inicializar el micro con los distintos puertos a utilizar, el LCD y configurar las interrupciones KBI por el que se controlará el accionamiento del teclado matricial. En éste orden de ideas, la inicialización del LCD sería así:



La configuraración de los puertos y de la interrupción KBI, se realiza dentro del "main", y sería como sigue:


La función que procesa el accionamiento de los distintos sensores a usar, se llama "sensores" y dependiendo el sensor activado, se visualizará un mensaje diferente en el LCD:


Sin embargo, para ingresar a dicha función, hace falta atender a la interrupción que nos determina que teclas se presionan. Para activar el sistema, hace falta seguir una secuencia que se va siguiendo por medio de banderas. El código correspondiente para atender las teclas presionadas por el teclado es:


Para la activación o desactvación del sistema se hace:


La inicialización de la memoria SD, se tomo de la página de Freescale. El programa con las diversas librerias se encuentra en el siguiente enlace:
https://docs.google.com/leaf?id=0BwQ9QQGb9BzYNjY2M2MxY2MtZjI1MC00ZTJlLWE4NmUtN2QzMGYzZTNjYThh&hl=en

Implementación del hardware

Para la implementación del hardware, es necesario tener en cuenta ciertos criterios de diseño que eviten todo tipo de interferencia. Con la ventaja de que nuestro sistema no contiene circuiteria analógica, las consideraciones que tuvieron cabida en nuestro diseño fueron:
  • Mantener las conexiones lo más cortas posible.
  • El microprocesador se ubicó en el centro de la placa junto con su reloj, con el objetivo de evitar el ruido.
  • Los elementos que se relacionan entre sí, se ubican lo mas próximos posible.
  • Las pistas de tierra y voltaje fueron trazadas de forma paralela.
  • Las pistas de alimentación fueron diseñados un poco gruesas para tener más capacidad de trasportar corriente y blindar los componentes de ruido.
  • La posición de conectores deben ir en un solo lado de la placa.
  • No hacer ángulos rectos para evitar la formación de antenas.
Sabiendo estos "tips" para diseñar el PCB, se logró realizar lo siguiente: