|
|
void | reset (bool resetBanks=false, bool resetAllPins=true) |
|
void | usePullup (bool usePullup, bool resetBanks=false) |
|
void | addAddressBank (PinBank bank) |
|
template<typename T, typename ... Ts> |
| OSCR::Util::enable_if_t<(OSCR::Util::is_same< T, Ts >::value &&...), void > | addAddressBank (T bank, Ts ... banks) |
|
void | addDataBank (PinBank bank) |
|
template<typename T, typename ... Ts> |
| OSCR::Util::enable_if_t<(OSCR::Util::is_same< T, Ts >::value &&...), void > | addDataBank (T bank, Ts ... banks) |
|
void | setClockWritePin (PinBank bank, uint8_t pin) |
|
void | setClockReadPin (PinBank bank, uint8_t pin) |
|
void | setLatchPin (PinBank bank, uint8_t pin) |
|
void | waitLatch () |
|
void | clockRead () |
|
void | clockWrite () |
|
template<typename T> |
| void | setAddress (T newAddress) |
|
template<typename T> |
| T | readData () |
|
template<typename TD, typename TA> |
| TD | readAddress (TA newAddress) |
|
template<typename TD, typename TA> |
| void | setPosition (TA newAddress) |
|
template<typename TD> |
| TD | readNext () |
|
template<typename TA> |
| TA | getPosition () |
|
template<typename T> |
| void | writeData (T outputData) |
|
uint8_t | readBank (PinBank bank) |
|
volatile uint8_t & | getDDR (PinBank bank) |
|
volatile uint8_t & | getPort (PinBank bank) |
|
volatile uint8_t & | getPin (PinBank bank) |
|
void | setBankDir (PinBank bank, PinDirection dir) |
|
void | setMode (DataMode mode) |
|
|
BankSet * | address = new BankSet |
|
BankSet * | data = new BankSet |
|
Pin * | latchPin = new Pin(PinDirection::kIn, false) |
|
Pin * | clockReadPin = new Pin(PinDirection::kOut, false) |
|
Pin * | clockWritePin = new Pin(PinDirection::kOut, false) |
|
bool | useLatchPin = false |
|
uint16_t | clockPeriodRead = 0 |
|
uint16_t | clockPeriodWrite = 0 |
|
bool | pullup = false |
|
size_t | lastAddress = 0 |
The documentation for this class was generated from the following file:
- C:/Developer/Projects/OSCR/oscr-firmware/include/common/PinControl.h