SPI and I2C for ENS160 (#6369)

This commit is contained in:
Anton Viktorov
2024-05-16 05:22:40 +02:00
committed by GitHub
parent 0bb2773c64
commit 98cb6555df
35 changed files with 378 additions and 180 deletions
@@ -0,0 +1,22 @@
#pragma once
#include "esphome/components/ens160_base/ens160_base.h"
#include "esphome/components/spi/spi.h"
namespace esphome {
namespace ens160_spi {
class ENS160SPIComponent : public esphome::ens160_base::ENS160Component,
public spi::SPIDevice<spi::BIT_ORDER_MSB_FIRST, spi::CLOCK_POLARITY_LOW,
spi::CLOCK_PHASE_LEADING, spi::DATA_RATE_200KHZ> {
void setup() override;
void dump_config() override;
bool read_byte(uint8_t a_register, uint8_t *data) override;
bool write_byte(uint8_t a_register, uint8_t data) override;
bool read_bytes(uint8_t a_register, uint8_t *data, size_t len) override;
bool write_bytes(uint8_t a_register, uint8_t *data, size_t len) override;
};
} // namespace ens160_spi
} // namespace esphome