ESPHome 2026.1.4
Loading...
Searching...
No Matches
ssd1325_spi.cpp
Go to the documentation of this file.
1#include "ssd1325_spi.h"
2#include "esphome/core/log.h"
4
5namespace esphome {
6namespace ssd1325_spi {
7
8static const char *const TAG = "ssd1325_spi";
9
11 this->spi_setup();
12 this->dc_pin_->setup(); // OUTPUT
13 if (this->cs_)
14 this->cs_->setup(); // OUTPUT
15
16 this->init_reset_();
17 delay(500); // NOLINT
18 SSD1325::setup();
19}
21 LOG_DISPLAY("", "SPI SSD1325", this);
22 ESP_LOGCONFIG(TAG,
23 " Model: %s\n"
24 " Initial Brightness: %.2f\n"
25 " External VCC: %s",
26 this->model_str_(), this->brightness_, YESNO(this->external_vcc_));
27 LOG_PIN(" CS Pin: ", this->cs_);
28 LOG_PIN(" DC Pin: ", this->dc_pin_);
29 LOG_PIN(" Reset Pin: ", this->reset_pin_);
30 LOG_UPDATE_INTERVAL(this);
31}
32void SPISSD1325::command(uint8_t value) {
33 if (this->cs_)
34 this->cs_->digital_write(true);
35 this->dc_pin_->digital_write(false);
36 delay(1);
37 this->enable();
38 if (this->cs_)
39 this->cs_->digital_write(false);
40 this->write_byte(value);
41 if (this->cs_)
42 this->cs_->digital_write(true);
43 this->disable();
44}
46 if (this->cs_)
47 this->cs_->digital_write(true);
48 this->dc_pin_->digital_write(true);
49 if (this->cs_)
50 this->cs_->digital_write(false);
51 delay(1);
52 this->enable();
53 this->write_array(this->buffer_, this->get_buffer_length_());
54 if (this->cs_)
55 this->cs_->digital_write(true);
56 this->disable();
57}
58
59} // namespace ssd1325_spi
60} // namespace esphome
virtual void setup()=0
virtual void digital_write(bool value)=0
void command(uint8_t value) override
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7
void IRAM_ATTR HOT delay(uint32_t ms)
Definition core.cpp:26