lunes, 11 de junio de 2007

CONCLUSIONES(final)

Bueno este curso o materia de compiladores fue de gran ayuda para la realizacion de proyectos que ya tengan una mejor proyeccion para nosotros, el aprender a quemar un pic, el poderse documentar en un proyecto de investigacion, de los programas los materiales necesarios, de la configuracion de puertos para la quemada han sido de verdad un reto y es asi como se debe de buscar un proyecto de tesis posiblemente para redes inalabricas que tenemos pensado y que lo de los pic nos van ha ser de gran utilidad agradecemos este curso profe, porque ya le hallamos nuestra aplicacion, sentimos las dificultades y los atrasos para este proyecto ya que no contabamos con nuestros trabajos que realizamos el de Diego y el mio en CEDELCA que justo estaba en periodo de prueba y fue bastante duro, por la disponibilidad de tiempo y que tambien son necesarios para nuestra formacion.

DESCRIPCION DE ELEMENTOS (final)

El compilador EPIWIN es nuestro lenguaje de programación que hace mas fácil y rápido programar el controlador Pic 18f452 para compilar el codigo fuente de la calculadora se corre con el mplab c18, y el hardware o parte fisica se utilizo una protoboard, dos capacitores de 10 pf y uno de 1 uf, para el cristal de 1Mhz. cinco resistencias de 10K en los pines R1= para el pin 19, R2= para el pin 20 , R3= para el pin 21, R4= para el pin 22 y R5= para el pin 1 y cuatro diodos rectificadores para los pines 33, 34, 35, 36 que son las salidas A, B, C, D del teclado de la calculadora, una fuente de 5 volt. Otros elementos como el display 1 por 16 para visualizar los datos y el teclado por supuesto.

REDACCION DE ASPECTOS TEORICOS YCONCEPTUALES (final)

Los programas mas comunes para hacer funcionar los microPic involucran asegurarse que los pocos componentes externos sean de valor apropiado y están conectados adecuadamente. Las siguientes son algunos problemas y soluciones para hacer funcionar el proyecto.
Asegúrarse que el chip está bien conectado a 5 volt a través de algún tipo de circuito protector o simplemente en serie. Si deja el pin sin conectar su nivel flota y algunas veces el microPic puede dañarse. El microchip tiene un circuito interno de power-on-reset (puesta a cero al encender) y en general solo es necesario un resistor interno de pull-up adecuado. En algunos casos el microchip o micropic puede no arrancar apropiadamente y se necesita un circuito interno. En los manuales se encuentra algunas instruciones como de información.
se debe de asegurar que el cristal o el oscilador este en buen estado con capacitores de valor adecuados conectados a él . Los valores de los capacitores pueden ser difíciles de leer. Si los valores son muy diferentes el oscilador no arrancará ni trabajará en forma apropiada. Un cristal de 1 Mhz que es el nuestro, con 2 capacitores cerámicos de de 10pf es un buen comienzo para la mayoría de los microPic.
Tener en cuenta que la fuente de alimentación sea apropiada para el proyecto. Aunque el microPic consume muy poca potencia la fuente debe estar muy bien filtrada. Si el microPic está controlando dispositivos que consumen bastante corriente de su fuente cuando ellos se encienden o apagan pueden causar un glitch (ruido ó interferencia) en las líneas de alimentación causando que el microPic deje de funcionar apropiadamente de hecho quemamos o dañamos un pic en arquitectura de computadores que fue otro proyecto que tambien trabajamos o que trabajo Arley con otros compañeros de noveno. Aun un visor LED puede crear un drenaje instantáneo en una pequeña fuente de alimentación (como una batería de 9 volt) y causar el microPic falle.
Chequear las conexiones de datos o salidas del microPic. Algunos dispositivos tienen opciones que pueden interferir con algunas operaciones. Los PIC16C62X (16C620, 621 y 622) son un buen ejemplo. Estos microPic tienen comparadores analógicos en PORTA. Cuando estos micros arrancan, PORTA se coloca en modo analógico. Esto hace que la función en PORTA trabaje de una manera no esperada. Para cambiar el pin a digital, simplemente agregue la línea.
CMCON = 7 al codigo.
Al principio de nuestro proyecto cualquier micro ÏC con entradas analógicas como la serie16C7xx arrancará en modo analógico se deberán colocar en modo digital si se intenta usarlos en ese modo puede quemarse propiamente dicho.
Otras observaciones aparte del montaje en la QT o protoboard es que se debe realizar el programa paso a paso, es decir cortos para probar opciones de las que no se está seguro ó con las que puede tener problemas .Una vez que estas funcionen . puede seguir adelante
Trate de hacer las cosas de otra manera . Algunas veces , aquello que trata de hacer debería funcionar , pero no lo hace . Normalmente hay mas de una forma de confeccionar un programa . Usar comentarios como en todo programa para el desarrollo claro de lo que se esta haciendo. Aunque sea ha veces las cosas sean obvias para nosotros, no lo seran para los demas.
Aunque los comentarios se usan en mathlab o mplab en el archivo fuente de EPIWIN no lo hace para luego ser insertado en el microchip .

DESCRIPCION DEL TRABAJO (final)

