that_one_nigga_you_k

notone

Nov 22nd, 2018
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.59 KB | None | 0 0
  1. #include <LiquidCrystal.h>
  2.  
  3.  
  4. #define trigger 35
  5. #define eCHo 33
  6. #define buzzer 31
  7.  
  8. long distancia;
  9. int led[6] = {53, 51, 49, 47, 45, 43};
  10. int freq = 2573;  /* essas frequencias são notas musicais específicas / these frequences are in musical notes*/
  11. int dlay[6] = {100, 150, 200, 250, 300, 350};
  12.  
  13. LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
  14.  
  15. void setup() {
  16.   Serial.begin(9600);
  17.   lcd.begin(16, 2);
  18.  
  19.   for(int i = 0; i < 6; i++){
  20.     pinMode(led[i], OUTPUT);
  21.   }
  22.  
  23.   pinMode(eCHo, INPUT);
  24.   pinMode(trigger, OUTPUT);
  25.   digitalWrite(trigger, LOW);
  26.   digitalWrite(eCHo, LOW);
  27. }
  28.  
  29. void loop() {
  30.   delay(100);
  31.   lcd.clear();
  32.   lcd.print("Distancia: ");
  33.   lcd.setCursor(0, 1);
  34.   lcd.print(distanciar());
  35.   lcd.print(" cm");
  36.   if(distanciar() > 0 && distanciar() <= 10){
  37.     ativarLeds(6, 0);
  38.   }
  39.   else if(distanciar() > 10 && distanciar() <= 20){
  40.     ativarLeds(5, 1);
  41.   }
  42.   else if(distanciar() > 20 && distanciar() <= 30){
  43.     ativarLeds(4, 2);
  44.   }
  45.   else if(distanciar() > 30 && distanciar() <= 40){
  46.     ativarLeds(3, 3);
  47.   }
  48.   else if(distanciar() > 40 && distanciar() <= 50){
  49.     ativarLeds(2, 4);
  50.   }
  51.   else{
  52.     ativarLeds(1, 5);
  53.   }
  54. }
  55.  
  56. int distanciar(){
  57.   digitalWrite(trigger, HIGH);
  58.   delayMicroseconds(10);
  59.   digitalWrite(trigger, LOW);
  60.   distancia = pulseIn(eCHo, HIGH) * 0.0170145;
  61.   return distancia;
  62. }
  63.  
  64. void ativarLeds(int qntdLeds, int f){
  65.   for(int i = 0; i < qntdLeds; i++){
  66.     digitalWrite(led[i], HIGH);  
  67.   }
  68.   for(int i = 5; i > qntdLeds - 1; i--){
  69.     digitalWrite(led[i], LOW);
  70.   }
  71.   noTone(buzzer);
  72.   delay(dlay[f]);
  73.   tone(buzzer, freq);
  74. }
Add Comment
Please, Sign In to add comment