Hola buen dia.
Es mi primera publicacion, en este foro aunque ya llevo tiempo checandolo, tengo un problema con respecto a una progracion que quiero realizar.
El objetivo es el siguiente, quiero hacer una acceso para cuatro puertas con un microcontrolador, lo que he logrado es hacerlo independientemente por funciones, pero no logro juntarlas y que esten disponibles al mismo tiempo, lo que me sucede es que ejecuta una funcion y asta que termina inicia la otra. Dejo el codigo espero y me ayuden.
Saludos.
Es mi primera publicacion, en este foro aunque ya llevo tiempo checandolo, tengo un problema con respecto a una progracion que quiero realizar.
El objetivo es el siguiente, quiero hacer una acceso para cuatro puertas con un microcontrolador, lo que he logrado es hacerlo independientemente por funciones, pero no logro juntarlas y que esten disponibles al mismo tiempo, lo que me sucede es que ejecuta una funcion y asta que termina inicia la otra. Dejo el codigo espero y me ayuden.
Saludos.
Código:
#include <16F84A.h>
#fuses NOWDT,PROTECT
#use delay (clock=4000000) //Fosc=4Mhz
#USE standard_IO(A)
#USE standard_IO(B)
int a,b,c,d;
//////////// Primera funcion ////////
void acceso1(){
if(input(PIN_A0)==1); {
if (input (PIN_A0)==1){
output_low(PIN_A1);} //// A1 led rojo
output_low(PIN_A1);
for(a=1;a<=5;a++){
output_high(PIN_A1);
delay_ms(400);
output_low(PIN_A1);
delay_ms(400);}
if(input (PIN_A0)==1){
output_low(PIN_A1); }
output_low(PIN_A1);
output_high(PIN_A2); //// A2 led verde
delay_ms( 4000 );
output_low(PIN_A2);
}}
////////// segunda funcion //////////////
void acceso2(){
if(input(PIN_B4)==1){ //// B4 led rojo
if (input (PIN_B4)==1){
output_low(PIN_B5);
}output_low(PIN_B5);
for(c=1;c<=5;c++){
output_high(PIN_B5);
delay_ms(400);
output_low(PIN_B5);
delay_ms(400);}
if(input (PIN_B4)==1){
output_low(PIN_B5); }
output_low(PIN_B5);
output_high(PIN_B6); /// B6 led verde
delay_ms( 4000 );
output_low(PIN_B6);
}}
void main (void){
while(true){
output_high(PIN_A1);
output_high(PIN_B1);
output_high(PIN_B5);
output_high(PIN_A3);
output_low(PIN_A2);
output_low(PIN_B2);
output_low(PIN_B6);
output_low(PIN_B3);
acceso1();
acceso2();
}}} ...
Última edición por un moderador: