Namespace daisy¶
Hardware defines and helpers for daisy field platform. More...
Namespaces¶
Type | Name |
---|---|
namespace | MAX11300Types |
namespace | patch_sm |
namespace | seed |
Classes¶
Type | Name |
---|---|
class | AbstractMenu Base class for complex menus. |
struct | AdcChannelConfig Configuration Structure for an ADC Channel. |
class | AdcHandle Handler for analog to digital conversion. |
class | Ak4556 |
struct | AllNotesOffEvent |
struct | AllSoundOffEvent |
class | AnalogControl Hardware Interface for control inputs Primarily designed for ADC input controls such as potentiometers, and control voltage. . |
class | Apds9960 <typename Transport> Device support for APDS9960 gesture / RGB / proximity sensor. |
class | Apds9960I2CTransport |
class | AudioHandle Audio Engine Handle. |
class | ButtonMonitor <typename BackendType, numButtons> A button monitor that generates events in a UiEventQueue . |
struct | ChannelModeEvent |
struct | ChannelPressureEvent |
class | Color |
class | ColorGraphicsDisplay |
class | ColorGraphicsDisplayImpl <class ChildType> |
struct | ControlChangeEvent |
class | CpuLoadMeter |
class | DacHandle DAC handle for Built-in DAC Peripheral. |
class | DaisyField |
class | DaisyLegio Class that handles initializing all of the hardware specific to the Virt Iter Legio hardware. Helper funtions are also in place to provide easy access to built-in controls and peripherals. |
class | DaisyPatch Class that handles initializing all of the hardware specific to the Daisy Patch Board. Helper funtions are also in place to provide easy access to built-in controls and peripherals. |
class | DaisyPetal Helpers and hardware definitions for daisy petal. |
class | DaisyPod Class that handles initializing all of the hardware specific to the Daisy Patch Board. Helper funtions are also in place to provide easy access to built-in controls and peripherals. |
class | DaisySeed This is the higher-level interface for the Daisy board. All basic peripheral configuration/initialization is setup here. . |
class | DaisyVersio Class that handles initializing all of the hardware specific to the Desmodus Versio hardware. Helper funtions are also in place to provide easy access to built-in controls and peripherals. |
class | DotStar <typename Transport> Device support for Adafruit DotStar LEDs (Opsco SK9822) |
class | DotStarSpiTransport SPI Transport for DotStars. |
class | Dps310 <typename Transport> Device support for DPS310 Barometric Pressure and Altitude Sensor. |
class | Dps310I2CTransport |
class | Dps310SpiTransport |
class | Encoder Generic Class for handling Quadrature Encoders Inspired/influenced by Mutable Instruments (pichenettes)Encoder classes. |
class | FIFO <typename T, capacity> |
class | FIFOBase <typename T> |
class | FatFSInterface Daisy FatFS Driver Interface. |
class | FixedCapStr <capacity, class CharType> |
class | FixedCapStrBase <class CharType> |
class | FullScreenItemMenu A menu page for small screens. |
class | GPIO General Purpose I/O control. |
class | GateIn Generic Class for handling gate inputs through GPIO . |
class | I2CHandle |
class | Icm20948 <typename Transport> Device support for ICM20948 IMU sensor. |
class | Icm20948I2CTransport |
class | Icm20948SpiTransport |
class | LcdHD44780 Device Driver for 16x2 LCD panel. HD44780 with 4 data lines. Example product:https://www.adafruit.com/product/181 . |
class | Led LED Class providing simple Software PWM ability, etc Eventually this will work with hardware PWM, and external LED Driver devices as well. |
class | LedDriverPca9685 <numDrivers, persistentBufferContents> |
struct | LocalControlEvent |
class | Logger <dest> Interface for simple USB logging. |
class | Logger< LOGGER_NONE > <> |
class | LoggerImpl <dest> Logging I/O underlying implementation. |
class | LoggerImpl< LOGGER_EXTERNAL > <> Specialization for external USB port. |
class | LoggerImpl< LOGGER_INTERNAL > <> Specialization for internal USB port. |
class | LoggerImpl< LOGGER_SEMIHOST > <> Specialization for semihosting (stdout) |
class | MAX11300Driver <typename Transport, num_devices> Device Driver for the MAX11300 20 port ADC/DAC/GPIO device. |
class | MAX11300MultiSlaveSpiTransport |
struct | MTCQuarterFrameEvent |
class | MappedFloatValue |
class | MappedIntValue |
class | MappedStringListValue |
class | MappedValue |
class | Mcp23017Transport |
class | Mcp23X17 <typename Transport> |
struct | MidiEvent |
class | MidiHandler <typename Transport> Simple MIDI Handler Parses bytes from an input into valid MidiEvents. The MidiEvents fill aFIFO queue that the user can pop messages from. |
class | MidiParser Utility class for parsing raw byte streams into MIDI messages. |
class | MidiUartTransport Transport layer for sending and receiving MIDI data over UART. |
class | MidiUsbTransport USB Transport for MIDI. |
struct | MonoModeOnEvent |
class | Mpr121 <typename Transport> Device support for MPR121 12x Capacitive Touch Sensor. |
class | Mpr121I2CTransport |
class | MultiSlaveSpiHandle |
class | NeoPixel <typename Transport> Device support for Adafruit Neopixel Device. |
class | NeoPixelI2CTransport |
class | NeoTrellis <typename Transport> Device support for the Adafruit Neotrellis device. |
class | NeoTrellisI2CTransport |
struct | NoteOffEvent |
struct | NoteOnEvent |
class | OledColorDisplay <typename DisplayDriver> |
class | OledDisplay <typename DisplayDriver> |
struct | OmniModeOffEvent |
struct | OmniModeOnEvent |
class | OneBitGraphicsDisplay |
class | OneBitGraphicsDisplayImpl <class ChildType> |
class | PWMHandle Hardware PWM using the timer peripheral. |
class | Parameter |
class | Pcm3060 |
class | PersistentStorage <typename SettingStruct> Non Volatile storage class for persistent settings on an external flash device. |
struct | Pin representation of hardware port/pin combination |
struct | PitchBendEvent |
struct | PolyModeOnEvent |
struct | PolyphonicKeyPressureEvent |
class | PotMonitor <typename BackendType, numPots> A potentiometer monitor that generates events in a UiEventQueue . |
struct | ProgramChangeEvent |
class | QSPIHandle |
class | Random True Random Number Generator access. |
class | Rectangle |
struct | ResetAllControllersEvent |
class | RgbLed |
class | RingBuffer <typename T, size> |
class | RingBuffer< T, 0 > <typename T> |
class | SH1106Driver <width, height, typename Transport> |
class | SSD1307Driver <width, height, typename Transport> |
class | SSD130x4WireSoftSpiTransport |
class | SSD130x4WireSpiTransport |
class | SSD130xDriver <width, height, typename Transport> |
class | SSD130xI2CTransport |
class | SSD13274WireSpiTransport |
class | SSD1327Driver <width, height, typename Transport> |
class | SSD13514WireSpiTransport |
class | SSD1351Driver <width, height, typename Transport> |
class | SaiHandle |
class | ScopedIrqBlocker |
class | SdmmcHandler |
class | ShiftRegister4021 <num_daisychained, num_parallel> Device Driver for CD4021 shift register. |
class | ShiftRegister595 Device Driver for 8-bit shift register. CD74HC595 - 8-bit serial to parallel output shift. |
struct | SongPositionPointerEvent |
struct | SongSelectEvent |
class | SpiHandle |
class | Stack <typename T, capacity> |
class | StackBase <typename T> |
class | Switch |
class | Switch3 |
class | System |
struct | SystemExclusiveEvent |
class | TimerHandle Hardare timer peripheral support. |
class | Tlv493d <typename Transport> Device support for TLV493D Magnetic Sensor. |
class | Tlv493dI2CTransport |
class | UI A generic UI system. |
class | USBHostHandle Presents a USB Mass Storage Device host interface. |
class | UartHandler |
struct | UiCanvasDescriptor A descriptor for a canvas in the UI system. |
class | UiEventQueue A queue that holds user input events in the UI system. |
class | UiPage The base class for a page in the UI system. |
class | VoctCalibration Helper class for calibrating an input to 1V/oct response. |
struct | WAV_FormatTypeDef |
struct | WavFileInfo |
class | WavPlayer |
class | WavWriter <transfer_size> |
class | WaveTableLoader |
class | Wm8731 |
struct | dsy_gpio_pin |
Public Types¶
Public Attributes¶
Type | Name |
---|---|
volatile daisy::System::BootInfo | boot_info |
const size_t | kMaxSr595DaisyChain = 16 |
const uint32_t | kWavFileChunkId = 0x46464952 |
const uint32_t | kWavFileSubChunk1Id = 0x20746d66 |
const uint32_t | kWavFileSubChunk2Id = 0x61746164 |
const uint32_t | kWavFileWaveId = 0x45564157 |
Public Functions¶
Type | Name |
---|---|
void | GPIOClockEnable (Pin p) |
constexpr uint32_t | GetHALPin (Pin p) |
constexpr GPIO_TypeDef * | GetHALPort (Pin p) |
constexpr void | Swap (const FixedCapStr< capacity, CharType > & lhs, const FixedCapStr< capacity, CharType > & rhs) noexcept |
void | dsy_i2c_global_init () |
MCPRegister | operator+ (MCPRegister a, MCPPort b) |
Detailed Description¶
Copyright (C) Johannes Elliesen, 2021
Public Types Documentation¶
enum Alignment¶
enum daisy::Alignment {
centered,
topLeft,
topCentered,
topRight,
bottomLeft,
bottomCentered,
bottomRight,
centeredLeft,
centeredRight
};
Justifications
typedef Apds9960I2C¶
enum ApplicationTypeDef¶
enum daisy::ApplicationTypeDef {
APPLICATION_IDLE = 0,
APPLICATION_START,
APPLICATION_READY,
APPLICATION_DISCONNECT
};
Status of USB Host application
enum ArrowButtonType¶
The type of arrow button in the UI system.
Author:
jelliesen
typedef DotStarSpi¶
typedef Dps310I2C¶
typedef Dps310Spi¶
enum GPIOPort¶
GPIO Port names.
enum daisy::GPIOPort {
PORTA,
PORTB,
PORTC,
PORTD,
PORTE,
PORTF,
PORTG,
PORTH,
PORTI,
PORTJ,
PORTK,
PORTX
};
typedef Icm20948I2C¶
typedef Icm20948Spi¶
enum LoggerDestination¶
Enumeration of destination ports for debug logging
enum MCPMode¶
enum MCPPort¶
enum MCPRegister¶
enum daisy::MCPRegister {
IODIR_A = 0x00,
IODIR_B = 0x01,
IPOL_A = 0x02,
IPOL_B = 0x03,
GPINTEN_A = 0x04,
GPINTEN_B = 0x05,
DEFVAL_A = 0x06,
DEFVAL_B = 0x07,
INTCON_A = 0x08,
INTCON_B = 0x09,
IOCON = 0x0A,
GPPU_A = 0x0C,
GPPU_B = 0x0D,
INTF_A = 0x0E,
INTF_B = 0x0F,
INTCAP_A = 0x10,
INTCAP_B = 0x11,
GPIO_A = 0x12,
GPIO_B = 0x13,
OLAT_A = 0x14,
OLAT_B = 0x15
};
Registers addresses. The library use addresses for IOCON.BANK = 0. See "3.2.1 Byte mode and Sequential mode".
typedef Mcp23017¶
typedef NeoPixelI2C¶
typedef NeoTrellisI2C¶
typedef SH11064WireSpi128x64Driver¶
A driver for SH1106 128x64 OLED displays connected via 4 wire SPI
typedef SH1106I2c128x64Driver¶
A driver for SH1106 128x64 OLED displays connected via I2C
typedef SSD13074WireSpi128x128Driver¶
using daisy::SSD13074WireSpi128x128Driver = typedef daisy::SSD1307Driver<128, 128, SSD130x4WireSpiTransport>;
A driver for the SSD1307 128x128 OLED displays connected via 4 wire SPI
typedef SSD13074WireSpi128x64Driver¶
using daisy::SSD13074WireSpi128x64Driver = typedef daisy::SSD1307Driver<128, 64, SSD130x4WireSpiTransport>;
A driver for the SSD1307 128x64 OLED displays connected via 4 wire SPI
typedef SSD13074WireSpi128x80Driver¶
using daisy::SSD13074WireSpi128x80Driver = typedef daisy::SSD1307Driver<128, 80, SSD130x4WireSpiTransport>;
A driver for the SSD1307 128x80 OLED displays connected via 4 wire SPI
typedef SSD1307I2c128x128Driver¶
A driver for the SSD1307 128x128 OLED displays connected via I2C
typedef SSD1307I2c128x64Driver¶
A driver for the SSD1307 128x64 OLED displays connected via I2C
typedef SSD1307I2c128x80Driver¶
A driver for the SSD1307 128x80 OLED displays connected via I2C
typedef SSD130x4WireSoftSpi128x64Driver¶
using daisy::SSD130x4WireSoftSpi128x64Driver = typedef daisy::SSD130xDriver<128, 64, SSD130x4WireSoftSpiTransport>;
A driver for the SSD1306/SSD1309 128x64 OLED displays connected via 4 wire SPI
typedef SSD130x4WireSpi128x32Driver¶
using daisy::SSD130x4WireSpi128x32Driver = typedef daisy::SSD130xDriver<128, 32, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 128x32 OLED displays connected via 4 wire SPI
typedef SSD130x4WireSpi128x64Driver¶
using daisy::SSD130x4WireSpi128x64Driver = typedef daisy::SSD130xDriver<128, 64, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 128x64 OLED displays connected via 4 wire SPI
typedef SSD130x4WireSpi64x32Driver¶
using daisy::SSD130x4WireSpi64x32Driver = typedef daisy::SSD130xDriver<64, 32, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 64x32 OLED displays connected via 4 wire SPI
typedef SSD130x4WireSpi64x48Driver¶
using daisy::SSD130x4WireSpi64x48Driver = typedef daisy::SSD130xDriver<64, 48, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 64x48 OLED displays connected via 4 wire SPI
typedef SSD130x4WireSpi98x16Driver¶
using daisy::SSD130x4WireSpi98x16Driver = typedef daisy::SSD130xDriver<98, 16, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 98x16 OLED displays connected via 4 wire SPI
typedef SSD130xI2c128x32Driver¶
A driver for the SSD1306/SSD1309 128x32 OLED displays connected via I2C
typedef SSD130xI2c128x64Driver¶
A driver for the SSD1306/SSD1309 128x64 OLED displays connected via I2C
typedef SSD130xI2c64x32Driver¶
A driver for the SSD1306/SSD1309 64x32 OLED displays connected via I2C
typedef SSD130xI2c64x48Driver¶
A driver for the SSD1306/SSD1309 64x48 OLED displays connected via I2C
typedef SSD130xI2c98x16Driver¶
A driver for the SSD1306/SSD1309 98x16 OLED displays connected via I2C
typedef SSD13274WireSpi128x128Driver¶
using daisy::SSD13274WireSpi128x128Driver = typedef daisy::SSD1327Driver<128, 128, SSD13274WireSpiTransport>;
A driver for the SSD1327 128x128 OLED displays connected via 4 wire SPI
typedef SSD13514WireSpi128x128Driver¶
using daisy::SSD13514WireSpi128x128Driver = typedef daisy::SSD1351Driver<128, 128, SSD13514WireSpiTransport>;
A driver for the SSD1351 128x128 OLED displays connected via 4 wire SPI
typedef Tlv493dI2C¶
enum WavFileFormatCode¶
enum daisy::WavFileFormatCode {
WAVE_FORMAT_PCM = 0x0001,
WAVE_FORMAT_IEEE_FLOAT = 0x0003,
WAVE_FORMAT_ALAW = 0x0006,
WAVE_FORMAT_ULAW = 0x0007,
WAVE_FORMAT_EXTENSIBLE = 0xFFFE
};
Standard Format codes for the waveform data.
According to spec, extensible should be used whenever: * PCM data has more than 16 bits/sample * The number of channels is more than 2 * The actual number of bits/sample is not equal to the container size * The mapping from channels to speakers needs to be specified.
enum dsy_gpio_port¶
enum daisy::dsy_gpio_port {
DSY_GPIOA,
DSY_GPIOB,
DSY_GPIOC,
DSY_GPIOD,
DSY_GPIOE,
DSY_GPIOF,
DSY_GPIOG,
DSY_GPIOH,
DSY_GPIOI,
DSY_GPIOJ,
DSY_GPIOK,
DSY_GPIOX,
DSY_GPIO_LAST
};
Enums and a simple struct for defining a hardware pin on the MCU These correlate with the stm32 datasheet, and are used to configure the hardware.
This along with the dsy_gpio_pin class should no longer be used. They are available for backwards compatability.
Please use GPIOPort enum and the Pin struct instead.
Public Attributes Documentation¶
variable boot_info¶
variable kMaxSr595DaisyChain¶
Maximum Number of chained devices Connect device's QH' pin to the next chips serial input
variable kWavFileChunkId¶
Constants for In-Header IDs "RIFF"
variable kWavFileSubChunk1Id¶
"fmt "
variable kWavFileSubChunk2Id¶
"data"
variable kWavFileWaveId¶
"WAVE"
Public Functions Documentation¶
function GPIOClockEnable¶
function GetHALPin¶
function GetHALPort¶
function Swap¶
template<class CharType, std::size_t capacity>
inline constexpr void daisy::Swap (
const FixedCapStr < capacity, CharType > & lhs,
const FixedCapStr < capacity, CharType > & rhs
) noexcept
function dsy_i2c_global_init¶
internal. Used for global init.
function operator+¶
The documentation for this class was generated from the following file external-docs/libDaisy/src/daisy_core.h