Control Surface  1.1.1
MIDI Control Surface library for Arduino
ShiftRegisterOut.hpp
Go to the documentation of this file.
1 /* ✔ */
2 
3 #pragma once
4 
6 AH_DIAGNOSTIC_WERROR() // Enable errors on warnings
7 
8 #include "ShiftRegisterOutBase.hpp"
9 
11 #include <Arduino.h> // MSBFIRST
13 
15 
22 template <uint8_t N>
24  public:
26 
57  ShiftRegisterOut(pin_t dataPin, pin_t clockPin, pin_t latchPin,
58  BitOrder_t bitOrder = MSBFIRST);
59 
65  void begin() override;
66 
70  void update() override;
71 
72  private:
73  const pin_t dataPin;
74  const pin_t clockPin;
75 };
76 
78 
79 #include "ShiftRegisterOut.ipp"
80 
AH::ShiftRegisterOut::clockPin
const pin_t clockPin
Definition: ShiftRegisterOut.hpp:74
Warnings.hpp
AH::ShiftRegisterOutBase
A class for serial-in/parallel-out shift registers, like the 74HC595.
Definition: ShiftRegisterOutBase.hpp:25
AH::ShiftRegisterOut
A class for serial-in/parallel-out shift registers, like the 74HC595.
Definition: ShiftRegisterOut.hpp:23
AH::pin_t
uint16_t pin_t
The type for Arduino pins (and ExtendedIOElement pins).
Definition: Hardware-Types.hpp:17
AH::ShiftRegisterOut::dataPin
const pin_t dataPin
Definition: ShiftRegisterOut.hpp:73
ShiftRegisterOut.ipp
AH_DIAGNOSTIC_POP
#define AH_DIAGNOSTIC_POP()
Definition: Warnings.hpp:17
AH_DIAGNOSTIC_EXTERNAL_HEADER
#define AH_DIAGNOSTIC_EXTERNAL_HEADER()
Definition: Warnings.hpp:18
AH::ShiftRegisterOut::BitOrder_t
typename ShiftRegisterOutBase< N >::BitOrder_t BitOrder_t
Definition: ShiftRegisterOut.hpp:25
AH_DIAGNOSTIC_WERROR
#define AH_DIAGNOSTIC_WERROR()
Definition: Warnings.hpp:16
AH::ShiftRegisterOutBase::BitOrder_t
uint8_t BitOrder_t
Definition: ShiftRegisterOutBase.hpp:30
BEGIN_AH_NAMESPACE
#define BEGIN_AH_NAMESPACE
Definition: AH/Settings/NamespaceSettings.hpp:9
END_AH_NAMESPACE
#define END_AH_NAMESPACE
Definition: AH/Settings/NamespaceSettings.hpp:10