Browse Source

EInk class methods ajustments

v0.9.4
Guy Turcotte 2 years ago
parent
commit
af539b3222
  1. 2
      examples/Others/Inkplate_Peripheral_Mode/src/main.cpp
  2. 4
      include/drivers/eink_10.hpp
  3. 4
      include/drivers/eink_6.hpp
  4. 47
      src/drivers/eink.cpp
  5. 46
      src/drivers/eink_10.cpp
  6. 46
      src/drivers/eink_6.cpp

2
examples/Others/Inkplate_Peripheral_Mode/src/main.cpp

@ -67,7 +67,7 @@ void peripheral_task(void * param)
{
commandBuffer[i] = commandBuffer[i + 1];
}
commandBuffer[BUFFER_SIZE - 1] = Serial.read();
commandBuffer[BUFFER_SIZE - 1] = c;
}
char *s = NULL;
char *e = NULL;

4
include/drivers/eink_10.hpp

@ -79,8 +79,6 @@ class EInk10 : public EInk, NonCopyable
void update(FrameBuffer3Bit & frame_buffer);
void partial_update(FrameBuffer1Bit & frame_buffer, bool force = false);
int8_t read_temperature();
private:
static constexpr char const * TAG = "EInk10";
@ -107,8 +105,6 @@ class EInk10 : public EInk, NonCopyable
void clean_fast(uint8_t c, uint8_t rep);
uint8_t read_power_good();
static const uint8_t WAVEFORM_3BIT[8][8];
static const uint8_t LUT2[16];
static const uint8_t LUTW[16];

4
include/drivers/eink_6.hpp

@ -80,8 +80,6 @@ class EInk6 : public EInk, NonCopyable
void partial_update(FrameBuffer1Bit & frame_buffer, bool force = false);
int8_t read_temperature();
private:
static constexpr char const * TAG = "EInk6";
@ -105,8 +103,6 @@ class EInk6 : public EInk, NonCopyable
void clean_fast(uint8_t c, uint8_t rep);
uint8_t read_power_good();
static const uint8_t WAVEFORM_3BIT[8][8];
static const uint32_t WAVEFORM[50];
static const uint8_t LUT2[16];

47
src/drivers/eink.cpp

@ -214,3 +214,50 @@ EInk::pins_as_outputs()
gpio_set_direction(GPIO_NUM_26, GPIO_MODE_OUTPUT);
gpio_set_direction(GPIO_NUM_27, GPIO_MODE_OUTPUT);
}
int8_t
EInk6::read_temperature()
{
int8_t temp;
if (get_panel_state() == PanelState::OFF) {
Wire::enter();
wakeup_set();
ESP::delay_microseconds(1800);
pwrup_set();
Wire::leave();
ESP::delay(5);
}
Wire::enter();
wire.begin_transmission(PWRMGR_ADDRESS);
wire.write(0x0D);
wire.write(0b10000000);
wire.end_transmission();
Wire::leave();
ESP::delay(5);
Wire::enter();
wire.begin_transmission(PWRMGR_ADDRESS);
wire.write(0x00);
wire.end_transmission();
wire.request_from(PWRMGR_ADDRESS, 1);
temp = wire.read();
if (get_panel_state() == PanelState::OFF) {
pwrup_clear();
wakeup_clear();
Wire::leave();
ESP::delay(5);
}
else {
Wire::leave();
}
return temp;
}

46
src/drivers/eink_10.cpp

@ -379,50 +379,4 @@ EInk10::clean_fast(uint8_t c, uint8_t rep)
}
}
int8_t
EInk10::read_temperature()
{
int8_t temp;
if (get_panel_state() == PanelState::OFF) {
Wire::enter();
wakeup_set();
ESP::delay_microseconds(1800);
pwrup_set();
Wire::leave();
ESP::delay(5);
}
Wire::enter();
wire.begin_transmission(PWRMGR_ADDRESS);
wire.write(0x0D);
wire.write(0b10000000);
wire.end_transmission();
Wire::leave();
ESP::delay(5);
Wire::enter();
wire.begin_transmission(PWRMGR_ADDRESS);
wire.write(0x00);
wire.end_transmission();
wire.request_from(PWRMGR_ADDRESS, 1);
temp = wire.read();
if (get_panel_state() == PanelState::OFF) {
pwrup_clear();
wakeup_clear();
Wire::leave();
ESP::delay(5);
}
else {
Wire::leave();
}
return temp;
}
#endif

46
src/drivers/eink_6.cpp

@ -420,50 +420,4 @@ EInk6::clean_fast(uint8_t c, uint8_t rep)
}
}
int8_t
EInk6::read_temperature()
{
int8_t temp;
if (get_panel_state() == PanelState::OFF) {
Wire::enter();
wakeup_set();
ESP::delay_microseconds(1800);
pwrup_set();
Wire::leave();
ESP::delay(5);
}
Wire::enter();
wire.begin_transmission(PWRMGR_ADDRESS);
wire.write(0x0D);
wire.write(0b10000000);
wire.end_transmission();
Wire::leave();
ESP::delay(5);
Wire::enter();
wire.begin_transmission(PWRMGR_ADDRESS);
wire.write(0x00);
wire.end_transmission();
wire.request_from(PWRMGR_ADDRESS, 1);
temp = wire.read();
if (get_panel_state() == PanelState::OFF) {
pwrup_clear();
wakeup_clear();
Wire::leave();
ESP::delay(5);
}
else {
Wire::leave();
}
return temp;
}
#endif
Loading…
Cancel
Save