Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
#include<16f628a.h> #fuses XT,NOLVP,NOWDT #use delay(clock=4000000) #define S1 pin_a2 #define trig1 pin_a3 #define S2 pin_a0 #define trig2 pin_a1 #define botaotrav pin_b1 #define alarmevis pin_b4 #define alarmeaud pin_a5 char A; char B; int tempo = 30; int valor = 10; void monitoraA(); void monitoraB(); void trav(); void triggerA(); void triggerB(); void funcaovisual(); void main(){ while(TRUE){ triggerA(); triggerB(); trav(); delay_ms(100); if(!input(S1)||!input(S2)){ A = S1; B = S2; if(!A){ monitoraB(); }else if(!B){ monitoraA(); } } } } void monitoraA(){ for(valor=0;valor<=10;valor++){ if(valor==10&&!input(S1)){ output_high(alarmeaud); delay_ms(10000); output_low(alarmeaud); funcaovisual(); } } } void monitoraB(){ for(valor=0;valor<=10;valor++){ if(valor==10&&!input(S2)){ output_high(alarmeaud); delay_ms(10000); output_low(alarmeaud); funcaovisual(); } } } void trav(){ if(botaotrav==1){ output_low(alarmevis); output_low(alarmeaud); for(tempo=0;tempo<=30;tempo++){ if(tempo==30){ output_high(alarmeaud); delay_ms(100); output_low(alarmeaud); delay_ms(15000); monitoraA(); monitoraB(); } } } } void triggerA(){ output_high(trig1); delay_us(10); output_low(trig1); } void triggerB(){ output_high(trig2); delay_us(10); output_low(trig2); } void funcaovisual(){ output_high(alarmevis); if(!input(S1)||!input(S2)){ output_low(alarmevis); } }
Compartilhar