SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
SensorCommCustomHal Class Reference

#include <SensorCommCustomHal.hpp>

Inheritance diagram for SensorCommCustomHal:
[legend]

Public Types

enum  Operation {
  OP_PINMODE , OP_DIGITALWRITE , OP_DIGITALREAD , OP_MILLIS ,
  OP_DELAY , OP_DELAYMICROSECONDS
}
 
using CustomHalCallback = uint32_t(*)(Operation op, void *param1, void *param2)
 
- Public Types inherited from SensorHalCustom
using CustomWrite = void(*)(uint8_t pin, uint8_t level)
 Set pin level (0/1)
 
using CustomRead = uint8_t(*)(uint8_t pin)
 Read pin level.
 
using CustomMode = void(*)(uint8_t pin, uint8_t mode)
 Set pin mode (INPUT/OUTPUT, etc.)
 

Public Member Functions

 SensorCommCustomHal (CustomHalCallback callback)
 
void pinMode (uint8_t pin, uint8_t mode) override
 Set the mode of a digital pin.
 
void digitalWrite (uint8_t pin, uint8_t level) override
 Write a digital value to a pin.
 
uint8_t digitalRead (uint8_t pin) override
 Read the digital value from a pin.
 
uint32_t millis () override
 Get the current system time in milliseconds.
 
void delay (uint32_t ms) override
 Blocking delay for a given number of milliseconds.
 
void delayMicroseconds (uint32_t us) override
 Blocking delay for a given number of microseconds.
 
- Public Member Functions inherited from SensorHalCustom
 SensorHalCustom ()
 
void setCustomWrite (CustomWrite callback)
 Set a custom digitalWrite implementation.
 
void setCustomRead (CustomRead callback)
 Set a custom digitalRead implementation.
 
void setCustomMode (CustomMode callback)
 Set a custom pinMode implementation.
 

Additional Inherited Members

- Protected Attributes inherited from SensorHalCustom
CustomWrite writeCallback
 Custom digitalWrite, nullptr if not set.
 
CustomRead readCallback
 Custom digitalRead, nullptr if not set.
 
CustomMode modeCallback
 Custom pinMode, nullptr if not set.
 

Detailed Description

Definition at line 34 of file SensorCommCustomHal.hpp.

Member Typedef Documentation

◆ CustomHalCallback

using SensorCommCustomHal::CustomHalCallback = uint32_t (*)(Operation op, void *param1, void *param2)

Definition at line 46 of file SensorCommCustomHal.hpp.

Member Enumeration Documentation

◆ Operation

Enumerator
OP_PINMODE 
OP_DIGITALWRITE 
OP_DIGITALREAD 
OP_MILLIS 
OP_DELAY 
OP_DELAYMICROSECONDS 

Definition at line 37 of file SensorCommCustomHal.hpp.

Constructor & Destructor Documentation

◆ SensorCommCustomHal()

SensorCommCustomHal::SensorCommCustomHal ( CustomHalCallback  callback)
inline

Definition at line 48 of file SensorCommCustomHal.hpp.

Member Function Documentation

◆ delay()

void SensorCommCustomHal::delay ( uint32_t  ms)
inlineoverridevirtual

Blocking delay for a given number of milliseconds.

Parameters
msDelay duration in milliseconds.

Implements SensorHal.

Definition at line 86 of file SensorCommCustomHal.hpp.

References OP_DELAY.

◆ delayMicroseconds()

void SensorCommCustomHal::delayMicroseconds ( uint32_t  us)
inlineoverridevirtual

Blocking delay for a given number of microseconds.

Parameters
usDelay duration in microseconds.

Implements SensorHal.

Definition at line 93 of file SensorCommCustomHal.hpp.

References OP_DELAYMICROSECONDS.

◆ digitalRead()

uint8_t SensorCommCustomHal::digitalRead ( uint8_t  pin)
inlineoverridevirtual

Read the digital value from a pin.

Parameters
pinPin number.
Returns
uint8_t The read level (0 = LOW, 1 = HIGH).

Implements SensorHal.

Definition at line 68 of file SensorCommCustomHal.hpp.

References OP_DIGITALREAD, and SensorHalCustom::readCallback.

◆ digitalWrite()

void SensorCommCustomHal::digitalWrite ( uint8_t  pin,
uint8_t  level 
)
inlineoverridevirtual

Write a digital value to a pin.

Parameters
pinPin number.
levelLogic level (0 = LOW, 1 = HIGH).

Implements SensorHal.

Definition at line 59 of file SensorCommCustomHal.hpp.

References level, OP_DIGITALWRITE, and SensorHalCustom::writeCallback.

◆ millis()

uint32_t SensorCommCustomHal::millis ( )
inlineoverridevirtual

Get the current system time in milliseconds.

Returns
uint32_t Milliseconds since some epoch (e.g., boot).

Implements SensorHal.

Definition at line 78 of file SensorCommCustomHal.hpp.

References OP_MILLIS.

◆ pinMode()

void SensorCommCustomHal::pinMode ( uint8_t  pin,
uint8_t  mode 
)
inlineoverridevirtual

Set the mode of a digital pin.

Parameters
pinPin number.
modeMode (e.g., INPUT, OUTPUT, INPUT_PULLUP).

Implements SensorHal.

Definition at line 50 of file SensorCommCustomHal.hpp.

References SensorHalCustom::modeCallback, and OP_PINMODE.


The documentation for this class was generated from the following file: