关于手残,搞废我的OLED屏幕的 追悼会
2017-12-1913:36:41
昨天按照B站的资料利用esp12F做了一个天气站,可预报天气,惭愧的是模型做好了,照片还没拍就夭折了,可怜了我20块的屏幕,我心伤悲,莫知我哀呀!
本来调试已经成功,运行还是很完美的,哎,手残。
碎了一个角,我的心也跟着碎了。
代码备份一下:
//http://flash.weather.com.cn/wmaps/xml/nanjing.xml
//http://flash.weather.com.cn/wmaps/xml/zhengzhou.xml
//http://www.pm25.in/api/querys/pm2_5.json?city=nanjing&token=5j1znBVAsnSf5xQyNQyq
//http://www.pm25.in/api/querys/pm2_5.json?city=zhengzhou&token=郑州
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <Adafruit_ssd1306syp.h>
#define SDA_PIN 4
#define SCL_PIN 2
char ssid[] = "maker_space"; // WiFi名 SSID (name)
char pass[] = "chuangke666"; // WiFi密码
/*---------------------------------------------------------------*/
const byte sunny[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x20,0x00,0x00,
0x00,0x00,0x1C,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x1E,0x00,0x00,0xF0,0x00,0x00,
0x00,0x00,0x1E,0x00,0x01,0xF0,0x00,0x00,0x00,0x00,0x1F,0x03,0x01,0xE0,0x00,0x00,
0x00,0x00,0x0F,0x03,0x01,0xE0,0x00,0x00,0x00,0x00,0x0F,0x03,0x83,0xE0,0x00,0x00,
0x00,0x00,0x0F,0x83,0x83,0xC0,0x00,0x00,0x00,0x00,0x07,0x83,0x87,0xC0,0x00,0x00,
0x00,0x00,0x07,0xC0,0x07,0x80,0x00,0x00,0x00,0x00,0x03,0x80,0x03,0x80,0x00,0x00,
0x00,0x03,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0x80,0x00,0x00,0x07,0x80,0x00,
0x00,0x03,0xC0,0x1F,0xE0,0x0F,0x00,0x00,0x00,0x01,0xC0,0x7F,0xFC,0x0E,0x00,0x00,
0x00,0x00,0x81,0xF8,0xFF,0x00,0x00,0x40,0x0F,0x00,0x03,0xC0,0x3F,0x80,0x03,0xE0,
0x1F,0xC0,0x07,0x00,0x1F,0xC0,0x0F,0xE0,0x0F,0xF0,0x0E,0x0F,0xFF,0xE0,0x3F,0xE0,
0x07,0xFC,0x1C,0x3F,0xFF,0xF0,0xFF,0xC0,0x01,0xFC,0x38,0x7F,0xFF,0xF8,0x7E,0x00,
0x00,0x7C,0x31,0xFF,0xFF,0xF8,0x78,0x00,0x00,0x08,0x71,0xFF,0xFF,0xFC,0x00,0x00,
0x00,0x00,0x63,0xFF,0xFF,0xFC,0x00,0x00,0x00,0x00,0x63,0xFF,0xFF,0xFC,0x00,0x00,
0x00,0x00,0xE3,0xFF,0xFF,0xFE,0x00,0x00,0x00,0x00,0xE7,0xFF,0xFF,0xFE,0x1C,0x00,
0x00,0xF0,0xE7,0xFF,0xFF,0xFE,0x1F,0x00,0x01,0xF0,0xE7,0xFF,0xFF,0xFE,0x3F,0x00,
0x01,0xF0,0xE3,0xFF,0xFF,0xFE,0x00,0x00,0x00,0x00,0xE3,0xFF,0xFF,0xFE,0x00,0x00,
0x00,0x00,0xE3,0xFF,0xFF,0xFE,0x00,0x00,0x00,0x00,0x73,0xFF,0xFF,0xFC,0x00,0x00,
0x00,0x00,0x7F,0xFF,0xFF,0xFC,0x00,0x00,0x00,0x08,0x7F,0xFF,0xFF,0xFC,0x30,0x00,
0x00,0x3C,0x3F,0xFF,0xFF,0xF8,0x7C,0x00,0x01,0xFC,0x3F,0xFF,0xFF,0xF0,0x7F,0x80,
0x07,0xFE,0x1F,0xFF,0xFF,0xF0,0x7F,0xE0,0x0F,0xF8,0x0F,0xFF,0xFF,0xE0,0x1F,0xF0,
0x0F,0xC0,0x07,0xFF,0xFF,0xC0,0x03,0xE0,0x0F,0x00,0x03,0xFF,0xFF,0x80,0x00,0xE0,
0x00,0x00,0x40,0xFF,0xFE,0x06,0x00,0x00,0x00,0x00,0xE0,0x3F,0xF8,0x07,0x00,0x00,
0x00,0x01,0xE0,0x07,0xC0,0x07,0x80,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0x80,0x00,
0x00,0x03,0x80,0x00,0x00,0x81,0x80,0x00,0x00,0x00,0x03,0xC0,0x07,0xC0,0x00,0x00,
0x00,0x00,0x03,0xC1,0x87,0xC0,0x00,0x00,0x00,0x00,0x07,0xC3,0x83,0xC0,0x00,0x00,
0x00,0x00,0x07,0x83,0x83,0xE0,0x00,0x00,0x00,0x00,0x0F,0x83,0x81,0xE0,0x00,0x00,
0x00,0x00,0x0F,0x03,0x81,0xF0,0x00,0x00,0x00,0x00,0x1F,0x01,0x81,0xF0,0x00,0x00,
0x00,0x00,0x1E,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x1E,0x00,0x00,0xF0,0x00,0x00,
0x00,0x00,0x1E,0x00,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const byte cloudy[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x1E,0x30,0xE0,0x00,0x00,0x00,0x00,0x00,0x0E,0x30,0xE0,0x00,0x00,0x00,0x00,0x00,0x06,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x3F,0xE0,0x00,0x00,0x0E,0x00,0x00,0x00,0xFF,0xFC,0x01,0xFF,0x0C,0x00,0x00,0x03,0xFF,0xFE,0x07,0x87,0xC0,0x04,0x00,0x07,0xC0,0x1F,0x84,0x03,0xE0,0x7E,0x00,0x0F,0x80,0x07,0x80,0xFF,0xF1,0xFE,0x00,0x1E,0x00,0x01,0xE0,0xFF,0xF8,0xE0,0x00,0x1C,0x00,0x01,0xE0,0x3F,0xF8,0x80,0x00,0x3C,0x00,0x03,0xFC,0x0F,0xFC,0x00,0x00,0x38,0x00,0x07,0xFE,0x0F,0xFC,0x00,0x00,0x30,0x00,0x1F,0xFF,0x07,0xFC,0x00,0x00,0x70,0x00,0x3E,0x07,0xC3,0xFC,0xF0,0x00,0x70,0x00,0x7C,0x03,0xC3,0xFC,0xF0,0x03,0xFE,0x00,0x78,0x01,0xF1,0xFC,0x00,0x07,0xFF,0x00,0x30,0x00,0xF1,0xFC,0x00,0x0F,0x87,0x00,0x00,0x00,0x70,0xF8,0x80,0x1E,0x00,0x00,0x00,0x00,0x70,0xF8,0xE0,0x1E,0x00,0x00,0x00,0x00,0x30,0xF1,0xF8,0x1C,0x00,0x00,0x00,0x00,0x30,0xF0,0xFE,0x18,0x00,0x00,0x00,0x00,0x30,0xC0,0x1E,0x18,0x00,0x00,0x00,0x00,0x70,0xC4,0x00,0x1C,0x00,0x00,0x00,0x00,0x70,0x0E,0x00,0x1C,0x00,0x00,0x00,0x00,0xF0,0x07,0x00,0x1E,0x03,0x80,0x00,0x01,0xE0,0xC0,0x00,0x1F,0x03,0xC0,0x08,0x03,0xC0,0xC0,0x00,0x0F,0x8F,0xE0,0x1E,0x07,0xC0,0xE0,0x00,0x07,0xFF,0xFF,0xFF,0xFF,0x80,0xE0,0x00,0x03,0xFE,0xFF,0xFF,0xFE,0x00,0x70,0x00,0x00,0x00,0x0F,0xE1,0xF8,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const byte cloudy2[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0x00,0x00,0x00,0x00,0x00,0x03,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x0F,0xFF,0xFF,0x80,0x00,0x00,0x00,0x00,0x1F,0xFF,0xFF,0xE0,0x00,0x00,0x00,0x00,0x7F,0xE0,0x3F,0xF0,0x00,0x00,0x00,0x00,0xFF,0x00,0x07,0xF8,0x00,0x00,0x00,0x01,0xFC,0x00,0x01,0xFC,0x00,0x00,0x00,0x03,0xF8,0x00,0x00,0x7E,0x00,0x00,0x00,0x03,0xE0,0x00,0x00,0x3F,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x00,0x00,0x00,0x0F,0x80,0x00,0x00,0x1F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x7F,0xF8,0x00,0x00,0x1F,0x00,0x00,0x01,0xFF,0xFE,0x00,0x00,0x1F,0x00,0x00,0x03,0xFF,0xFF,0x00,0x00,0x1E,0x00,0x00,0x07,0xFF,0xFF,0x80,0x00,0x1E,0x00,0x00,0x1F,0xE0,0x1F,0xE0,0x00,0x3E,0x00,0x00,0x1F,0x80,0x07,0xE0,0x00,0x7F,0x80,0x00,0x3F,0x00,0x03,0xF0,0x01,0xFF,0xE0,0x00,0x3E,0x00,0x01,0xF0,0x07,0xFF,0xF0,0x00,0x1C,0x00,0x00,0xF8,0x0F,0xFF,0xF0,0x00,0x00,0x00,0x00,0x78,0x1F,0xC0,0xF0,0x00,0x00,0x00,0x00,0x7C,0x1F,0x80,0x60,0x00,0x00,0x00,0x00,0x7C,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x3E,0x00,0x1C,0x00,0x00,0x00,0x01,0xF0,0x3F,0x00,0x7E,0x00,0x03,0x00,0x03,0xF0,0x1F,0xC0,0xFF,0x80,0x07,0xC0,0x0F,0xE0,0x0F,0xFF,0xFF,0xF0,0x7F,0xF8,0x7F,0xC0,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0x03,0xFF,0xE7,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0xFF,0xC1,0xFF,0xFC,0xFF,0xFC,0x00,0x00,0x0C,0x00,0x7F,0xF0,0x3F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const byte rain[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x3F,0x80,0x00,0x00,0x00,0x00,0x01,0xFC,0x3F,0x80,0x00,0x00,0x00,0x00,0x03,0xF8,0x1F,0xC0,0x00,0x00,0x00,0x00,0x03,0xF8,0x0F,0xC0,0x00,0x00,0x00,0x00,0x07,0xF0,0x0F,0xE0,0x00,0x00,0x00,0x00,0x07,0xF0,0x07,0xF0,0x00,0x00,0x00,0x00,0x0F,0xE0,0x07,0xF0,0x00,0x00,0x00,0x00,0x0F,0xE0,0x03,0xF0,0x00,0x00,0x00,0x00,0x1F,0xC0,0x03,0xF8,0x00,0x00,0x00,0x00,0x1F,0x80,0x01,0xFC,0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFC,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0xFC,0x00,0x00,0x3F,0x00,0x00,0x00,0x01,0xFC,0x00,0x00,0x3F,0x80,0x00,0x00,0x01,0xF8,0x00,0x00,0x1F,0x80,0x00,0x00,0x01,0xF8,0x00,0x00,0x1F,0x80,0x00,0x00,0x01,0xF8,0x00,0x00,0x1F,0xC0,0x00,0x00,0x01,0xF8,0x00,0x00,0x0F,0xC0,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x01,0xF8,0x00,0x00,0x0F,0xC0,0x00,0x00,0x01,0xF8,0x00,0x00,0x1F,0xC0,0x00,0x00,0x01,0xF8,0x00,0x00,0x1F,0x80,0x00,0x00,0x01,0xFC,0x00,0x00,0x3F,0x80,0x00,0x00,0x00,0xFE,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x7F,0x80,0x00,0xFF,0x00,0x00,0x00,0x00,0x7F,0xC0,0x03,0xFE,0x00,0x00,0x00,0x00,0x3F,0xF0,0x0F,0xFC,0x00,0x00,0x00,0x00,0x1F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x00,0x0F,0xFF,0xFF,0xF0,0x00,0x00,0x00,0x00,0x07,0xFF,0xFF,0xE0,0x00,0x00,0x00,0x00,0x01,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
/*---------------------------------------------------------------------*/ const byte tp1[] = {
0x00,0x40,0x40,0x40,0x27,0xFC,0x20,0x40,0x03,0xF8,0x00,0x40,0xE7,0xFE,0x20,0x00,
0x23,0xF8,0x22,0x08,0x23,0xF8,0x22,0x08,0x2B,0xF8,0x32,0x08,0x22,0x28,0x02,0x10
};
const byte tp2[] = { 0x08,0x20,0x1D,0x24,0xF0,0xA4,0x10,0xA8,0x10,0x20,0xFD,0xFC,0x11,0x04,0x31,0x04,
0x39,0xFC,0x55,0x04,0x55,0x04,0x91,0xFC,0x11,0x04,0x11,0x04,0x11,0x14,0x11,0x08
};
const byte tp3[] = {
0x00,0x10,0x00,0xF8,0x1F,0x00,0x10,0x00,0x10,0x00,0x1F,0xFE,0x10,0x00,0x10,0x00,
0x10,0x00,0x17,0xF8,0x14,0x08,0x24,0x08,0x24,0x08,0x44,0x08,0x87,0xF8,0x04,0x08
};
const byte tp4[] = {
0x00,0x00,0x7F,0xFC,0x40,0x04,0x40,0x04,0x42,0x14,0x52,0x94,0x4A,0x54,0x44,0x24,
0x44,0x24,0x4A,0x54,0x4A,0x54,0x52,0x94,0x61,0x04,0x40,0x04,0x40,0x14,0x40,0x08,
};
const byte tp5[] = {
0x10,0x80,0x10,0x80,0x20,0xF8,0x21,0x08,0x4B,0x10,0xFC,0xA0,0x10,0x40,0x20,0xA0,
0x41,0x18,0xFA,0x06,0x45,0xF8,0x01,0x08,0x19,0x08,0xE1,0x08,0x41,0xF8,0x01,0x08,
};
const byte tp6[] = {
0x08,0x40,0x08,0x20,0x0B,0xFE,0x10,0x00,0x10,0x00,0x31,0xFC,0x30,0x00,0x50,0x00,
0x91,0xFC,0x10,0x00,0x10,0x00,0x11,0xFC,0x11,0x04,0x11,0x04,0x11,0xFC,0x11,0x04,
};
const byte tp7[] = {
0x01,0x00,0x02,0x00,0x1F,0xF0,0x10,0x10,0x1F,0xF0,0x10,0x10,0x1F,0xF0,0x10,0x10,
0x1F,0xF0,0x10,0x10,0x01,0x00,0x08,0x84,0x48,0x92,0x48,0x12,0x87,0xF0,0x00,0x00,
};
const byte ssd[] = {0x00,0xB0,0x48,0x40,0x40,0x48,0x30,0x00};
Adafruit_ssd1306syp display(SDA_PIN,SCL_PIN);
String payload = ""; //获取数据储存变量
String payload1 = "";
String webadd = "http://flash.weather.com.cn/wmaps/xml/zhengzhou.xml"; //接口地址
String pmadd = "http://www.pm25.in/api/querys/pm2_5.json?city=zhengzhou&token=郑州";
int time1 = ; //WIFI等待时间(500ms)
int sta,sta2;
String com,tem1,tem2,humi,temnow,state1,state2,pm,pm2;
String sun[] = {"Sunny","Cloudy","Overcast"," "," "," "," ","Rain"," "," ","Snow"};
void setup()
{
delay();
display.initialize();
WiFi.begin(ssid, pass);
init1();
}
void loop(){
http();
data();
inof1();
inof2();
show();
}
/********************************************开机自启*********************************************/
void init1(){ //启动wifi连接
display.drawBitmap(, , tp1, , , WHITE);
display.drawBitmap(, , tp2, , , WHITE);
display.drawBitmap(, , tp3, , , WHITE);
display.setCursor(,);
display.setTextSize();
display.setTextColor(WHITE);
display.print("Connect to ");
display.println(ssid);
display.setCursor(,);
display.setTextSize();
display.setTextColor(WHITE);
display.println("Power by Wen Zheng");
display.update();
display.setCursor(,);
display.setTextSize();
display.setTextColor(WHITE);
while (WiFi.status() != WL_CONNECTED) {
delay();
// Serial.print(".");
display.print(".");
display.update();
time1++;
while(time1>)
{
display.clear();
display.setCursor(,);
display.setTextSize();
display.setTextColor(WHITE);
// Serial.println("Error:Unable to connect to WIFI");
display.println("Error:");
display.setCursor(,);
display.setTextSize();
display.setTextColor(WHITE);
display.println("Unable to connect to WIFI");
display.update();
delay();
}
}
display.clear();
display.drawBitmap(, , tp4, , , WHITE);
display.drawBitmap(, , tp5, , , WHITE);
display.drawBitmap(, , tp6, , , WHITE);
display.drawBitmap(, , tp7, , , WHITE);
display.setCursor(,);
display.print("SSID:");
display.println(ssid);
display.print("IP: ");
display.println(WiFi.localIP());
// Serial.println("IP address: ");
// Serial.println(WiFi.localIP()); //display.print("WEB: ");
//display.println(webadd);
display.update();
delay();
display.clear();
}
/*****************************************http数据获取*******************************************/
void http(){
HTTPClient http;
http.begin(webadd);
int httpCode = http.GET();
if(httpCode > ) {
// if(httpCode == HTTP_CODE_OK) {
payload = http.getString();
int a = payload.indexOf("");
com = payload.substring(a-,a+);
// }
}
http.end();
}
/*****************************************数据处理**********************************************/
void data(){
int i=;
i=com.indexOf("tem1");
tem1=com.substring(i+,i+);
i=;
i=com.indexOf("tem2");
tem2=com.substring(i+,i+);
i=;
i=com.indexOf("umidity");
humi=com.substring(i+,i+);
i=;
i=com.indexOf("state1");
state1=com.substring(i+,i+);
i=;
i=com.indexOf("state2");
state2=com.substring(i+,i+);
i=;
i=com.indexOf("temNow");
temnow=com.substring(i+,i+);
i=;
tem1.replace('"',' ');
tem2.replace('"',' ');
humi.replace('"',' ');
temnow.replace('"',' ');
humi.replace('%',' ');
state1.replace('"',' ');
state2.replace('"',' ');
}
/*************************************OLED显示函数********************************************/
void show(){
display.drawBitmap(, , ssd, , , WHITE);
display.drawBitmap(, , ssd, , , WHITE);
display.drawBitmap(, , ssd, , , WHITE);
display.setTextSize();
display.setTextColor(WHITE);
display.setCursor(,);
display.println("%");
display.update();
display.setTextSize();
display.setTextColor(WHITE);
display.setCursor(,);
display.print("Max:");
display.println(tem1);
display.setCursor(,);
display.print("Now:");
display.println(temnow);
display.setCursor(,);
display.print("Min:");
display.println(tem2);
display.setCursor(,);
display.print("Humi");
display.println(humi);
//display.setCursor(64,48);
//display.print("PM2.5:");
//display.println(pm2);
/*
if(sta != sta2){
display.setTextSize(1);
display.setTextColor(BLACK, WHITE);
display.print("{"+sun[sta]+"}");
display.print("--");
display.println("{"+sun[sta2]+"}");
}
if(sta == sta2){
display.setTextSize(1);
display.setTextColor(BLACK, WHITE);
display.println("{"+sun[sta]+"}");
} display.update();
delay(20000);
display.clear();
*/
if(sta == ){
display.drawBitmap(, , sunny, , , WHITE);
}
else if(sta == )
{
display.drawBitmap(, , cloudy, , , WHITE);
}
else if(sta == )
{
display.drawBitmap(, , cloudy2, , , WHITE);
}
else if(sta == )
{
display.drawBitmap(, , rain, , , WHITE);
}
}
/*********************************天气判断函数****************************/
void inof1(){
if(state1==" 0 ")
{
sta=;////////////////////////////////////////////////////////////////////////////////////////////////
}
else if(state1==" 1 ")
{
sta=;
}
else if(state1==" 2 ")
{
sta=;
}
else if(state1==" 3 ")
{
sta=;
}
else if(state1==" 4 ")
{
sta=;
}
else if(state1==" 5 ")
{
sta=;
}
else if(state1==" 6 ")
{
sta=;
}
else if(state1==" 7 ")
{
sta=;
}
else if(state1==" 8 ")
{
sta=;
}
else if(state1==" 9 ")
{
sta=;
}
else if(state1==" 10 ")
{
sta=;
}
else if(state1==" 11 ")
{
sta=;
}
else if(state1==" 12 ")
{
sta=;
}
else if(state1==" 13 ")
{
sta=;
}
else if(state1==" 14 ")
{
sta=;
}
else if(state1==" 15 ")
{
sta=;
}
else if(state1==" 16 ")
{
sta=;
}
}
void inof2(){
if(state2==" 0 ")
{
sta2=;
}
else if(state2==" 1 ")
{
sta2=;
}
else if(state2==" 2 ")
{
sta2=;
}
else if(state2==" 3 ")
{
sta2=;
}
else if(state2==" 4 ")
{
sta2=;
}
else if(state2==" 5 ")
{
sta2=;
}
else if(state2==" 6 ")
{
sta2=;
}
else if(state2==" 7 ")
{
sta2=;
}
else if(state2==" 8 ")
{
sta2=;
}
else if(state2==" 9 ")
{
sta2=;
}
else if(state2==" 10 ")
{
sta2=;
}
else if(state2==" 11 ")
{
sta=;
}
else if(state2==" 12 ")
{
sta2=;
}
else if(state2==" 13 ")
{
sta2=;
}
else if(state2==" 14 ")
{
sta2=;
}
else if(state2==" 15 ")
{
sta2=;
}
else if(state2==" 16 ")
{
sta2=;
}
}
/*
void pm25(){
HTTPClient http;
http.begin(pmadd);
int httpCode = http.GET();
if(httpCode > 0) {
// if(httpCode == HTTP_CODE_OK) {
payload1 = http.getString();
pm = payload1.substring(0,35);
// }
}
http.end(); int i,i2;
i=pm.indexOf("pm2_5");
pm2=pm.substring(i+6,i+9);
pm.replace(':',' ');
pm.replace(',',' ');
Serial.println(payload1);
Serial.println(pm); }
*/

关于手残,搞废我的OLED屏幕的 追悼会的更多相关文章
- HDU 1728 逃离迷宫(DFS经典题,比赛手残写废题)
逃离迷宫 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- [NOIP2018模拟赛10.16]手残报告
[NOIP2018模拟赛10.16]手残报告 闲扯 炉石乱斗模式美滋滋啊,又颓到好晚... 上来T2先敲了树剖,看T1发现是个思博DP,然后没过大样例,写个暴力发现还是没过大样例!?才发现理解错题意了 ...
- [转帖]中关村:LED屏幕和OLED屏幕有什么区别?答案在这里
LED屏幕和OLED屏幕有什么区别?答案在这里 中关村在线 01-0810:40 目前的电视市场,更新换代的频率越来越快,无论是国产品牌还是合资品牌,都不约而同的推出了全新产品.这离不开人们对更好 ...
- OLED的波形曲线、进度条、图片显示(STM32 HAL库 模拟SPI通信 5线OLED屏幕)详细篇
少废话,先上效果图 屏幕显示效果 全家福 一.基础认识及引脚介绍 屏幕参数: 尺寸:0.96英寸 分辨率:128*64 驱动芯片:SSD1306 驱动接口协议:SPI 引脚说明: 二. ...
- OLED屏幕那些次像素有趣的排列方式
http://www.dzsc.com/data/2016-6-2/109856.html 我们今天的重点内容为倒数第二列内容的上半部分,也就是RGB排列和Pentile排列.在介绍OLED屏幕时候我 ...
- oled屏幕配套取字模软件使用
oled屏幕配套取字模软件使用 作者:李剀 出处:https://www.cnblogs.com/kevin-nancy/p/10531368.html欢迎转载,但也请保留上面这段声明.谢谢! **P ...
- oled屏幕模块
oled屏幕模块似乎是厂家提供的 也许可以根据屏幕驱动芯片去写 根据现在了解的芯片一般有两个:SH1106和SSD1306 不过这次我们用的是SSD1306芯片驱动的屏幕 下面是从裸屏到模块的pcb: ...
- I2C 连接 12864 OLED 屏幕
http://ardui.co/archives/738 我是潘,曾经是个工程师.这是为 Ardui.Co 制作的 “Arduino 公开课” 系列的入门教程.上一课介绍了I2C 协议连接1602 L ...
- 对于windows操作系统磁盘访问权限修改的手残教训
最近公司新配置的win10电脑,由于测试关于windows系统上项目的安装程序时默认使用了c盘安装,发现安装后的项目不是崩溃就是运行没结果的,偶然间发现同一个安装程序在d盘或其他非系统盘安装则正常.很 ...
随机推荐
- [代码审计]青云客Cms前台有条件注入至getshell,后台xss至getshell、至弹你一脸计算器
之前写了一篇关于青云客cms的文章,发在了t00ls,就不copy过来了. 给个链接,好记录一下. https://www.t00ls.net/thread-43093-1-1.html
- MySQL使用存储过程代替子查询
摘要: 出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读.本文版权归作者所有,欢迎转载,但请保留该 ...
- IBM的websphere MQ的c#使用(一)
接上篇的MQ配置.利用C#实现MQ消息的收发.源码 1.需要引入的dll是amqmdnet.dll 2.app.config配置 <?xml version="1.0" en ...
- Google mobile test
1. 现已更新至3.0+版本: 2. 应对版本频繁的迭代更新,进行[版本监控.持续更新.反馈,开发的单元测试] 1. 多关注金字塔的底层: 2. [集成测试, Espresso, EarlGrey] ...
- 在ASP.NET Core 2.0中使用CookieAuthentication
在ASP.NET Core中关于Security有两个容易混淆的概念一个是Authentication(认证),一个是Authorization(授权).而前者是确定用户是谁的过程,后者是围绕着他们允 ...
- C++雾中风景6:拷贝构造函数与赋值函数
在进行C++类编写的过程之中,通常会涉及到类的拷贝构造函数与类的赋值函数.初涉类编写的代码,对于两类函数的用法一直是挺让人困惑的内容.这篇文章我们会详细来梳理拷贝构造函数与赋值函数的区别. 1.调用了 ...
- deeplearning.ai 人工智能行业大师访谈 Ian Goodfellow 听课笔记
1. Ian Goodfellow之前是做神经科学研究,在斯坦福上了Andrew NG的课之后,Ian决定投身AI.在寒假他和小伙伴读了Hinton的论文,然后搭了一台用CUDA跑Boltzmann ...
- HashMap 源码详细分析(JDK1.8)
一.概述 本篇文章我们来聊聊大家日常开发中常用的一个集合类 - HashMap.HashMap 最早出现在 JDK 1.2中,底层基于散列算法实现.HashMap 允许 null 键和 null 值, ...
- Cup(二分)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2289 hdu_2289:Cup Time Limit: 3000/1000 MS (Java/Othe ...
- Win10没有以太网图标如何找回?以太网适配器不见了怎么恢复?
Win10以太网适配器不见了怎么恢复?以太网其实就是Win7系统中常说的"本地连接"假若用户发现网络适配器中的以太网适配器图标不见了,可以在设备管理器中添加一些这类适配器,具体过程 ...