CRTP register transport bridging bmp581::BusInterface to a BaseI2c device.
More...
#include <Bmp581Handler.h>
|
| | HalI2cBmp581Comm (BaseI2c &i2c_device) noexcept |
| |
|
| bool | WriteRegs (std::uint8_t reg, const std::uint8_t *data, std::size_t len) noexcept |
| |
| bool | ReadRegs (std::uint8_t reg, std::uint8_t *out, std::size_t len) noexcept |
| |
| void | DelayUs (std::uint32_t us) noexcept |
| |
| bool | EnsureInitialized () noexcept |
| |
|
| static constexpr bmp581::Interface | kInterface = bmp581::Interface::I2c |
| |
CRTP register transport bridging bmp581::BusInterface to a BaseI2c device.
Frames writes as [reg, data…] and reads as write-reg / read-len through member scratch buffers (internal SRAM).
- Note
- Does not own the
BaseI2c; it must outlive the adapter.
◆ HalI2cBmp581Comm()
| HalI2cBmp581Comm::HalI2cBmp581Comm |
( |
BaseI2c & |
i2c_device | ) |
|
|
explicitnoexcept |
◆ DelayUs()
| void HalI2cBmp581Comm::DelayUs |
( |
std::uint32_t |
us | ) |
|
|
noexcept |
◆ EnsureInitialized()
| bool HalI2cBmp581Comm::EnsureInitialized |
( |
| ) |
|
|
noexcept |
◆ ReadRegs()
| bool HalI2cBmp581Comm::ReadRegs |
( |
std::uint8_t |
reg, |
|
|
std::uint8_t * |
out, |
|
|
std::size_t |
len |
|
) |
| |
|
noexcept |
◆ WriteRegs()
| bool HalI2cBmp581Comm::WriteRegs |
( |
std::uint8_t |
reg, |
|
|
const std::uint8_t * |
data, |
|
|
std::size_t |
len |
|
) |
| |
|
noexcept |
◆ i2c_device_
| BaseI2c& HalI2cBmp581Comm::i2c_device_ |
|
private |
◆ kInterface
| constexpr bmp581::Interface HalI2cBmp581Comm::kInterface = bmp581::Interface::I2c |
|
staticconstexpr |
The bus this transport drives. The driver then accepts the missing ACK of the soft-reset command (datasheet 7.36) and skips the SPI dummy read.
◆ reg_scratch_
| std::uint8_t HalI2cBmp581Comm::reg_scratch_ {0} |
|
private |
◆ rx_scratch_
| std::uint8_t HalI2cBmp581Comm::rx_scratch_[8] {} |
|
private |
◆ tx_scratch_
| std::uint8_t HalI2cBmp581Comm::tx_scratch_[8] {} |
|
private |
The documentation for this class was generated from the following files: