#include <M5StickCPlus.h> #include <WiFi.h> #include <HTTPClient.h> // ステータスコードの定義もここにある const char* ssid = "ics-ap"; const char* password = "jikkenics"; void setup() { M5.begin(115200); pinMode(10, OUTPUT); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { // 接続中... delay(150); Serial.print("."); } Serial.println("Connected."); delay(2000); get_weather(); // シリアルモニタに天気予報を書き出す } int led=0; void loop() { M5.update(); // 各ボタンの状態を(読み取って)更新する:ボタンを判定するときは必須。 if (M5.BtnA.wasReleased()) { get_weather(); // シリアルモニタに天気予報を書き出す } delay(150); led++; if (led%2==1){ digitalWrite(10, LOW ); // LED ON (LOW=0) } else { digitalWrite(10, HIGH ); // LED OFF (HIGH=1) } } void get_weather(){ // 天気予報API https://weather.tsukumijima.net/ から、千葉の天気を取得 const char* weatherapi_url = "http://weather.tsukumijima.net/api/forecast/city/120010"; HTTPClient http; // クライアント作成 http.begin(weatherapi_url); // HTTPでサーバに接続 int httpCode = http.GET(); // ステータスコードを取得 if (httpCode > 0) { Serial.println(httpCode); if (httpCode == HTTP_CODE_OK) { // ステータスコードが「成功」(200) なら String payload = http.getString(); Serial.println(payload); } } http.end(); Serial.println("[A]ボタンを押すと、再度取得します。"); }