renix1

Código pronto para o Arduino

May 11th, 2016
321
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.17 KB | None | 0 0
  1. const int pinoLed = 1; //Pino analógico onde está o led
  2. const int pinopot = 0;  //Pino ligado ao LDR  (SENSOR DE LUMINOSIDADE)
  3. short int valorpot = 0; //Armazena valor lido do LDR, entre 0 e 1023
  4. float luminosidade = 0; //Valor de luminosidade do led  
  5. char autor[19] = "Autor: Reni Dantas";
  6. void checagem_ground (void);
  7. void software_Reset()
  8. // Restarts program from beginning but
  9. // does not reset the peripherals and registers
  10. {
  11.   asm volatile ("  jmp 0");  
  12. }
  13. void setup()  
  14. {  
  15.   Serial.begin(9600);    //Inicializa a serial  
  16.   pinMode(pinoLed, OUTPUT); //Define o pino do led como saída  
  17.   pinMode(pinopot, INPUT);  //Define o pino do LDR como entrada
  18. }  
  19. void loop()  
  20. {
  21.   // Le o valor - analogico - do LDR  
  22.   valorpot = analogRead(pinopot);
  23.   //VERIFICAÇÃO DO ARDUINO
  24.   checagem_ground ();
  25.   // Converte o valor lido do LDR
  26.   luminosidade = map(valorpot, 0, 1023, 0, 255);
  27.   Serial.print("Valor lido do LDR : ");  
  28.   // Mostra o valor lido do LDR no monitor serial, se não souber o que é monitor serial, aperte na lupa /*YOU ARE STUPID!*/
  29.   Serial.print(valorpot);  
  30.   Serial.print(" = Luminosidade : ");  
  31.   // Mostra o valor da luminosidade no monitor serial  
  32.   Serial.println(luminosidade);
  33.   // Mostra o nome do autor do código
  34.   for (int indice = 0; indice < 19; indice++) {
  35.       Serial.print(autor[indice]);  
  36.   }Serial.println("");
  37.   // Acende o led com luminosidade variável
  38.   analogWrite(pinoLed, luminosidade); /*O LED TEM QUE ESTAR CONECTADO A UMA SAÍDA ANALÓGICA, PORQUE UMA PORTA DIGITAL SÓ RECEBE ENTRADAS DE 0 E 1, 0 SERIA DESLIGADO, 1 SERIA LIGADO e a analógica pode fazer uma alter*/
  39.   delay(500);
  40. }
  41. void checagem_ground (void)
  42. {
  43.    Serial.println("Executando testes, aguarde!");
  44.   delay(50);
  45.   if ((valorpot > 0) && (valorpot <= 999)) {
  46.      Serial.println("O codigo esta funcionando perfeitamente!");
  47.   }else if (valorpot >= 1000) {
  48.      Serial.println("O codigo nao esta funcionando como deveria...");
  49.      Serial.println("Pino ground (terra) desconectado, conecte-o novamente! Obrigado.");
  50.      delay(5000);
  51.      Serial.println("Reiniciando e refazendo checagem...");
  52.      delay(50);
  53.      software_Reset();
  54.   }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment