ESP8266 不点亮 d5 引脚

时间:2021-04-26 04:30:37

标签: arduino arduino-esp8266

基本上我有一个读取数据的程序,如果它是 1,它会打开板载 LED(它确实在串行监视器上显示。虽然,我已经设置了它以便 d5 应该输出并且我正在使用测试它的 LED 灯不亮?我已经取出了一些代码,例如 API 密钥和我的路由器信息,所以它不存在。

    #include <DHT.h>
#include <DHT_U.h>

#include <ESP8266WiFi.h>
#include <ThingSpeak.h>

//school
const char* ssid = "";
const char* pass = "";




char* thingSpeakAddress = "api.thingspeak.com";
//This is for channel for temp
unsigned long channelID = 1029606;
unsigned int dataFieldOne = 1; 
char* apiWriteKey = 
char* apiReadKey = 


//This is for the fan stats channel
unsigned long channelID2 = 1371231;
unsigned int dataFieldOne2 = 1; 
char* apiWriteKey2 = 
char* apiReadKey2 = 
int x = 1;

//dht stuff
#define DHTPIN 0
DHT dht(DHTPIN, DHT11);

WiFiClient client;

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);     // Initialize the LED_BUILTIN pin as an output
  pinMode(14, OUTPUT);
  
  Serial.begin(115200);
  delay(10);
  dht.begin();
  delay(500);
  Serial.print("Connecting to..");
  Serial.println(ssid);
  delay(500);

  WiFi.disconnect();
  WiFi.begin(ssid, pass);

  while(WiFi.status()!= WL_CONNECTED){
    delay(500);
    Serial.println(".");

  
  }

  
  Serial.print("SSID......");
  Serial.println(WiFi.SSID());
  Serial.println("NodeMCU successfully connected to WiFi...");

  Serial.print("IP Address allocated to NodeMCU ESP8266... ");
  Serial.println(WiFi.localIP());

  Serial.print("MAC Address of ESP8266... ");
  Serial.println(WiFi.macAddress());
  WiFi.printDiag(Serial);
  ThingSpeak.begin( client );
}  

void loop() {
  // put your main code here, to run repeatedly:
  
    
      

  float t = dht.readTemperature();

  if (isnan(t))
  {
    Serial.println("failed to read from dht sensor!");
    return;
  }

  writeTSData(1029606,1,t);
  
 //writeTSData(channelID, dataFieldOne, x );
 
    if (readTSData(channelID2, dataFieldOne2)==1){
      digitalWrite(LED_BUILTIN, LOW);   // Turn the LED on (Note that LOW is the voltage level
      digitalWrite(14,LOW);
      Serial.print("ON");
    }
    else{

      digitalWrite(LED_BUILTIN, HIGH);   // Turn the LED on (Note that LOW is the voltage level
      digitalWrite(14,HIGH);
      Serial.print("OFF");
      
    }
  delay(5000);
}




// Use this function if you want to write a single field
int writeTSData( long TSChannel, unsigned int TSField, int data ){
  int  writeSuccess = ThingSpeak.writeField( TSChannel, TSField, data, apiWriteKey ); // Write the data to the channel
  if ( writeSuccess ){
    
    Serial.println( String(data) + " written to Thingspeak." );
    }
    
    return writeSuccess;
}

float readTSData( long TSChannel2,unsigned int TSField2 ){
    
  float data =  ThingSpeak.readFloatField( TSChannel2, TSField2, apiWriteKey2 );
  Serial.println( " Data read from ThingSpeak: " + String( data, 9 ) );
  return data;
  
}

0 个答案:

没有答案
相关问题