21#include "HardwareGPIO.h"
22#include "HardwareService.h"
124 unsigned long timeout = 1000000L);
134 unsigned long timeout = 1000000L);
173 if (
result ==
nullptr && p_source !=
nullptr) {
174 result = p_source->getGPIO();
181extern GPIOWrapper
GPIO;
Abstract interface for providing GPIO hardware implementations.
Definition Sources.h:66
GPIO wrapper class that provides flexible hardware abstraction.
Definition GPIOWrapper.h:54
void digitalWrite(pin_size_t pinNumber, PinStatus status)
Write a digital value to a pin.
Definition GPIOWrapper.cpp:44
int analogRead(pin_size_t pinNumber)
Read an analog value from a pin.
Definition GPIOWrapper.cpp:60
void noTone(uint8_t _pin)
Stop tone generation on a pin.
Definition GPIOWrapper.cpp:92
unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout=1000000L)
Measure the duration of a pulse on a pin (microseconds precision)
Definition GPIOWrapper.cpp:99
PinStatus digitalRead(pin_size_t pinNumber)
Read the digital value from a pin.
Definition GPIOWrapper.cpp:51
void pinMode(pin_size_t pinNumber, PinMode pinMode)
Configure the digital pin mode for input/output operations.
Definition GPIOWrapper.cpp:37
void setSource(GPIOSource *source)
Set a GPIO source that provides the GPIO implementation.
Definition GPIOWrapper.h:162
void tone(uint8_t _pin, unsigned int frequency, unsigned long duration=0)
Generate a square wave tone on a pin.
Definition GPIOWrapper.cpp:84
void setGPIO(HardwareGPIO *gpio)
Set the GPIO implementation directly.
Definition GPIOWrapper.h:153
void analogWriteFrequency(pin_size_t pin, uint32_t freq)
Set the PWM frequency for a pin (legacy 8-bit interface)
Definition GPIOWrapper.cpp:119
unsigned long pulseInLong(uint8_t pin, uint8_t state, unsigned long timeout=1000000L)
Measure long pulse duration on a pin (microseconds precision)
Definition GPIOWrapper.cpp:109
void analogWriteResolution(uint8_t bits)
Set the resolution for analog write operations.
Definition GPIOWrapper.cpp:126
void analogWrite(pin_size_t pinNumber, int value)
Write an analog value (PWM) to a pin.
Definition GPIOWrapper.cpp:76
void analogReference(uint8_t mode)
Set the analog reference voltage for ADC measurements.
Definition GPIOWrapper.cpp:69
Abstract base class for GPIO (General Purpose Input/Output) functions.
Definition HardwareGPIO.h:51
We provide the WiFi class to simulate the Arduino WIFI. In in Linux we can expect that networking is ...
Definition CanMsg.cpp:31
GPIOWrapper GPIO
Global GPIO instance used by Arduino API functions and direct access.
Definition GPIOWrapper.cpp:35