ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
pn532_i2c.h
Go to the documentation of this file.
1#pragma once
2
6
7#include <span>
8
9namespace esphome::pn532_i2c {
10
11class PN532I2C final : public pn532::PN532, public i2c::I2CDevice {
12 public:
13 void dump_config() override;
14
15 protected:
16 bool is_read_ready() override;
17 bool write_data(std::span<const uint8_t> data) override;
18 bool read_data(pn532::PN532Frame &data, size_t len) override;
19 bool read_response(uint8_t command, pn532::PN532Frame &data) override;
20 uint8_t read_response_length_();
21};
22
23} // namespace esphome::pn532_i2c
Minimal static vector - saves memory by avoiding std::vector overhead.
Definition helpers.h:286
This Class provides the methods to read/write bytes from/to an i2c device.
Definition i2c.h:144
bool read_data(pn532::PN532Frame &data, size_t len) override
Definition pn532_i2c.cpp:29
bool write_data(std::span< const uint8_t > data) override
Definition pn532_i2c.cpp:25
bool read_response(uint8_t command, pn532::PN532Frame &data) override
Definition pn532_i2c.cpp:44
bool is_read_ready() override
Definition pn532_i2c.cpp:16
const void size_t len
Definition hal.h:68