Код: Выделить всё
epd_bitmap_wifi_1_ArrayМои файлы:
mwts.ino (расположенные в корневом направлении проектов)
mwts.ino (расположены в корневом направлении проектов)
Код: Выделить всё
#include
#include
#include
#include
#include
#include "time.h"
#include "bitmaps.h"
#include "animations.cpp"
DHT dht22(5, DHT22); //temp and humidity sensor mount
float TEMP = 0;
float HUMIDITY = 0;
#define touchPin 12 //GPIO 12
const char* ssid = "123";
const char* password = "123";
const char* ntpServer = "pool.ntp.org";
const long gmtOffset_sec = 3600;
const int daylightOffset_sec = 3600;
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
#ifndef _DISPLAY_
#define _DISPLAY_
extern Adafruit_SSD1306;
#endif // _DISPLAY_
void debug(float TEMP, float HUMIDITY) {
if (touchRead(touchPin) < 20) {
//display TEMP and HUMIDITY in serial monitor
}
delay(1000);
}
void printLocalTime() {
struct tm timeinfo;
if (!getLocalTime(&timeinfo)) {
Serial.println("Failed to obtain time");
return;
}
Serial.println(&timeinfo, "%A, %B %d %Y %H:%M:%S");
Serial.print("Day of week: ");
Serial.println(&timeinfo, "%A");
Serial.print("Month: ");
Serial.println(&timeinfo, "%B");
Serial.print("Day of Month: ");
Serial.println(&timeinfo, "%d");
Serial.print("Year: ");
Serial.println(&timeinfo, "%Y");
Serial.print("Hour: ");
Serial.println(&timeinfo, "%H");
Serial.print("Hour (12 hour format): ");
Serial.println(&timeinfo, "%I");
Serial.print("Minute: ");
Serial.println(&timeinfo, "%M");
Serial.print("Second: ");
Serial.println(&timeinfo, "%S");
Serial.println("Time variables");
char timeHour[3];
strftime(timeHour, 3, "%H", &timeinfo);
Serial.println(timeHour);
char timeWeekDay[10];
strftime(timeWeekDay, 10, "%A", &timeinfo);
Serial.println(timeWeekDay);
Serial.println();
}
void wifi_connect_get_time() {
wifiGif(); //play animation
// Connect to Wi-Fi
//get time
//disconnect WiFi
}
void setup() {
Serial.begin(115200);
dht22.begin();
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3D for 128x64
Serial.println(F("SSD1306 allocation failed"));
for (;;)
;
}
delay(2000);
display.clearDisplay();
display.drawBitmap(0, 0, epd_bitmap_rpnzl_128x64_bitmap, 128, 64, 1); //startup logo
display.display();
delay(2000);
wifi_connect_get_time();
}
void loop() {
TEMP = dht22.readTemperature();
HUMIDITY = dht22.readHumidity();
debug(TEMP, HUMIDITY);
}
Код: Выделить всё
#ifndef _ANIMATIONS_CPP_
#define _ANIMATIONS_CPP_
#include
#include
#include
#include "bitmaps.h"
int frameWifi = 0;
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#ifndef _DISPLAY_
#define _DISPLAY_
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
#endif
void wifiGif() {
display.clearDisplay();
display.setCursor(0, 0);
display.drawBitmap(32, 4, epd_bitmap_wifi_1_Array[frameWifi], 64, 32, 1);
display.display();
frameWifi = (frameWifi + 1) % 7;
delay(500);
}
#endif
Код: Выделить всё
#ifndef _BITMAPS_H_
#define _BITMAPS_H_
// 'rpnzl_128x64_bitmap', 128x64px
const unsigned char epd_bitmap_rpnzl_128x64_bitmap[] PROGMEM = {
//bitmap
};
// Array of all bitmaps for convenience. (Total bytes used to store images in PROGMEM = 1040)
const int epd_bitmap_rpnzl_128x64_Array_LEN = 1;
const unsigned char* epd_bitmap_rpnzl_128x64_Array[1] = {
epd_bitmap_rpnzl_128x64_bitmap
};
// 'wifi_1_bitmap', 64x32px
const unsigned char epd_bitmap_wifi_1_bitmap[] PROGMEM = {
//bitmap
};
// 'wifi_2_bitmap', 64x32px
const unsigned char epd_bitmap_wifi_2_bitmap[] PROGMEM = {
//bitmap
};
// 'wifi_3_bitmap', 64x32px
const unsigned char epd_bitmap_wifi_3_bitmap[] PROGMEM = {
//bitmap
};
// 'wifi_4_bitmap', 64x32px
const unsigned char epd_bitmap_wifi_4_bitmap[] PROGMEM = {
//bitmap
};
// Array of all bitmaps for convenience. (Total bytes used to store images in PROGMEM = 1088)
const int epd_bitmap_wifi_1_Array_LEN = 7;
const unsigned char* epd_bitmap_wifi_1_Array[7] = {
epd_bitmap_wifi_1_bitmap,
epd_bitmap_wifi_2_bitmap,
epd_bitmap_wifi_3_bitmap,
epd_bitmap_wifi_4_bitmap,
epd_bitmap_wifi_3_bitmap,
epd_bitmap_wifi_2_bitmap,
epd_bitmap_wifi_1_bitmap
};
#endif
Подробнее здесь: https://stackoverflow.com/questions/796 ... into-files