Speeduino
Loading...
Searching...
No Matches
Typedefs | Functions | Variables
auxChannelController.cpp File Reference
#include "auxChannelController.h"
#include "auxChannelController_detail.h"
#include "src/pins/pinMapping.h"
#include "unit_testing.h"
#include "sensors.h"
#include "comms_secondary.h"
#include "globals.h"

Typedefs

using fnSendCanCommand_t = void(*)(uint8_t cmdtype, uint16_t canaddress, uint8_t candata1, uint8_t candata2, uint16_t sourcecanAddress)
 
using fnReadAuxanalog_t = uint16_t(*)(uint8_t analogPin)
 
using fnReadAuxdigital_t = decltype(&digitalRead)
 

Functions

static bool isExternalInput (uint8_t selector)
 
static bool isAnalogInput (uint8_t selector)
 
static uint8_t getAnalogPin (uint8_t channel, const config9 &page9)
 
static bool isDigitalInput (uint8_t selector)
 
static uint8_t getDigitalPin (uint8_t channel, const config9 &page9)
 
void initAuxChannels (statuses &current, const config9 &page9)
 
TESTABLE_STATIC void auxChannelControl (statuses &current, const config9 &page9, fnSendCanCommand_t fnSendCanCommand, fnReadAuxanalog_t fnReadAuxanalog, fnReadAuxdigital_t fnReadAuxdigital)
 
void auxChannelControl (statuses &current, const config9 &page9)
 

Variables

TESTABLE_STATIC state _auxState
 
constexpr uint8_t MASK_SELECTORA = 0b00000011
 
constexpr uint8_t SELECTORA_ANALOG = 0b00000010
 
constexpr uint8_t SELECTORA_DIGITAL = 0b00000011
 
constexpr uint8_t MASK_SELECTORB = 0b00001100
 
constexpr uint8_t SELECTORB_EXTERNAL = 0b00000100
 
constexpr uint8_t SELECTORB_ANALOG = 0b00001000
 
constexpr uint8_t SELECTORB_DIGITAL = 0b00001100
 
constexpr uint8_t MASK_SOURCEA = 0b00100000
 
constexpr uint8_t MASK_SOURCEB = 0b01000000
 
constexpr uint8_t SOURCEB_SECONDARY_SERIAL = 0b00000000
 
constexpr uint8_t SOURCEB_INTERNAL_CAN = 0b01000000
 
constexpr uint8_t MASK_SOURCEC = 0b10000000
 
constexpr uint8_t SOURCEC_INTERNAL_CAN = 0b10000000
 
constexpr uint8_t MASK_ANALOG_PIN = 0b00111111
 
constexpr uint8_t MASK_DIGITAL_PIN = 0b00111111
 
constexpr uint16_t MASK_SOURCE_ADDRESS = 0b0000'0111'1111'1111
 

Typedef Documentation

◆ fnReadAuxanalog_t

using fnReadAuxanalog_t = uint16_t (*)(uint8_t analogPin)

◆ fnReadAuxdigital_t

using fnReadAuxdigital_t = decltype(&digitalRead)

◆ fnSendCanCommand_t

using fnSendCanCommand_t = void (*)(uint8_t cmdtype, uint16_t canaddress, uint8_t candata1, uint8_t candata2, uint16_t sourcecanAddress)

Function Documentation

◆ auxChannelControl() [1/2]

void auxChannelControl ( statuses &  current,
const config9 &  page9 
)

◆ auxChannelControl() [2/2]

TESTABLE_STATIC void auxChannelControl ( statuses &  current,
const config9 &  page9,
fnSendCanCommand_t  fnSendCanCommand,
fnReadAuxanalog_t  fnReadAuxanalog,
fnReadAuxdigital_t  fnReadAuxdigital 
)

◆ getAnalogPin()

static uint8_t getAnalogPin ( uint8_t  channel,
const config9 &  page9 
)
inlinestatic

◆ getDigitalPin()

static uint8_t getDigitalPin ( uint8_t  channel,
const config9 &  page9 
)
inlinestatic

◆ initAuxChannels()

void initAuxChannels ( statuses &  current,
const config9 &  page9 
)

◆ isAnalogInput()

static bool isAnalogInput ( uint8_t  selector)
inlinestatic

◆ isDigitalInput()

static bool isDigitalInput ( uint8_t  selector)
inlinestatic

◆ isExternalInput()

static bool isExternalInput ( uint8_t  selector)
inlinestatic

Variable Documentation

◆ _auxState

◆ MASK_ANALOG_PIN

constexpr uint8_t MASK_ANALOG_PIN = 0b00111111
constexpr

◆ MASK_DIGITAL_PIN

constexpr uint8_t MASK_DIGITAL_PIN = 0b00111111
constexpr

◆ MASK_SELECTORA

constexpr uint8_t MASK_SELECTORA = 0b00000011
constexpr

◆ MASK_SELECTORB

constexpr uint8_t MASK_SELECTORB = 0b00001100
constexpr

◆ MASK_SOURCE_ADDRESS

constexpr uint16_t MASK_SOURCE_ADDRESS = 0b0000'0111'1111'1111
constexpr

◆ MASK_SOURCEA

constexpr uint8_t MASK_SOURCEA = 0b00100000
constexpr

◆ MASK_SOURCEB

constexpr uint8_t MASK_SOURCEB = 0b01000000
constexpr

◆ MASK_SOURCEC

constexpr uint8_t MASK_SOURCEC = 0b10000000
constexpr

◆ SELECTORA_ANALOG

constexpr uint8_t SELECTORA_ANALOG = 0b00000010
constexpr

◆ SELECTORA_DIGITAL

constexpr uint8_t SELECTORA_DIGITAL = 0b00000011
constexpr

◆ SELECTORB_ANALOG

constexpr uint8_t SELECTORB_ANALOG = 0b00001000
constexpr

◆ SELECTORB_DIGITAL

constexpr uint8_t SELECTORB_DIGITAL = 0b00001100
constexpr

◆ SELECTORB_EXTERNAL

constexpr uint8_t SELECTORB_EXTERNAL = 0b00000100
constexpr

◆ SOURCEB_INTERNAL_CAN

constexpr uint8_t SOURCEB_INTERNAL_CAN = 0b01000000
constexpr

◆ SOURCEB_SECONDARY_SERIAL

constexpr uint8_t SOURCEB_SECONDARY_SERIAL = 0b00000000
constexpr

◆ SOURCEC_INTERNAL_CAN

constexpr uint8_t SOURCEC_INTERNAL_CAN = 0b10000000
constexpr