利用Arduino Esp8266 心知天气API 获取天气预报信息(修改后可以DIY一个小型的桌面气象台)

前期准备:

注册心知天气,获取API密钥  https://www.seniverse.com

生成API请求地址,北京今天和未来4天的预报请求地址如下:

https://api.seniverse.com/v3/weather/daily.json?key=your_API
_key&location=beijing&language=zh-Hans&unit=c&start=0&days=5

需要的库:

// Libraries
#include <ESP8266WiFi.h>
#include <ArduinoJson.h> 

ArduinoJson提供的在线助手很好用,帮助生成很多解析代码。https://arduinojson.org/v5/assistant/

程序流程如下:

程序流程

代码如下:

// Libraries
#include <ESP8266WiFi.h>
#include <ArduinoJson.h> //使用ArduinoJson库
// WiFi settings
const char* ssid     = "***";
const char* password = "***";
// API server
const char* host = "api.seniverse.com";
void setup() {
  // Serial
  Serial.begin(115200);
  delay(10);
  // We start by connecting to a WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to WIFI");
  Serial.println(ssid);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}
void loop() {

  // Connect to API
  Serial.print("connecting to XinZhi");
  Serial.println(host);
  // Use WiFiClient class to create TCP connections
  WiFiClient client;
  const int httpPort
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值