Este es el diseño de un temporizador electrónico realizado con el microcontrolador PIC 12F683, este diseño permite hacer una temporización regulable mediante un potenciómetro incorporado en uno de los conversores del PIC 12F683, además posee tres entradas una para la marcha del temporizador otra para resetear el tiempo y otra para multiplicarlo por 10 o por 100, además el diseño esta realizado para trabajar con una tensión de 24 voltios tanto para la alimentación del PIC como para la activación de las entradas del mismo, el firmware del microcontroladores está escrito en PIC_CCS.
#include <12F683.h>
#FUSES NOWDT //No Watch Dog Timer
#FUSES INTRC_IO //Internal RC Osc
#FUSES NOPUT //No Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOMCLR //Master Clear pin enabled
#FUSES NOCPD //No EE protection
#device adc=10
#use delay(clock=4MHz)
#define TIEMPO PIN_A0
#define ENTRADA PIN_A1
#define POR100 PIN_A3
#define RESET PIN_A2
#define LED_SALIDA PIN_A4
#define SALIDA PIN_A5/**************************INICIALIZACION DE VARIABLES *********************************/
int16 Adc_consigna;
int8 Multiplicador;
Void Conversores();/************************** Interrupción por RA3 ************************************/
//enable_interrupts(INT_RA3);
#INT_RA
void RA2_isr(void)
{
clear_interrupt(INT_RA2);
disable_interrupts(INT_RA2);
if (input(RESET))reset_cpu();
enable_interrupts(INT_RA2);
}
void main(){
// port_A_pullups(0x30);
set_tris_a(0b001111); //GP0,1,4,5 output; 2,3 input
setup_adc_ports(sAN0);
setup_adc(ADC_CLOCK_INTERNAL);
enable_interrupts(GLOBAL);
enable_interrupts(INT_RA2);
output_LOW(SALIDA);
output_LOW(LED_SALIDA);
//setup_timer_1(T1_INTERNAL|T1_DIV_BY_8); // initiating timer // initiating the LCD
//delay_ms(1000); // Boot-up delay, for troubleshootingwhile(true) {
if (input(ENTRADA))Conversores();
if (input(POR100))Multiplicador=100;
if (!input(POR100))Multiplicador=10;
}
}
Para obtener más información y el firmware del microcontrolador entra en mi blog y deja tu opinión del proyecto
Jose Aguero
Gracias! Pero tiene clave y no llega a mi correo el que tengo inscrito en Facebook.
Pcalero
La contraseña es “ELECTRONICA_PCM”, te animo a que te agregues al grupo https://www.facebook.com/groups/263101180770379/ para que veas más proyectos
un saludo
victor tixe
saludos estimado impresionante el control de tiempo por potenciometro se lke podria adicionar un lcd o un display parar ver el tiempo trascurrido ?? victortixe49@gmail.com gracias pòr todos tus proyectos