SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
SensorCommStatic.cpp
Go to the documentation of this file.
1
30#include "SensorCommBase.hpp"
31#include "SensorCommStatic.hpp"
32
33int8_t SensorCommStatic::sensor_static_read_data(uint8_t reg_addr, uint8_t *reg_data, uint32_t length, void *intf_ptr)
34{
35 SensorCommStatic *pThis = static_cast<SensorCommStatic *>(intf_ptr);
36 if (pThis) {
37 return pThis->comm->readRegister(reg_addr, reg_data, length);
38 }
39 SENSORLIB_LOG_E("This pointer is null");
40 return -1;
41}
42
43int8_t SensorCommStatic::sensor_static_write_data(uint8_t reg_addr, const uint8_t *reg_data, uint32_t length, void *intf_ptr)
44{
45 SensorCommStatic *pThis = static_cast<SensorCommStatic *>(intf_ptr);
46 if (pThis) {
47 return pThis->comm->writeRegister(reg_addr, (uint8_t *) reg_data, length);
48 }
49 SENSORLIB_LOG_E("This pointer is null");
50 return -1;
51}
52
53void SensorCommStatic::sensor_static_delay_us(uint32_t us, void *private_data)
54{
55 SensorCommStatic *pThis = static_cast<SensorCommStatic *>(private_data);
56 if (pThis) {
57 pThis->hal->delayMicroseconds(us);
58 } else {
59 SENSORLIB_LOG_E("This pointer is null");
60 }
61}
@license MIT License
@license MIT License
#define SENSORLIB_LOG_E(...)
virtual int readRegister(const uint8_t reg)
Read a single byte from a register.
virtual int writeRegister(const uint8_t reg, uint8_t val)
Write a single byte to a register.
static int8_t sensor_static_read_data(uint8_t reg_addr, uint8_t *reg_data, uint32_t length, void *intf_ptr)
static int8_t sensor_static_write_data(uint8_t reg_addr, const uint8_t *reg_data, uint32_t length, void *intf_ptr)
SensorCommBase * comm
static void sensor_static_delay_us(uint32_t us, void *private_data)
virtual void delayMicroseconds(uint32_t us)=0
Blocking delay for a given number of microseconds.