Download Chapter 4: The Microcontroller Cuando usamos un
Document related concepts
no text concepts found
Transcript
Chapter 4: The Microcontroller Cuando usamos un microcontrolador en un circuito, comenzamos a ver infinitas posibilidades de interactuar con el circuito. Para esto es necesario aclarar ciertos términos. Input, es una entrada de información al circuito. El output es básicamente la salida de la información desde el circuito al microcontrolador u otro. Pins del microcontrolador: Cada microcontrolador tendrá pins para conectarlo al poder (positivo) y a la tierra (negativo), pins para programar el chip y pins de Input-Output (I/O). Algunos microcontroladores tienen otros pins para funciones especiales. Dependiendo del microcontrolador los Pins I/O podrán tener diferentes funciones, para eso debes decidir que instrucción quieres que el pin siga. Las funciones mas básicas son digital Input y output. Algunos pins también son capaces de recibir inputs análogos. La numeración de los pins sigue una forma de U a lo largo del microprocesador. Comenzando por la esquina izquierda. La mayoría de los microprocesadores (stamp-like, como estampillas) poseen 24 pins. Los primeros cuatro pins de la izquierda se usan para programar el chip, los primeros cuatro de la derecha se usan para dar energía y resetear el chip, y los restantes 16 pins se usan en general como I/O. En el PIC (es un tipo de microprocesador), los pins que corresponden al poder y la tierra se encuentran cercanos al centro del chip y los I/O pins se encuentran repartidos desde el centro al resto del chip. Algunos I/O pins también funcionan para programar. Además existen dos pin, CLKIN y CLKOUT, que son para un cristal externo que funciona como el reloj sincronizador del PIC. Microcontroladores de bajo nivel: Reloj Externo Cada microprocesador necesita regular el pulso del voltaje para lo cual es necesario el reloj. Este reloj genera millones de pulsaciones en un segundo. Un Cristal esta diseñado para generar pulsaciones a una velocidad especifica cuando se le suministra energía. Posee dos pins intercambiables. Cuando se conecta a los pins CLKIN y CLKOUT y a tierra mediante un capacitador de 22-pF, el cristal vibra a una frecuencia determinada dándole un reloj al PIC. Programando el Chip: Los microcontroladores que se nombran en el libro pueden ser programados reiteradas veces. Sin embargo no todos los microprocesadores tienen esta característica. Algunos solo se pueden programa una sola vez, por lo tanto una vez programaos quedan así de por vida. Estos chips son mucho mas baratos y en general se utilizan para producciones en masa, no se recomiendan para proyectos individuales o para desarrollar nuevos artefactos, ya que en general esto requiere de mucho ensayo y error en el proceso. En general hay dos componentes que son comunes a todos los microcontroladores: Una conexión para el hardware entre el computador y el microprocesador y una serie de programas multimedia en el computador para programar, compilar el programa y descargarlo desde el pc al chip. Algunos también incluyen la posibilidad de enviar mensajes desde el pc al microcontrolador mientras el programa esta corriendo. Siempre que se cargue una nueva programación en el chip, la programación anterior será borrada. Es importante saber que no se puede obtener la programación desde el chip a un PC en un lenguaje entendible para el humano. Por lo tanto recuerda siempre salvar cada programación que realices en tu computador. Programando módulos del tipo estampilla (Stamp-like Modules): En estos módulos el editor, compilador, el sistema de descarga y el sistema para hacer correr un programa vienen en una aplicación. Usan un programa simple para programar llamado BASIC. Los cuatro primeros pins son de puerto serial y se conectan a través de un cable con el puerto serial RS-232 de tu computador. Para la conexión busca en la parte de atrás de tu computador un puerto con nueve pins hembra para hacer la conexión (DB9) el cual esta rotulado como 0/0/01. Hoy en día muchos equipos como MAC y PC están solo equipados con puertos USB, para ellos tendrás que conseguir un cable USB con adaptador a RS-232. EL Software para programar: Si estas usando el BASIC Stamp 2, usaras la variación de pBasic del lenguaje BASIC. Para el Atom Pro24 usaras la variación mBasic y para el BX-24 usaras BX BASIC. Es importante entender que todas estas variaciones del lenguaje de programación BASIC funcionan con la misma lógica sin embargo utilizan diferentes comandos para una misma instrucción. Para un microcontrolador estampilla BASIC, usaras un programa en el que escribirás los códigos para programar el chip, elegirás la versión del chip con el que estas trabajando en la barra de herramientas (por ejemplo BS-2 stamp), luego escogerás la versión de lenguaje para programar que usaras, finalmente escribirás los códigos, compilarás el programa y lo descargarás al microprocesador. El paso siguientes es desconectar tu cable y el programa empezara a correr por si solo. Solo queda guardar tu programa para mantener los comandos usados en ese código. Para el Basic Atom Pro, el software de programación es similar al del Basic stamp, con la diferencia de que no debes seleccionar la versión del chip que utilizaras o el lenguaje. Una vez que ingresaste tu código solo debes hacer click para compilar y descargar el programa al chip. Para el BasicX hay dos partes, una ventana para descargar y una ventana para editar. Cuando abres el programa solo aparecerá la ventana para descargar, debes hacer click en el icono de edición para que se abra la otra ventana. Una vez abierta haz click en nuevo proyecto para comenzar un nuevo proyecto y dales a ambos el mismo nombre. El programa por si solo cargara unos textos para comenzar. Bórralos e introduce tu propio texto o código, luego compila y descarga tu programa para hacerlo correr en el chip. Cuando guardes el proyecto verás que se crearán varios archivos agrupados bajo el nombre del proyecto, todos poseen el mismo nombre sin embargo tienen diferente extensión, el archivo con la extensión “.bas” es el que contiene el código (texto). El archivo con la extensión “.bxb” es el código binario que se ingresa al chip. El hardware para programar. La mayor diferencia entre módulos de mediano nivel y de bajo nivel es el hardware para programar. Este dispositivo se conecta al puerto paralelo o puerto serial de tu PC y carga el programa en el PIC. Software de programación para módulos de bajo nivel: Como ya mencionamos poseen software de tres piezas, un editor de texto, un compilador y uno para descargar. En los ejemplos de este capitulo usaremos para editar el “MicroCode Studio Lite”, para compilar el “PicBasic Pro” y para descargar el “EPIC Plus software”. También necesitaras un compilador extra llamado MPASMWIN para el microchip. Cuando trabajamos con PIC, debes adjuntar el programador EPIC Plus al puerto paralelo del PC y asegurarte de que reciba energía. Luego abre el MicroCode Studio e introduce el código. Has click para compilar y programar, al hacer esto el software llamara a los software PicBasic Pro y MPASMWIN para compilar el programa. El compilador generará una serie de archivos con el mismo nombre pero diferentes extensiones, tal como vimos que sucedía anteriormente para el BX-24. El archivo con la extensión “3bas” contiene el texto del código y el archivo “.hex” contiene el código binario que se descargara al chip. Una vez compilado, el Microcode Studio abrirá el EPIC Plus software para la descarga. Primero debes adjuntar el pin 40 ZIF adaptor al programador EPIC (ver figura). Luego conecta PIC al Pc, escoge la configuración del programa y configura el PIC. Errores comunes: Es necesario partir de la base de que nada funcionara bien a la primera, por lo que hay una serie de errores comunes que puedes revisar para encontrar la falla. 1) revisa si al circuito le esta llegando energía 2) revisa si el pin mencionado en el software es el mismo que se esta usando en el circuito. 3) Revisa si el componente que estas utilizando funciona, por ejemplo un LED, un sensor etc… 4) Revisa si el resistor que estas usando es el de valor adecuado. 5) Revisa si el circuito esta conectado al puerto serial de forma correcta. 6) Revisa si el software esta configurado para usar el mismo puerto serial que se esta usando. 7) Revisa si alguna otra aplicación tiene incidencia en el puerto serial.