Bueno en esta ocasión comenzaremos con algunas prácticas utilizando el MicroCode Studio esto para programación en BASIC para nuestros Microcontroladores PIC, en esta ocasión utilizando el ya conocido PIC16F84A, el circuito realiza la simulación de un semáforo, con pocas instrucciones y pocos elementos.
Circuito:
A continuación se muestra el diagrama correspondiente al semáforo, el cual tiene su oscilador externo y es un cristal de cuarzo con sus debidos capacitores, una resistencia a Vcc de 10KΩ y los LEDs (2 Rojos, 2 Verdes y 2 Amarillos) con sus debidas resistencias de 330Ω. El circuito se alimenta a 5 volts.
A continuación se muestra el diagrama correspondiente al semáforo, el cual tiene su oscilador externo y es un cristal de cuarzo con sus debidos capacitores, una resistencia a Vcc de 10KΩ y los LEDs (2 Rojos, 2 Verdes y 2 Amarillos) con sus debidas resistencias de 330Ω. El circuito se alimenta a 5 volts.
Código:
A continuación muestro el código para un semáforo sencillo con muy pocos elementos y muy fácil de armar. La diferencia entre esta publicación y la número uno está en el uso de alias o nombres específicos para los puertos, esto para evitar confusiones al momento de activar cierta salida.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
'**************************************************************** | |
'* Name : SEMAFORO CON PIC 16F84A - DOS * | |
'* Author : https://mrchunckuee.blogspot.com/ * | |
'* Notice : Copyright (c) 2014 MrChunckuee * | |
'* : All Rights Reserved * | |
'* Date : 31/05/2014 * | |
'* Version : 1.0 * | |
'* Notes : * | |
'* : * | |
'**************************************************************** | |
DEFINE OSC 4 'Se define el oscilador interno del PIC (4MHz). | |
TRISB = 0 'Puerto B del micro controlador como salidas. | |
PORTB = 0 'Inicializamos el puerto B en cero. | |
'Definimos un nombre a cada pin donde estan los LEDs | |
VERDE1 var PORTB.0 | |
AMARILLO1 var PORTB.1 | |
ROJO1 var PORTB.2 | |
VERDE2 var PORTB.3 | |
AMARILLO2 var PORTB.4 | |
ROJO2 var PORTB.5 | |
SEMAFORO: 'Etiqueta de inico llamado SEMAFORO | |
HIGH ROJO2: HIGH VERDE1 | |
pause 9000 'Retardo en milisegundos | |
LOW VERDE1: HIGH AMARILLO1 | |
pause 3000 'Retardo en milisegundos | |
LOW AMARILLO1: LOW ROJO2: HIGH VERDE2: HIGH ROJO1 | |
pause 9000 'Retardo en milisegundos | |
LOW VERDE2: HIGH AMARILLO2 | |
pause 3000 'Retardo en milisegundos | |
LOW ROJO1: LOW AMARILLO2 | |
GOTO SEMAFORO 'Regresamos a la etiqueta SEMAFORO bucle infinito | |
END 'Termina el programa |
Video:
Dejo el vídeo del circuito en acción
Descargas:
Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.
Donaciones:
Si te gusta el contenido o si los recursos te son de utilidad, comparte el enlace en tus redes sociales o sitios donde creas que puede ser de interés y la otra puedes ayudarme con una donación para seguir realizando publicaciones y mejorar el contenido del sitio. También puedes hacer donaciones en especie, ya sea con componentes, tarjetas de desarrollo o herramientas. Ponte en contacto para platicar, o puedes volverte uno de nuestros sponsors.
Pido una retroalimentación avisando cada que un enlace no sirva o tenga errores al momento de abrirlo, así también si una imagen no se ve o no carga, para corregirlo en el menor tiempo posible.
2 Comentarios
Felicitaciones necesito la rutina para un semaforo de dos vias Gracias
ResponderEliminarGracias!! Hace tiempo que no usado PBP, ademas lo que hay en el blog es lo único que tengo, por el momento no hago código a pedido.
ResponderEliminar