Serial Wombat 18AB Firmware
Classes | Public Attributes | List of all members
_pin_register_t Union Reference

A union representing all the possible pin modes, with meanings for each. More...

#include <types.h>

Classes

struct  ad_average_n
 
struct  ad_filter_1st_order_n
 
struct  bitstreamOutput_n
 
struct  button_counter_n
 
struct  counter_n
 
struct  datalogger_n
 
struct  debounce_n
 
struct  diagnostics_n
 
struct  generic_n
 A generic descriptor, typically used to access the buffer and mode variables. More...
 
struct  hd44780_n
 
struct  hw_pulse_width_n
 
struct  hysteresis_n
 
struct  keypad16_n
 
struct  lookup2d_n
 
struct  max7219_n
 
struct  min_max_n
 
struct  morse_n
 
struct  parallel_8n
 
struct  pid_n
 
struct  ping_n
 
struct  pulse_n
 
struct  pulse_output_n
 
struct  pwm_follow_direct_n
 
struct  pwm_queue_fixed_period_n
 
struct  pwm_queue_variable_period_n
 
struct  pwm_sine_n
 
struct  quadEnc_n
 
struct  remote_n
 
struct  rotary_encn
 
struct  servo_n
 
struct  sevenseg_n
 
struct  slowpwm_n
 
struct  spi_master_n
 
struct  uart_rx_n
 
struct  uart_tx_n
 
struct  un4step_n
 
struct  watchdog_n
 

Public Attributes

uint8_t bytes [32]
 
uint16_t uwords [16]
 
struct _pin_register_t::generic_n generic
 
struct _pin_register_t::pulse_output_n pulse_output
 
struct _pin_register_t::bitstreamOutput_n bitstream_output
 
struct _pin_register_t::morse_n morse
 
struct _pin_register_t::max7219_n max7219
 
struct _pin_register_t::spi_master_n spi_master
 
struct _pin_register_t::slowpwm_n slowpwm
 
struct _pin_register_t::parallel_8n parallel8
 
struct _pin_register_t::hd44780_n hd44780
 
struct _pin_register_t::pulse_n pulse
 
struct _pin_register_t::datalogger_n datalogger
 
struct _pin_register_t::watchdog_n watchdog
 
struct _pin_register_t::un4step_n un4step
 
struct _pin_register_t::debounce_n debounce
 
struct _pin_register_t::button_counter_n button_counter
 
struct _pin_register_t::rotary_encn rotary_enc
 
struct _pin_register_t::keypad16_n keypad16
 
struct _pin_register_t::uart_rx_n uart_rx
 
struct _pin_register_t::uart_tx_n uart_tx
 
struct _pin_register_t::remote_n remote
 
struct _pin_register_t::sevenseg_n sevenseg
 
struct _pin_register_t::hysteresis_n hysteresis
 
struct _pin_register_t::counter_n counter
 
struct _pin_register_t::quadEnc_n quadEnc
 
struct _pin_register_t::servo_n servo
 
struct _pin_register_t::ping_n ping
 
struct _pin_register_t::diagnostics_n diagnostics
 
struct _pin_register_t::pwm_follow_direct_n pwm_follow_direct
 
struct _pin_register_t::pwm_queue_fixed_period_n pwm_queue_fixed_period
 
struct _pin_register_t::pwm_queue_variable_period_n pwm_queue_variable_period
 
struct _pin_register_t::pwm_sine_n pwm_sine
 
struct _pin_register_t::ad_filter_1st_order_n ad_filter_1st_order
 
struct _pin_register_t::ad_average_n ad_average
 
struct _pin_register_t::min_max_n min_max
 
struct _pin_register_t::lookup2d_n lookup2d
 
struct _pin_register_t::pid_n pid
 
struct _pin_register_t::hw_pulse_width_n hw_pulse_width
 

Detailed Description

A union representing all the possible pin modes, with meanings for each.