En mplab c18 se desarrolla el código que puede ser compilado para una variedad de micro controladores PIC que tengan de 8 a 68 pins el nuestro es de 40 pines que en el se pueden programar varios proyectos incluyendo convertidores A/D, temporizadores y puertos seriales.
Hay algunos micros PIC que no trabajaran con el mplab c18, por ejemplo las series PIC 16C5X incluyendo el PIC 16C54 Y PIC 15C58. Estos micro PIC están basados en el viejo núcleo de 12 bit en lugar del núcleo más corriente de 14 bit.
Inicialmente se propuso desarrollar el proyecto con el pic 16f873 que su codigo ejecutable en lenguaje de maquina se generaba a partir de C , pero este no se encontraba en el mercado, tampoco un quemador para este propósito.
El quemador de microcontrolador tambien es compatible para memorias (EEPROM) que permite rápido borrado y reprogramación para acelerar la depuración de programas.
Con el clic de un mouse en el software, el PIC18F452 puede ser quemado instantáneamente y luego ser reprogramado en los otros espacios o registros libres una y otra vez hasta agotar los espacios disponibles que da el fabricante. Otros micros PIC de las series 12C67X, 16C55X, 16C6X, 16C7X y 16C9X son programables una vez (OTP) o tienen una ventana de cuarzo en su parte superior (JW) para permitir el borrado exponiéndolo a una luz ultravioleta durante varios minutos.
El PIC18F452 contiene 64 bytes de memoria de datos no volátil que puede ser usada para archivar el datos de programa y otros parámetros, aun cuando no haya energía. A ésta área de datos, se puede acceder simplemente usando las órdenes “Read” y “Write” de mplab. (El código programa es permanentemente guardado en el espacio de código del micro PIC, tanto si hay o no energía.)
El proceso de depuración puede ser más rápido. Una vez que las rutinas principales de un programa estén operando satisfactoriamente, se puede utilizar un micro PIC con mayor capacidad o las opciones expandidas del compilador.
Muchas de las opciones del micro PIC serán discutidas en el manual didactico en medio magnetico que ofrece el fabricante del quemador de pic que se recibe en la compra.

El manual abarca la instalación del epiwin (quemador del codigo .hex) para el lenguaje de maquina y mplab para compilar el programa en lenguaje de alto nivel que es el primer paso en los programas. Siguiendo estos pasos hay que configurar el quemador de pic fisicamente es decir quitar todos los jumpers para chips de 40 pines y cuatro switches que el fabricante dispone al usuario para configurar cuando es de lectura y luego de escritura del programa.

Después se debe construir el circuito en la base o protoboard, con los elementos referenciados en la lista de materiales para este proyecto.
El resto del manual, provee información de paginas web para programadores avanzados - todo el trabajo interno que el compilador dado hace.

INSTALACIÓN DEL SOFTWARE MPLAB C18 El software debe ser copiado a su disco duro antes de usarlo. Cree un subdirectorio en su disco llamado mplab c18 u otro nombre a su elección, copiar todos los archivos desde el cd adjunto, La opción asegurará que todos los subdirectorios necesarios serán creados dentro del subdirectorio mplab c18.
Si el archivo es comprimido (.ZIP) o ejecutable (.EXE), usted necesita descomprimirlo (unzip).

mplab tiene un editor ó procesador de texto para crear el programa fuente , algún tipo de programador de micros PIC como el EPIC Plus o el nuestro EPIWIN asi el maplab podra generar el .HEX para el siguiente programa.
La secuencia de eventos es la siguiente :
Primero se crea el archivo fuente para el programa , usando el editor o procesador de texto. Si se quiere el EDIT ( incluído en DOS) ó NOTEPAD (incluído en WINDOWS) , pueden ser utilizados.El nombre del archivo fuente debe terminar con la extensión .BAS (pero no es excluyente), recomiendo el UltraEdit
El archivo de texto creado debe ser texto ASCII puro .No debe contener códigos especiales insertados por procesadores de texto para sus propósitos específicos .Normalmente se tiene la opción de grabar el archivo como texto ASCII puro en la mayoría de los procesadores de texto.
El programa provee un buen testeo del programa para ver si corre sin errores para que asi se pueda generar el codigo con la extencion .HEX para el microchip real .

Ejemplo de programa para hacer parpadear un LED conectado al puerto PORTB.0 , aproximadamente una vez por segundo ´
loop: high PORTB.0 ´ enciende el LED
pause 500 ´ demora de .5 segundos
low PORTB.0 ´ apaga el LED
pause 500 ´ demora de .5 segundos
goto loop ´ vuelve a loop y hace parpadear el LED indefinidamente
end
Una vez que Ud. esté convencido que el programa que ha escrito funcionará sin errores puede compilarlo ingresando el nombre de su archivo de texto en el prompt de DOS .Por ejemplo , si el archivo de texto que Ud. creo se llama calculadora.BAS.
El compilador mostrará un mensaje de inicialización y procesará su archivo .Si lo acepta , creará un archivo de código fuente ensamblado ( en este caso calculadora.ASM) y automáticamente invocará al ensamblador para completar la tarea .Si todo funciona bien , se crea un archivo de código microPIC (en este caso calculadora.HEX). Si existen errores , se emitirá un listado de los mismos , que deberán ser corregidos en su archivo fuente EPIWIN antes de ser compilados nuevamente.