prender y apagar solo con flanco de subida de un bit ccs

Lo que quiero hacer es encender un bit RA4 y apagarlo con el mismo boton
int x;
if (bit_test(PORTA,4)==1)
{x=1;
bit_set(PORTB,1);}
else
x=0;
if ((x)==0);
{if (bit_test(PORTA,4)==1)
bit_clear(PORTB,1);
}
 
yo realizaria un contador es decir cada ves que pulses incremente una variable algo asi
if portb.f4 == 1
{
x=x+1;
}
if x == 1
{
portb.f1=1;
}
if x == 2
{
portb.f1=0;
}
y para reset cuando x sea 2 pues lo mandas a 0 nuevamente.

Espero que te sirva
 
yo realizaria un contador es decir cada ves que pulses incremente una variable algo asi
if portb.f4 == 1
{
x=x+1;
}
if x == 1
{
portb.f1=1;
}
if x == 2
{
portb.f1=0;
}
y para reset cuando x sea 2 pues lo mandas a 0 nuevamente.

Espero que te sirva




Muchas gracias amigo pense que esto de los foros no funcionaba. Me siento muy contento porque alguien me contesto jajaja ya no me siento tansolo en este mundo de los pic sobre todo por que voy iniciando en todo esto. Pero encontre otra solucion dejo el programa para compartir.


if (bit_test(PORTA,4)==1&& x==0 && y==0)
{ x=1;
y=1;
delay_ms(10);
bit_set(PORTB,1) }
if (bit_test(PORTA,4)==1&& x==1 && y==0)
{ delay_ms(10);
x=0;
y=1;
bit_clear(PORTB,1); }
if (bit_test(PORTA,4)==0)
{ y=0; }
 
Atrás
Arriba