Εμφάνιση αποτελεσμάτων : 1 έως 10 από 24

Θέμα: dht11

Hybrid View

Προηγούμενο μήνυμα Προηγούμενο μήνυμα   Επόμενο Μήνυμα Επόμενο Μήνυμα
  1. #1
    Μέλος Το avatar του χρήστη klik
    Όνομα
    just a click away
    Εγγραφή
    Oct 2009
    Περιοχή
    Θεσσαλλλονίκη
    Μηνύματα
    2.567

    Προεπιλογή

    Μπορεις να αγνοησεις την ακομψη set time και να αλλαξεις τη loop ως εξής:

    Κώδικας:
    void loop() {
         sec--;
         if(sec<=0) {
             readdht11();
    
             Serial.print("humid in main is ");
             Serial.println(humid);
    
             Serial.print("temp is ");
             Serial.println(therm);
             sec=20;//ή οτι interval θελεις
          }
         delay(1000);
    }
    Με τον παραπανω κωδικα οι μεταβλητες Min και Hrs ειναι περιττές οπως και η set_time

    1 Not allowed! Not allowed!

  2. #2
    Μέλος
    Όνομα
    ΧΡΗΣΤΟΣ
    Εγγραφή
    Mar 2012
    Περιοχή
    Περιστερι
    Μηνύματα
    218

    Προεπιλογή

    Άκυρο διάβασα λάθος

    0 Not allowed! Not allowed!

  3. #3
    Μέλος Το avatar του χρήστη stinger
    Όνομα
    Σπυρος
    Εγγραφή
    Dec 2010
    Περιοχή
    ανδραβιδα
    Μηνύματα
    1.372

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από klik Εμφάνιση μηνυμάτων
    Μπορεις να αγνοησεις την ακομψη set time και να αλλαξεις τη loop ως εξής:

    Κώδικας:
    void loop() {
         sec--;
         if(sec<=0) {
             readdht11();
    
             Serial.print("humid in main is ");
             Serial.println(humid);
    
             Serial.print("temp is ");
             Serial.println(therm);
             sec=20;//ή οτι interval θελεις
          }
         delay(1000);
    }
    Με τον παραπανω κωδικα οι μεταβλητες Min και Hrs ειναι περιττές οπως και η set_time
    ευχαριστω για τις απαντησεις... οντως ετσι δουλευει σωστα η loop αλλα χρειαζομαι και τα λεπτα διοτι τα 20 sec τα ειχα βαλει σαν παραδειγμα για οικονομια χρονου

    0 Not allowed! Not allowed!

  4. #4
    Μέλος Το avatar του χρήστη stinger
    Όνομα
    Σπυρος
    Εγγραφή
    Dec 2010
    Περιοχή
    ανδραβιδα
    Μηνύματα
    1.372

    Προεπιλογή

    το καταλαβα το λαθος μου και το προσαρμοσα στον κωδικα και δουλευει τωρα
    #include "DHT.h"


    float therm;


    float humid;


    int hrs = 0;
    int Min = 0;
    int sec = 20;


    #define DHTPIN 6 // what pin we're connected to


    // Uncomment whatever type you're using!
    #define DHTTYPE DHT11 // DHT 11


    // Initialize DHT sensor for normal 16mhz Arduino
    DHT dht(DHTPIN, DHTTYPE);


    void setupdht11() {
    dht.begin();
    }


    void readdht11() {
    Serial.println("*********** DHT11 *********");
    // Reading temperature or humidity takes about 250 milliseconds!
    // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
    float h = dht.readHumidity();
    float t = dht.readTemperature();

    // Check if any reads failed and exit early (to try again).
    if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
    }


    humid=h;
    therm=t;


    Serial.print("Humin void is ");
    Serial.print(humid);
    Serial.print(" %\t");


    Serial.print("Humidity: ");
    Serial.print(h);
    Serial.print(" %\t");

    }

    void set_time(){

    sec = sec - 1;

    if (sec == -1)
    {
    sec = 59;
    Min = Min - 1;
    }
    if (Min == -1)
    {
    Min = 59;
    hrs = hrs - 1;
    }
    if (hrs == -1) hrs = 0;
    if (hrs <= 9)
    {
    Serial.print('0');
    }
    Serial.print(hrs);
    Serial.print(':');
    if (Min <= 9)
    {
    Serial.print('0');
    }
    Serial.print(Min);
    Serial.print(':');
    if (sec <= 9)
    {
    Serial.print('0');
    }
    Serial.println(sec);
    }



    void setup() {

    Serial.begin(9600); // Setting the baud rate of Serial Monitor (Arduino)
    delay(500);
    setupdht11();
    delay(500);


    }

    void loop() {

    set_time();

    if (hrs == 0 && Min == 0 && sec == 0)
    {

    readdht11();

    Serial.print("humid in main is ");
    Serial.println(humid);

    Serial.print("temp is ");
    Serial.println(therm);
    delay(500);
    hrs =0;
    Min =0;
    sec = 20;
    }
    delay(1000);
    }

    0 Not allowed! Not allowed!

Παρόμοια Θέματα

  1. Arduino DHT11, πρόβλημα μεταγλώττισης
    By demy in forum Μικροελεγκτές
    Απαντήσεις: 9
    Τελευταίο Μήνυμα: 02-06-19, 23:38

Δικαιώματα - Επιλογές

  • Δημιουργία θεμάτων: Όχι
  • Υποβολή μηνυμάτων: Όχι
  • Σύναψη αρχείων: Όχι
  • Επεξεργασία μηνυμάτων: Όχι
  •  
  • BB code: σε λειτουργία
  • Smilies: σε λειτουργία
  • [IMG]: σε λειτουργία
  • [VIDEO] code is σε λειτουργία
  • HTML: εκτός λειτουργίας