martes, 16 de noviembre de 2021

Interrupciones con PIC 16F628A fáciles | Proyectos con PIC 16F628A | Interrupción externa PIC RB0/int | Interrupciones PIC C compiler | Luces led intermitente a pila | Secuencia de leds con PIC 16F628A




Presentamos un proyecto el cual hace uso de un microcontrolador pequeño, 16F628A, y que además solamente funciona a pilas, y es muy práctico de implementar y ocupa poco espacio. Se pone énfasis sobre todo en el uso de las interrupciones externas por RB0, mediante el programa CCS o PIC C Compiler. Más concretamente lo que consiste este proyecto, es en un circuito de luces led intermitentes o también conocido como flasher o circuito de destello, la función que cumplen esta clase de luces intermitentes principalmente, es la de servir como distractores o disuasivos para hacer pensar que existe una alarma activada, y en verdad esto sí ocurre con los vehículos que tienen alarmas, pero se lo puede usar también en una casa, y encenderlo en la noche y ponerlo cerca de una ventana para que sea visible, y así de alguna forma hacer pensar a personas que quieren irrumpir en nuestro hogar, que hay una alarma activa. Otro uso que se les puede dar es el de indicadores visibles, sobre todo cuando vamos en bicicleta por la noche y está obscuro, con lo cuál cualquier otra persona que va en bicicleta, o que esté desplazándose en otro vehículo, o que simplemente esté caminando hacia nosotros, se de cuenta de nuestra presencia. Si se desea se puede crear una secuencia específica y acordar esto con alguna otra persona para identificarse mutuamente fácilmente, que se yo, a manera de juego, o simplemente como una pequeña herramienta de aviso en cubierto, en fin. 

Una interrupción lo que hace es interrumpir un programa que está en ejecución, o que puede ser tomado en cuenta como principal, para poner en funcionamiento un segundo programa, ya que los microcontroladores se basan en esto para poder ejecutar diferentes programas, es decir el microcontrolador como tal no puede ejecutar varias procesos en paralelo o al mismo tiempo, tiene que ocurrir una interrupción para poder cambiar de programa o proceso. Así mismo hay diferentes formas en que se producen estas interrupciones, y por ende se las activa mediante diferentes sentencias o comandos en el código que se graba en el microcontrolador. Tales interrupciones pueden ser internas o externas. Las internas se dan por cambios en procesos internos del microcontrolador como en la memoria, los temporizadores, el CPU, las externas se dan por cambios externos, y estos cambios son detectados mediante los pines del microcontrolador, pero cada pin o grupos de pines atenderán diferentes tipos de interrupciones en específico, se puede ver también el datasheet de cada tipo de microcontrolador para tener una idea. 

En el siguiente vídeo podrán ver con más detalle su implementación, los materiales y el código o programa que se cargará en el microcontrolador, para generar la secuencia de las luces led.



Del vídeo anterior lo que podemos resumir, es que se hace uso de las interrupciones externas mediante el pin RB0, y lo que hace esta interrupción es un cambio de secuencia, y así mismo luego de haberse activada la segunda secuencia mediante la interrupción, se puede retornar a la primera secuencia mediante el accionamiento del interruptor. Pero retornar al programa inicial después de la interrupción pueda que no sea tan fácil como parece, para retornar al programa principal hay que poner las sentencias adecuadas, ya que como en otros proyectos consultados, una vez que se interrumpe el programa principal y se ejecuta la interrupción más de una vez, para ejecutar más de un programa secundario, simplemente no se retorna al programa principal, y simplemente la interrupción se queda funcionando entre los programas secundarios. Por tal motivo siempre es importante tratar de implementar los prototipos de manera física y comprobar que el funcionamiento es el mismo que en la simulación.

Todos los archivos adjuntos para la implementación de este pequeño proyecto están en el siguiente enlace:

Archivo hexadecimal y simulación (Aquí) 👈


En fin, se trata de un proyecto muy simple, que pretende usar las interrupciones con el fin más práctico posible, aplicado a situaciones más reales y de uso más cotidiano.

Otro uso que se les puede dar a esta clase de circuitos de luces led es el de una simple decoración, y si se desea personalizar o cambiar la secuencia ya establecida en este proyecto, usarlos en tiendas, negocios, o en nuestra sala como luces navideñas, etc. Poner luces personalizadas también puede ser una forma de realzar la presentación de un determinado sitio, o tratar de llamar más la atención.

Muchas personas también piden aprender realizar esta clase de proyectos sin el uso de circuitos integrados, por tal motivo en una siguiente publicación se realizará un proyecto similar.

No hay comentarios.:

Publicar un comentario