#include <PWMPin.hh>
|
| PWMPin (Board::PWMPin pin, uint8_t duty=0) |
|
void | begin () |
|
void | set (uint8_t duty) |
|
void | write (uint8_t duty) |
|
PWMPin & | operator= (uint8_t duty) |
|
void | set (uint16_t value, uint16_t min, uint16_t max) |
|
void | write (uint16_t value, uint16_t min, uint16_t max) |
|
uint8_t | duty () |
|
void | _set () const |
|
void | _set (int value) const |
|
void | set () const |
|
void | set (int value) const |
|
void | high () const |
|
void | on () const |
|
void | _clear () const |
|
void | clear () const |
|
void | low () const |
|
void | off () const |
|
void | _toggle () const |
|
void | toggle () const |
|
void | _write (int value) const |
|
void | write (int value) const |
|
void | write (uint8_t value, OutputPin &clk, Direction order=MSB_FIRST) const |
|
void | write (uint16_t value, uint8_t bits, uint16_t us) const |
|
OutputPin & | operator<< (int value) |
|
void | pulse (uint16_t us) const |
|
uint8_t | pin () const |
|
bool | is_set () const |
|
bool | is_high () const |
|
bool | is_on () const |
|
bool | is_clear () const |
|
bool | is_low () const |
|
bool | is_off () const |
|
bool | read () const |
|
uint8_t | read (OutputPin &clk, Direction order=MSB_FIRST) const |
|
| operator bool () const |
|
Pin & | operator>> (uint8_t &var) |
|
|
volatile uint8_t * | PIN () const |
|
volatile uint8_t * | DDR () const |
|
volatile uint8_t * | PORT () const |
|
volatile uint8_t * | PCIMR () const |
|
Abstract pulse width modulation pin.
Definition at line 29 of file PWMPin.hh.
Serialization directions; most or least significant bit first.
Enumerator |
---|
MSB_FIRST |
|
LSB_FIRST |
|
Definition at line 84 of file Pin.hh.
Construct an abstract pwm output pin for given Arduino pin number.
- Parameters
-
[in] | pin | number. |
[in] | duty | cycle (0..255) |
void OutputPin::_clear |
( |
| ) |
const |
|
inlineinherited |
Clear the output pin. Unprotected version.
Definition at line 114 of file OutputPin.hh.
void OutputPin::_set |
( |
| ) |
const |
|
inlineinherited |
Set the output pin. Unprotected version.
Definition at line 75 of file OutputPin.hh.
void OutputPin::_set |
( |
int |
value | ) |
const |
|
inlineinherited |
Set the output pin with the given value. Zero(0) to clear and non-zero to set. Unprotected version.
- Parameters
-
Definition at line 184 of file OutputPin.hh.
void OutputPin::_toggle |
( |
| ) |
const |
|
inlineinherited |
Toggle the output pin. Unprotected version.
Definition at line 153 of file OutputPin.hh.
void OutputPin::_write |
( |
int |
value | ) |
const |
|
inlineinherited |
Set the output pin with the given value. Zero(0) to clear and non-zero to set. Unprotected version.
- Parameters
-
Definition at line 219 of file OutputPin.hh.
Set the given output pin with the given value. Zero(0) to clear and non-zero to set. Unprotected version when pin and value are constants.
- Parameters
-
[in] | pin | number (must be constant). |
[in] | value | to write (must be constant). |
Definition at line 345 of file OutputPin.hh.
Start pwm pin. Power up timer.
void OutputPin::clear |
( |
| ) |
const |
|
inlineinherited |
Clear the output pin.
- Note
- atomic
Definition at line 124 of file OutputPin.hh.
static volatile uint8_t* Pin::DDR |
( |
uint8_t |
pin | ) |
|
|
inlinestaticinherited |
Return pointer to Data Direction Register.
- Parameters
-
- Returns
- DDR register pointer.
Definition at line 64 of file Pin.hh.
volatile uint8_t* Pin::DDR |
( |
| ) |
const |
|
inlineprotectedinherited |
Return pointer to Data Direction Register.
- Returns
- DDR register pointer.
Definition at line 245 of file Pin.hh.
Return duty setting for pwm output pin.
- Returns
- duty
void OutputPin::high |
( |
| ) |
const |
|
inlineinherited |
Set the output pin.
- Note
- atomic
Definition at line 95 of file OutputPin.hh.
bool Pin::is_clear |
( |
| ) |
const |
|
inlineinherited |
Return true(1) if the pin is clear otherwise false(0).
- Returns
- boolean.
Definition at line 142 of file Pin.hh.
bool Pin::is_high |
( |
| ) |
const |
|
inlineinherited |
Return true(1) if the pin is set otherwise false(0).
- Returns
- boolean.
Definition at line 122 of file Pin.hh.
bool Pin::is_low |
( |
| ) |
const |
|
inlineinherited |
Return true(1) if the pin is clear otherwise false(0).
- Returns
- boolean.
Definition at line 152 of file Pin.hh.
bool Pin::is_off |
( |
| ) |
const |
|
inlineinherited |
Return true(1) if the pin is clear otherwise false(0).
- Returns
- boolean.
Definition at line 162 of file Pin.hh.
bool Pin::is_on |
( |
| ) |
const |
|
inlineinherited |
Return true(1) if the pin is set otherwise false(0).
- Returns
- boolean.
Definition at line 132 of file Pin.hh.
bool Pin::is_set |
( |
| ) |
const |
|
inlineinherited |
Return true(1) if the pin is set otherwise false(0).
- Returns
- boolean.
Definition at line 112 of file Pin.hh.
void OutputPin::low |
( |
| ) |
const |
|
inlineinherited |
Clear the output pin.
- Note
- atomic
Definition at line 134 of file OutputPin.hh.
static uint8_t Pin::MASK |
( |
uint8_t |
pin | ) |
|
|
inlinestaticinherited |
Return bit mask for given Arduino pin number.
- Parameters
-
- Returns
- pin bit mask.
Definition at line 42 of file Pin.hh.
Set output pin to mode.
- Parameters
-
[in] | pin | number. |
[in] | initial | value. |
- Note
- atomic
Definition at line 56 of file OutputPin.hh.
void OutputPin::off |
( |
| ) |
const |
|
inlineinherited |
Clear the output pin.
- Note
- atomic
Definition at line 144 of file OutputPin.hh.
void OutputPin::on |
( |
| ) |
const |
|
inlineinherited |
Set the output pin.
- Note
- atomic
Definition at line 105 of file OutputPin.hh.
Pin::operator bool |
( |
| ) |
const |
|
inlineinherited |
Read input pin and assign variable.
- Parameters
-
- Returns
- pin.
Definition at line 204 of file Pin.hh.
OutputPin& OutputPin::operator<< |
( |
int |
value | ) |
|
|
inlineinherited |
Set the output pin with the given value. Zero(0) to clear and non-zero to set. Output operator syntax.
- Parameters
-
- Returns
- output pin.
Definition at line 364 of file OutputPin.hh.
PWMPin& PWMPin::operator= |
( |
uint8_t |
duty | ) |
|
|
inline |
Set duty cycle for pwm output pin.
- Parameters
-
- Returns
- pwm pin.
Definition at line 64 of file PWMPin.hh.
Pin& Pin::operator>> |
( |
uint8_t & |
var | ) |
|
|
inlineinherited |
Read input pin and assign variable.
- Parameters
-
- Returns
- pin.
Definition at line 215 of file Pin.hh.
volatile uint8_t* Pin::PCIMR |
( |
| ) |
const |
|
inlineprotectedinherited |
Return pin change interrupt mask register.
- Returns
- pin change mask register pointer.
Definition at line 263 of file Pin.hh.
static volatile uint8_t* Pin::PIN |
( |
uint8_t |
pin | ) |
|
|
inlinestaticinherited |
Return pointer to PIN register.
- Parameters
-
- Returns
- PIN register pointer.
Definition at line 53 of file Pin.hh.
uint8_t Pin::pin |
( |
| ) |
const |
|
inlineinherited |
Return Arduino pin number of abstract pin.
- Returns
- pin number.
Definition at line 103 of file Pin.hh.
volatile uint8_t* Pin::PIN |
( |
| ) |
const |
|
inlineprotectedinherited |
Return pointer to PIN register.
- Returns
- PIN register pointer.
Definition at line 236 of file Pin.hh.
static volatile uint8_t* Pin::PORT |
( |
uint8_t |
pin | ) |
|
|
inlinestaticinherited |
Return pointer to data PORT register.
- Parameters
-
- Returns
- PORT register pointer.
Definition at line 75 of file Pin.hh.
volatile uint8_t* Pin::PORT |
( |
| ) |
const |
|
inlineprotectedinherited |
Return pointer to data PORT register.
- Returns
- PORT register pointer.
Definition at line 254 of file Pin.hh.
void OutputPin::pulse |
( |
uint16_t |
us | ) |
const |
|
inlineinherited |
Toggle the output pin to form a pulse with given width in micro-seconds.
- Parameters
-
[in] | us | pulse width in micro seconds |
- Note
- atomic
-
pulse width is limited to 1000 us
Definition at line 378 of file OutputPin.hh.
Return true(1) if the pin is set otherwise false(0).
- Returns
- boolean.
Definition at line 172 of file Pin.hh.
Shift in a byte from the input pin using the given clock output pin. Shift in according to given direction.
- Parameters
-
[in] | clk | output pin. |
[in] | order | bit first. |
- Returns
- value.
Definition at line 25 of file Pin.cpp.
Use pin number directly to read value. Does not require an instance. Return true(1) if the pin is set otherwise false(0).
- Parameters
-
- Returns
- boolean.
Definition at line 193 of file Pin.hh.
void PWMPin::set |
( |
uint8_t |
duty | ) |
|
Set duty cycle for pwm output pin.
- Parameters
-
void PWMPin::set |
( |
uint16_t |
value, |
|
|
uint16_t |
min, |
|
|
uint16_t |
max |
|
) |
| |
Set duty cycle for pwm output pin with given value mapping. The value is mapped from ]min..max[ to duty [0..255]. Value below min is mapped to zero(0) and above max to 255.
- Parameters
-
[in] | value | to map. |
[in] | min | value. |
[in] | max | value. |
Definition at line 722 of file PWMPin.cpp.
void OutputPin::set |
( |
| ) |
const |
|
inlineinherited |
Set the output pin.
- Note
- atomic
Definition at line 85 of file OutputPin.hh.
void OutputPin::set |
( |
int |
value | ) |
const |
|
inlineinherited |
Set the output pin with the given value. Zero(0) to clear and non-zero to set.
- Parameters
-
- Note
- atomic
Definition at line 201 of file OutputPin.hh.
void OutputPin::toggle |
( |
| ) |
const |
|
inlineinherited |
Toggle the output pin.
- Note
- atomic
Definition at line 163 of file OutputPin.hh.
Toggle the output pin. Atomic per definition
- Parameters
-
Definition at line 173 of file OutputPin.hh.
void PWMPin::write |
( |
uint8_t |
duty | ) |
|
|
inline |
Set duty cycle for pwm output pin.
- Parameters
-
Definition at line 53 of file PWMPin.hh.
void PWMPin::write |
( |
uint16_t |
value, |
|
|
uint16_t |
min, |
|
|
uint16_t |
max |
|
) |
| |
|
inline |
Set duty cycle for pwm output pin with given value mapping. The value is mapped from ]min..max[ to duty [0..255]. Value below min is mapped to zero(0) and above max to 255.
- Parameters
-
[in] | value | to map. |
[in] | min | value. |
[in] | max | value. |
Definition at line 89 of file PWMPin.hh.
void OutputPin::write |
( |
int |
value | ) |
const |
|
inlineinherited |
Set the output pin with the given value. Zero(0) to clear and non-zero to set.
- Parameters
-
- Note
- atomic
Definition at line 236 of file OutputPin.hh.
Shift out given byte to the output pin using the given clock output pin. Shift out according to given direction. Data (bits) are transfered on clock transition. Interrupts are allowed during the shift out.
- Parameters
-
[in] | value | to write. |
[in] | clk | output pin. |
[in] | order | bit first. |
Definition at line 24 of file OutputPin.cpp.
void OutputPin::write |
( |
uint16_t |
value, |
|
|
uint8_t |
bits, |
|
|
uint16_t |
us |
|
) |
| const |
|
inherited |
Shift out given value and number of bits to the output pin using the given pulse length in micro-seconds. Shift out from LSB(0) to MSB(bits-1). This operation is synchronized and will turn off interrupt handling during the transmission period.
- Parameters
-
[in] | value | to write. |
[in] | bits | to write. |
[in] | us | micro-second bit period. |
- Note
- atomic
-
us should not exceed 1000
Definition at line 46 of file OutputPin.cpp.
Set the given output pin with the given value. Zero(0) to clear and non-zero to set.
- Parameters
-
[in] | pin | number. |
[in] | value | to write. |
- Note
- atomic
Definition at line 306 of file OutputPin.hh.
const uint8_t Pin::m_mask |
|
protectedinherited |
volatile uint8_t* const Pin::m_sfr |
|
protectedinherited |
Special function register pointer.
Definition at line 224 of file Pin.hh.
The documentation for this class was generated from the following files: