TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: xabibix en 18 de Marzo de 2006, 17:07:00

Título: Ayuda PIC16F84A
Publicado por: xabibix en 18 de Marzo de 2006, 17:07:00
Quiero hacer un programa con el pic16f84 que al accionar un pulsador(pin RA0 como entrada) se me quede una salida (RB0) enclavada (nivel alto) y al pulsar por segunda vez dicho pulsador (RA0) pase a nivel bajo la salida (RB0).

Me podria alguien ayudar?

Muchas gracias.
Título: RE: Ayuda PIC16F84A
Publicado por: RedPic en 18 de Marzo de 2006, 17:09:00
¿asm? ¿c? ¿basic?
Título: RE: Ayuda PIC16F84A
Publicado por: doppel en 19 de Marzo de 2006, 00:16:00
Hola:

Un ejemplo sencillo de como hacerlo en PROTON seria como sigue, un detalle importante es que el programa a continuación no tiene "antirrebotes" asi que tendrás que implementarlo por Hardware o simplemente usar el comando BUTTON de protón que elimina los rebotes del pulsador.-

Codigo:
"****************************************************************
"*  Name    : encendido / apagado                               *
"*  Author  : Doppel - Ejemplo para el foro TODOPIC             *
"*          : All Rights Reserved                               *
"*  Date    : 19/03/2006                                        *
"*  Version : 1.0                                               *
"*  Notes   : se presiona el pulsador para encender el led y    *
"*          :  si se vuelve a presionar lo apaga                *
"****************************************************************
device 16f84                   " declaro pic a usar
xtal 4                         " declaro frecuencia del cristal

symbol pulsador = porta.0    " le doy el nombre de pulsador al PORTA.0
symbol LED = portb.0     " le doy el nombre de LED al PORTB.0

trisa = %0001            " declaro porta.0 como entrada
trisb = %00000000        " declaro PORTB todas salidas
portb = 0                " apago el PORTB

inicio:    
     If pulsador = 1 and led = 0 then    " si presiono el pulsador y el LED está apagado entonces
       high led                         " enciendo el LED
      else if pulsador = 1 and led = 1 then  " sino si presiono el pulsador y el LED esta encendido
       low led                             " apago el LED
       endif                                " fin del "IF"
      goto inicio                          " vuelvo a inicio
end


espero que te sirva.-

saludos    Giño
 
Título: RE: Ayuda PIC16F84A
Publicado por: xabibix en 19 de Marzo de 2006, 01:04:00
El programa lo quiero hacer en asm.

Gracias.
Título: RE: Ayuda PIC16F84A
Publicado por: doppel en 19 de Marzo de 2006, 01:11:00
Hola

De ASM nada de nada!! seguramente no faltará alguien que te ayude  con ese lenguaje!!

saludos
Título: RE: Ayuda PIC16F84A
Publicado por: migsantiago en 19 de Marzo de 2006, 11:43:00
Xabibix, sube tu programa para que veamos que es lo que llevas hecho y resolvamos tus dudas. No creas que te vamos a dar el programa ya hecho y listo para usar.  Giño