/////////////////////////////////////////////// // Programme test pour capteur HC-SR05 // // Go Tronic 2017 // /////////////////////////////////////////////// #define trigPin 32 #define echoPin 33 long duration; long distance; ////////////// TFT SCREEN ////////// #include #include #include #include #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels // Declaration for an SSD1306 display connected to I2C (SDA, SCL pins) #define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); ///////////////////////////// void setup() { Serial.begin (115200); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); ///////////// TFT DISPLAY ///////////// // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("SSD1306 allocation failed")); for (;;); // Don't proceed, loop forever } // Show initial display buffer contents on the screen -- // the library initializes this with an Adafruit splash screen. display.display(); delay(1000); // Pause for 1 second // Clear the buffer display.clearDisplay(); //////////////////////////////// } void loop() { // Envoie de l'onde digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); // Réception de l'écho duration = pulseIn(echoPin, HIGH); // Calcul de la distance distance = (duration/2) / 29.1; if (distance >= 400 || distance <= 0){ Serial.println("Hors plage"); } else { Serial.print("distance = "); Serial.print(distance); Serial.println(" cm"); } delay(25); // délai entre deux mesures // Display values on the screen display.clearDisplay(); display.setTextSize(1); // Normal 1:1 pixel scale display.setTextColor(WHITE); // Draw white text display.setCursor(5, 0); display.print(("bonjour sonar"));// Start at top-left corner display.setCursor(5, 16); display.setTextSize(2); // Draw 2X-scale text display.setTextColor(WHITE); //display.invertDisplay(true); display.println(F("Senseur")); display.setCursor(5, 40); display.println(distance); display.display(); delay(10); } // Fin du loop