//прога для вывода изображения(картинка вместе с температурой и влажностью за один проход без окон 
//(картинк BMP отражена зеркально и повернута на +90 град  e-paper GxEPD2_154_)
//arduino 1.8.19 термометр коридор балкон atmega pro promini 3,3v 8MHz
#include <SPI.h>
#include <nrf24l01p.h>
#include <avr/sleep.h>
#include <Wire.h>


#define ENABLE_GxEPD2_GFX 0
#include <GxEPD2_BW.h>
#include <GxEPD2_3C.h>
#include <GxEPD2_7C.h>
#include <Fonts/FreeMonoBold9pt7b.h>
#include <U8g2_for_Adafruit_GFX.h>
//E:\ARDUINO\Sketch\arduino-1.8.2\libraries\GxEPD2\src\bitmaps
//E:\ARDUINO\proekt\e-paper

#define MAX_DISPLAY_BUFFER_SIZE 800 // 
#define MAX_HEIGHT(EPD) (EPD::HEIGHT <= MAX_DISPLAY_BUFFER_SIZE / (EPD::WIDTH / 8) ? EPD::HEIGHT : MAX_DISPLAY_BUFFER_SIZE / (EPD::WIDTH / 8))
GxEPD2_BW<GxEPD2_154_D67, MAX_HEIGHT(GxEPD2_154_D67)> display(GxEPD2_154_D67(/*CS=10*/ SS, /*DC=*/ 9, /*RST=*/ 8, /*BUSY=*/ 7)); // GDEH0154D67

#include "Bitmaps200x200.h" // 1.54" b/w
U8G2_FOR_ADAFRUIT_GFX u8g2Fonts;

    enum
    {
      SPI_SS_PIN = 6,//10scn
      NRF_CE_PIN = 5,//плата//9-макетка
      
      NRF_CHANNEL = 100,
      NRF_POWER_UP_DELAY = 2,
      NRF_PAYLOAD_LENGTH = 16
    };

   // char test_data[] = "test3,3v";
char test_data[] = "t1+333c33v299h95s";
//const char test_data1[] = "t1+333c33v299h95s";

byte vc = 3;
byte vd = 20;
byte tc = 25;
byte td = 3;
byte zn = 1; //+
byte hc = 75;
byte hd = 6;
byte s=56;

//Adafruit_HTU21DF htu = Adafruit_HTU21DF();

void setup()
{
  //Serial.begin(9600);
  // Serial.println("hello");
   Wire.begin();
 SPI.begin();
 
 pinMode(SPI_SS_PIN, OUTPUT);
 digitalWrite(SPI_SS_PIN, HIGH);
     
 pinMode(NRF_CE_PIN, OUTPUT);
 digitalWrite(NRF_CE_PIN, LOW);
     
 uint8_t address[5] = { 0xE2, 0xE4, 0x23, 0xE4, 0x02 };
 nrf_init(address);

 
 display.init();

 u8g2Fonts.begin(display); // connect u8g2 procedures to Adafruit GFX
 bat();
 dtu21();
 drawBitmaps1();
display.powerOff();

 data();

 //Serial.print(test_data);
 resiv();
delay(1000);
  
resiv();

 sleep();
}


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

}
