Advertisement
RuiViana

Untitled

Apr 21st, 2015
376
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. #include <12F629.h>
  2.  
  3. //-----------------------------------------------------------------------------
  4. // Configurações DO uC
  5. //-----------------------------------------------------------------------------
  6.  
  7. //Proteções
  8. #FUSES NOWDT //No Watch Dog Timer
  9. #FUSES INTRC_IO //Resistor/Capacitor Osc with CLKOUT
  10. #FUSES NOCPD //No EE protection
  11. #FUSES NOPROTECT //Code not protected from reading
  12. #FUSES NOMCLR //Master Clear pin disabled
  13. #FUSES NOPUT //No Power Up Timer
  14. #FUSES BROWNOUT //Reset when brownout detected
  15. #use delay(clock=4000000)
  16.  
  17. //-----------------------------------------------------------------------------
  18. // ROTINA PRINCIPAL DO PROGRAMA
  19. //-----------------------------------------------------------------------------
  20.  
  21. void main() //inicio
  22. {
  23. INT sobe; // DECLARA VARIÁVEL "SOBE"
  24. sobe=0; // ADOTA-SE VALOR DE VARIÁVEL ==0;
  25. while(true){ //QUANDO A CONDIÇÃO FOR VERDADEIRA
  26. if(sobe==0){ //SE O VALOR DE SOBE FOR IGUAL A 0; ESTADO INICIAL
  27. if(input(pin_a0)){ // SE EU APERTAR PIN AO (BOTÃO);
  28. output_high(pin_a5); //LIGA A SAÍDA DE BUZZER
  29. delay_ms(1000); //ESPERA 1000 MILI SEGUNDOS PARA CONTINUAR
  30. output_low(pin_a5); //DESLIGA A SAÍDA DE BUZZER
  31. delay_ms(100); //ESPERA 100 MILISEGUNDOS
  32. output_high(pin_a2); //LIGA A SAÍDA DE ABERTURA
  33. }
  34.  
  35. if(input(pin_a3)){ //SE PRESSIONAR O FCA (PIN_A3);
  36. output_low(pin_a2); //DELIGA A SAÍDA DE ABERTURA
  37. sobe=1; //SETA 1 NA VARIÁVEL SOBE
  38. }
  39. }
  40. if(sobe==1) { //SE A VARIÁVEL SOBE FOR IGUAL A 1.
  41. if(input(pin_a0)){ //SE PRESSIONAR O BOTÃO DE MANOBRA
  42. output_high(pin_a5); //LIGA A SAÍDA DE BUZZER
  43. delay_ms(1000); //ESPERA 1000 MILISEGUNDOS LIGADA
  44. output_low(pin_a5); //DESLIGA A SAÍDA DE BUZZER
  45. delay_ms(100); //ESPERA 100 MILISEGUNDOS
  46. output_high(pin_a4); // LIGA A SAÍDA DE FECHAMENTO
  47. }
  48.  
  49. if(input(pin_a1)){ //SE PRESSIONAR O FCF (PIN_A1);
  50. output_low(pin_a4); //DESLIGA A SAÍDA DE FECHAMENTO
  51. Sobe=0; //SETA "0" NA VARIÁVEL
  52. }
  53.  
  54. }
  55. }
  56.  
  57. } // FIM DA ROTINA
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement