Guest User

DB18B20 código

a guest
Jul 1st, 2021
76
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <OneWire.h>
  2. #include <DallasTemperature.h>
  3. #include <WiFi.h>
  4. const int oneWireBus = 15;
  5. OneWire oneWire(oneWireBus);
  6. DallasTemperature sensors(&oneWire);
  7.  
  8. void setup() {
  9.   Serial.begin(115200);
  10.   while (!Serial);
  11.   Serial.println("ESP INICIANDO");
  12.   xTaskCreatePinnedToCore( taskConn, "taskConn",  10000,  NULL,  2,  NULL,  1);
  13.   delay(500);
  14.   xTaskCreatePinnedToCore( taskDim, "taskDim", 10000, NULL, 1, NULL, 0);
  15.   delay(500);
  16. }
  17.  
  18. void loop() {
  19.   vTaskDelete(NULL);
  20. }
  21.  
  22. void taskDim( void * pvParameters ) {
  23.   while (true) {
  24.     sensors.requestTemperatures();
  25.     delay(800);
  26.     float t = 0.0;
  27.     t = sensors.getTempCByIndex(0);
  28.  
  29.     while (t < - 100 || t > 84) {
  30.       Serial.print("Erro sensor, temp lida: ");
  31.       Serial.println(t);
  32.       sensors.requestTemperatures();
  33.       delay(1000);
  34.       t = sensors.getTempCByIndex(0);
  35.     }
  36.     Serial.println(t);
  37.     if (t > 30.0) {
  38.       //se a temperatura for tal então faça tal
  39.     }
  40.     delay(1);
  41.   }
  42. }
  43.  
  44.  
  45. void taskConn( void * pvParameters ) {
  46.   while (true) {
  47.     WiFi.mode(WIFI_MODE_STA);
  48.     delay(1000);
  49.  
  50.     //se eu colocar o while(true){} aqui e "travar" o codigo antes da wifi iniciar nao obtenho erros nas leituras...
  51.  
  52.     WiFi.begin("GIGA_ASSISTENCIA", "giga2020a");
  53.  
  54.     //se eu travar o codigo aqui o esp ja vai conectar na wifi e ai quase nunca consigo ler as temperaturas.
  55.     while (true) {
  56.       delay(1);
  57.     }
  58.     //resto do codigo responsável por ler banco de dados
  59.     delay(1);
  60.   }
  61. }
  62.  
RAW Paste Data