Each pin mode can have up to 8 bytes of context data, plus 2 bytes for public data, a byte for the mode, 4 bytes for software-driven hardware emulation (such as PWM). An additional byte is undefined, for a total of 16 bytes. This may turn out to be more than 16 bytes on platforms that don't support the proprietary int24 type. The size must remain 16 bytes because of assembly routines that do the copy from the array of pin contexts to the directly accessible tp variable

Member Data Documentation

◆ ad_average

struct _pin_register_t::ad_average_n _pin_register_t::ad_average

◆ ad_filter_1st_order

struct _pin_register_t::ad_filter_1st_order_n _pin_register_t::ad_filter_1st_order

◆ bitstream_output

struct _pin_register_t::bitstreamOutput_n _pin_register_t::bitstream_output

◆ button_counter

struct _pin_register_t::button_counter_n _pin_register_t::button_counter

◆ bytes

uint8_t _pin_register_t::bytes

◆ counter

struct _pin_register_t::counter_n _pin_register_t::counter

◆ datalogger

struct _pin_register_t::datalogger_n _pin_register_t::datalogger

◆ debounce

struct _pin_register_t::debounce_n _pin_register_t::debounce

◆ diagnostics

struct _pin_register_t::diagnostics_n _pin_register_t::diagnostics

◆ generic

struct _pin_register_t::generic_n _pin_register_t::generic

◆ hd44780

struct _pin_register_t::hd44780_n _pin_register_t::hd44780

◆ hw_pulse_width

struct _pin_register_t::hw_pulse_width_n _pin_register_t::hw_pulse_width

◆ hysteresis

struct _pin_register_t::hysteresis_n _pin_register_t::hysteresis

◆ keypad16

struct _pin_register_t::keypad16_n _pin_register_t::keypad16

◆ lookup2d

struct _pin_register_t::lookup2d_n _pin_register_t::lookup2d

◆ max7219

struct _pin_register_t::max7219_n _pin_register_t::max7219

◆ min_max

struct _pin_register_t::min_max_n _pin_register_t::min_max

◆ morse

struct _pin_register_t::morse_n _pin_register_t::morse

◆ parallel8

struct _pin_register_t::parallel_8n _pin_register_t::parallel8

◆ pid

struct _pin_register_t::pid_n _pin_register_t::pid

◆ ping

struct _pin_register_t::ping_n _pin_register_t::ping

◆ pulse

struct _pin_register_t::pulse_n _pin_register_t::pulse

◆ pulse_output

struct _pin_register_t::pulse_output_n _pin_register_t::pulse_output

◆ pwm_follow_direct

struct _pin_register_t::pwm_follow_direct_n _pin_register_t::pwm_follow_direct

◆ pwm_queue_fixed_period

struct _pin_register_t::pwm_queue_fixed_period_n _pin_register_t::pwm_queue_fixed_period

◆ pwm_queue_variable_period

struct _pin_register_t::pwm_queue_variable_period_n _pin_register_t::pwm_queue_variable_period

◆ pwm_sine

struct _pin_register_t::pwm_sine_n _pin_register_t::pwm_sine

◆ quadEnc

struct _pin_register_t::quadEnc_n _pin_register_t::quadEnc

◆ remote

struct _pin_register_t::remote_n _pin_register_t::remote

◆ rotary_enc

struct _pin_register_t::rotary_encn _pin_register_t::rotary_enc

◆ servo

struct _pin_register_t::servo_n _pin_register_t::servo

◆ sevenseg

struct _pin_register_t::sevenseg_n _pin_register_t::sevenseg

◆ slowpwm

struct _pin_register_t::slowpwm_n _pin_register_t::slowpwm

◆ spi_master

struct _pin_register_t::spi_master_n _pin_register_t::spi_master

◆ uart_rx

struct _pin_register_t::uart_rx_n _pin_register_t::uart_rx

◆ uart_tx

struct _pin_register_t::uart_tx_n _pin_register_t::uart_tx

◆ un4step

struct _pin_register_t::un4step_n _pin_register_t::un4step

◆ uwords

uint16_t _pin_register_t::uwords

◆ watchdog

struct _pin_register_t::watchdog_n _pin_register_t::watchdog