Baixe o app para aproveitar ainda mais
Prévia do material em texto
#include<16f628a.h> #fuses intrc_io,nomclr #use delay(clock=4000000) #use fast_io(a) #use fast_io(b) void main(void){ set_tris_a(0b00000011); set_tris_b(0b00000000); output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); while(true){ //while principal while(true){ //while secundario // TESTA SE TEM CARRO NA RUA A if(input (pin_a0)){ //se A0 é igual a 1 // TESTA SE NAO TEM CARRO NA RUA B if(!input(pin_a1)){ //se A1 e igual 0 while(true){ //while ternario output_low(pin_b0); output_low(pin_b1); output_high(pin_b2); output_low(pin_b3); output_high(pin_b4); output_low(pin_b5); delay_ms(3000); output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); delay_ms(500); break; } //para e sai do while ternario // TESTA SE AINDA TEM CARRO NA RUA A if(input (pin_a0)){ //se A0 ainda e 1 output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); break; } } //para e sai do while secundario } // testa se tem carro na rua B while(true){ //while secundario if(input(pin_a1)){ //se A1 e igual a 1 if(!input(pin_a0)){ //se A0 e igual a 0 while(true){ //while ternario output_low(pin_b0); output_high(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); delay_ms(3000); output_low(pin_b0); output_low(pin_b1); output_high(pin_b2); output_high(pin_b3); output_low(pin_b4); output_low(pin_b5); delay_ms(500); break; //fim do while ternário } // testa se ainda tem carro na B if(input(pin_a1)){ //se A1 ainda e 1 output_low(pin_b0); output_low(pin_b1); output_high(pin_b2); output_high(pin_b3); output_low(pin_b4); output_low(pin_b5); break; //para while secundario } } } } //testa se tem na b e se tem na A while(true){ // while secundario if(input(pin_a1)){ //se A1 e igual a 1 if(input(pin_a1)==input(pin_a0)){ //se A1 é igual a A0 while(true){ //while ternario output_low(pin_b0); output_low(pin_b1); output_high(pin_b2); output_low(pin_b3); output_high(pin_b4); output_low(pin_b5); delay_ms(3000); output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); delay_ms(500); break; } //fim do while ternario //testa se ainda tem carro em A if(input(pin_a1)==input(pin_a0)){ //se A1 ainda e igual A0 output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); break; } } } if(!input(pin_a0)){ if(!input(pin_a1)){ output_low(pin_b0); output_low(pin_b1); output_high(pin_b2); output_low(pin_b3); output_high(pin_b4); output_low(pin_b5); delay_ms(3000); output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); delay_ms(1000); break; } if(input(pin_a0)){ output_high(pin_b0); output_low(pin_b1); output_low(pin_b2); output_low(pin_b3); output_low(pin_b4); output_high(pin_b5); break; } } } } } }
Compartilhar