|
|
| PiHal (uint8_t spiChannel, uint32_t spiSpeed=2000000, uint8_t spiDevice=0, uint8_t gpioDevice=0) |
| int16_t | init () override |
| | Module initialization method. This will be called by all radio modules at the beginning of startup. Can be used to e.g., initialize SPI interface.
|
| int16_t | term () override |
| | Module termination method. This will be called by all radio modules when the destructor is called. Can be used to e.g., stop SPI interface.
|
| void | pinMode (uint32_t pin, uint32_t mode) override |
| | GPIO pin mode (input/output/...) configuration method. Must be implemented by the platform-specific hardware abstraction!
|
| void | digitalWrite (uint32_t pin, uint32_t value) override |
| | Digital write method. Must be implemented by the platform-specific hardware abstraction!
|
| uint32_t | digitalRead (uint32_t pin) override |
| | Digital read method. Must be implemented by the platform-specific hardware abstraction!
|
| void | attachInterrupt (uint32_t interruptNum, void(*interruptCb)(void), uint32_t mode) override |
| | Method to attach function to an external interrupt. Must be implemented by the platform-specific hardware abstraction!
|
| void | detachInterrupt (uint32_t interruptNum) override |
| | Method to detach function from an external interrupt. Must be implemented by the platform-specific hardware abstraction!
|
| void | delay (unsigned long ms) override |
| | Blocking wait function. Must be implemented by the platform-specific hardware abstraction!
|
| void | delayMicroseconds (unsigned long us) override |
| | Blocking microsecond wait function. Must be implemented by the platform-specific hardware abstraction!
|
| void | yield () override |
| | Yield method, called from long loops in multi-threaded environment (to prevent blocking other threads).
|
| unsigned long | millis () override |
| | Get number of milliseconds since start. Must be implemented by the platform-specific hardware abstraction!
|
| unsigned long | micros () override |
| | Get number of microseconds since start. Must be implemented by the platform-specific hardware abstraction!
|
| long | pulseIn (uint32_t pin, uint32_t state, unsigned long timeout) override |
| | Measure the length of incoming digital pulse in microseconds. Must be implemented by the platform-specific hardware abstraction!
|
| int16_t | spiBegin () |
| | SPI initialization method.
|
| void | spiBeginTransaction () |
| | Method to start SPI transaction.
|
| int16_t | spiTransfer (uint8_t *out, size_t len, uint8_t *in) |
| | Method to transfer buffer over SPI.
|
| void | spiEndTransaction () |
| | Method to end SPI transaction.
|
| int16_t | spiEnd () |
| | SPI termination method.
|
| void | tone (uint32_t pin, unsigned int frequency, unsigned long duration=0) |
| | Method to produce a square-wave with 50% duty cycle ("tone") of a given frequency at some pin.
|
| void | noTone (uint32_t pin) |
| | Method to stop producing a tone.
|
| | RadioLibHal (const uint32_t input, const uint32_t output, const uint32_t low, const uint32_t high, const uint32_t rising, const uint32_t falling) |
| | Default constructor.
|
|
virtual | ~RadioLibHal ()=default |
| | Default destructor.
|
| virtual uint32_t | pinToInterrupt (uint32_t pin) |
| | Function to convert from pin number to interrupt number.
|
| virtual void | pullUpDown (uint32_t pin, bool enable, bool up) |
| | Enable or disable pull up or pull down for a specific pin.
|
|
|
bool | interruptEnabled [PI_MAX_USER_GPIO+1] |
|
uint32_t | interruptModes [PI_MAX_USER_GPIO+1] |
|
RadioLibISR | interruptCallbacks [PI_MAX_USER_GPIO+1] |
|
const uint32_t | GpioModeInput |
| | Value to be used as the "input" GPIO direction.
|
|
const uint32_t | GpioModeOutput |
| | Value to be used as the "output" GPIO direction.
|
|
const uint32_t | GpioLevelLow |
| | Value to be used as the "low" GPIO level.
|
|
const uint32_t | GpioLevelHigh |
| | Value to be used as the "high" GPIO level.
|
|
const uint32_t | GpioInterruptRising |
| | Value to be used as the "rising" GPIO level change direction.
|
|
const uint32_t | GpioInterruptFalling |
| | Value to be used as the "falling" GPIO level change direction.
|
|
RadioLibAES128 * | aes128 = nullptr |
| | AES-128 engine instance to be used. When using platform with AES hardware acceleration, it is usually highly advantageous to use it instead of the default software implementation. With custom AES-128, set this pointer to an instance of that class. See the macro RADIOLIB_CUSTOM_AES128 in BuildOpt.h for details.
|