FastLED 3.9.15
Loading...
Searching...
No Matches
pin.cpp.hpp File Reference
#include "fl/system/pin.h"
#include "platforms/pin.h"
#include "fl/stl/isr.h"
#include "fl/log/log.h"
#include "fl/stl/compiler_control.h"
#include "fl/stl/singleton.h"
#include "fl/stl/noexcept.h"
+ Include dependency graph for pin.cpp.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  fl::pwm_state::PwmPinState
 
struct  fl::pwm_state::PwmStateData
 

Namespaces

namespace  fl
 Base definition for an LED controller.
 
namespace  fl::pwm_state
 

Enumerations

enum class  fl::pwm_state::PwmBackend : u8 { fl::pwm_state::None , fl::pwm_state::Native , fl::pwm_state::IsrSoftware }
 

Functions

PwmPinStatefl::pwm_state::allocate ()
 
u16 fl::analogRead (int pin)
 Read analog value from pin.
 
void fl::analogWrite (int pin, u16 val)
 Write analog value to pin (PWM)
 
u8 fl::pwm_state::countIsrChannels ()
 
PinValue fl::digitalRead (int pin)
 Read digital value from pin.
 
void fl::digitalWrite (int pin, PinValue val)
 Write digital value to pin.
 
int fl::pwm_state::ensureIsrActive ()
 
PwmPinStatefl::pwm_state::findByPin (int pin)
 
u32 fl::getPwmFrequency (int pin)
 Query the configured PWM frequency for a pin.
 
void fl::pwm_state::maybeShutdownIsr ()
 
void fl::pinMode (int pin, PinMode mode)
 Set pin mode (input, output, pull-up, pull-down)
 
void FL_IRAM fl::pwm_state::pwm_isr_handler (void *user_data)
 
int fl::pwmEnd (int pin)
 Release PWM channel and stop output on a pin.
 
void fl::pwm_state::releaseChannel (PwmPinState *ch)
 
void fl::setAdcRange (AdcRange range)
 Set ADC voltage range.
 
void fl::setPwm16 (int pin, u16 val)
 Set PWM duty cycle with 16-bit resolution.
 
int fl::setPwmFrequency (int pin, u32 frequency_hz)
 Set PWM frequency for a pin.
 
PwmStateDatafl::pwm_state::state ()
 

Variables

constexpr u32 fl::pwm_state::ISR_FREQUENCY_HZ = 128000
 
constexpr u32 fl::pwm_state::MAX_ISR_PWM_FREQUENCY = 500
 
constexpr u8 fl::pwm_state::MAX_PWM_CHANNELS = 8