En este Trabajo Practico, se nos propuso nuestro primer trabajo de programacion, tanto en C (pendiente) como en Assembler. Antes de empezar queremos dejar en claro que la razon por la cual pusimos ambos tps. 13 y 14 juntos fue que ambos comparten muchas cosas en comun y explicar todo de ambos seria algo pesado y no es el objetivo que lo sea.
utilizamos los siguientes sitios:
"http://usuarios.multimania.es/sfriswolker/pic/siete.htm" (agradecemos al grupo 5 por este dato)
"http://perso.wanadoo.es/luis_ju/pic3/pic3_01.html"(fue una pagina que despejo muchas dudas sobre como generar interrupciones)
si bien estos sitios no son una fuente de informacion completamente fiable probamos muchos comandos descriptos en ambos y no tuvimos problemas excepto una excepción que explicaremos en detalles mas adelante.
Sin mas preambulos, aqui estan los dos programas creados en MPLAB:
http://www.mediafire.com/download.php?tmkgcoe25d4vxmv
Nota: Estos programas fueron hechos con otra version del MPLAB que la utilizada en la escuela, sin embargo, encontramos que creando en nuevo proyecto en el MPLAB (hecho para el pic16F84A) y añadiendo el archivo ASM (archivo de texto) al proyecto, se pueden abrir sin ninguna dificultad.
De esta manera nos quedaron los codigos de los programas:
TP13
TP14
Para simular estos proyectos utilizamos el ISIS (programa que integra el Proteus 7). Debajo tenemos 2 videos del cada programa funcionando, debajo haremos una explicacion de cada 1.
En el primer video creamos un delay para generar el efecto de una señal cuadrada en el led y atraves de una interrupcion, logramos controlarlo con un boton.
En el segundo video, utilizando el mismo delay, comandamos 4 patrones diferentes, haciendo que tras cada ves que se presione el switch prenda 1 led, se apage, prendan 2, se apaguen, prendan 3, se apaguen, prendan 4, se apaguen y volviendo a apretar se vuelve al primer estado. Una de las cosas que diferencian los delay de ambos es que en lugar de usar el comando comf, utilizamos el comando bsf y bcf ya que el anterior mencionado funcionaba mal. Este Programa, luego de re leer la consigna fue descartado por no cumplir con la pauta de utilizar 8 bits, y lo re hicimos con mucho mas contenido y optimizandolo mas, haciendo patrones diferentes diferenciados por una espera de 2 segundos entre secuencia y secuencia controlado por un boton.
aqui el codigo:
Este codigo tiene ventajas del anterior como la no definicion de bit por bit de cada variable sino la definicion de la variable completa. Aparte posee secuencias mas complicadas repetidas una cantidad definida de veces claramente especificadas en decimal para una sencilla lectura (se utiliza un . [punto] antes de el valor decimal)
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario