ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
pn532_spi.h
Go to the documentation of this file.
1#pragma once
2
6
7#include <span>
8
9namespace esphome::pn532_spi {
10
11class PN532Spi final : public pn532::PN532,
12 public spi::SPIDevice<spi::BIT_ORDER_LSB_FIRST, spi::CLOCK_POLARITY_LOW,
13 spi::CLOCK_PHASE_LEADING, spi::DATA_RATE_1MHZ> {
14 public:
15 void setup() override;
16
17 void dump_config() override;
18
19 protected:
20 bool is_read_ready() override;
21 bool write_data(std::span<const uint8_t> data) override;
22 bool read_data(pn532::PN532Frame &data, size_t len) override;
23 bool read_response(uint8_t command, pn532::PN532Frame &data) override;
24};
25
26} // namespace esphome::pn532_spi
Minimal static vector - saves memory by avoiding std::vector overhead.
Definition helpers.h:286
bool write_data(std::span< const uint8_t > data) override
Definition pn532_spi.cpp:36
bool is_read_ready() override
Definition pn532_spi.cpp:27
bool read_data(pn532::PN532Frame &data, size_t len) override
Definition pn532_spi.cpp:48
bool read_response(uint8_t command, pn532::PN532Frame &data) override
Definition pn532_spi.cpp:69
The SPIDevice is what components using the SPI will create.
Definition spi.h:456
const void size_t len
Definition hal.h:68