daisy¶
Hardware defines and helpers for daisy field platform. More...
Namespaces¶
Name |
---|
daisy::MAX11300Types |
daisy::patch_sm |
daisy::seed |
Classes¶
Name | |
---|---|
struct | daisy::Pin representation of hardware port/pin combination |
class | daisy::DaisyField |
class | daisy::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 | daisy::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 | daisy::DaisyPetal Helpers and hardware definitions for daisy petal. |
class | daisy::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 | daisy::DaisySeed This is the higher-level interface for the Daisy board. All basic peripheral configuration/initialization is setup here. . |
class | daisy::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 | daisy::Apds9960I2CTransport |
class | daisy::Apds9960 Device support for APDS9960 gesture / RGB / proximity sensor. |
class | daisy::Ak4556 |
class | daisy::Pcm3060 |
class | daisy::Wm8731 |
class | daisy::DotStarSpiTransport SPI Transport for DotStars. |
class | daisy::DotStar Device support for Adafruit DotStar LEDs (Opsco SK9822) |
class | daisy::Dps310I2CTransport |
class | daisy::Dps310SpiTransport |
class | daisy::Dps310 Device support for DPS310 Barometric Pressure and Altitude Sensor. |
class | daisy::Icm20948I2CTransport |
class | daisy::Icm20948SpiTransport |
class | daisy::Icm20948 Device support for ICM20948 IMU sensor. |
class | daisy::LcdHD44780 Device Driver for 16x2 LCD panel. HD44780 with 4 data lines. Example product: https://www.adafruit.com/product/181. |
class | daisy::LedDriverPca9685 |
class | daisy::MAX11300MultiSlaveSpiTransport |
class | daisy::MAX11300Driver Device Driver for the MAX11300 20 port ADC/DAC/GPIO device. |
class | daisy::Mcp23017Transport |
class | daisy::Mcp23X17 |
class | daisy::Mpr121I2CTransport |
class | daisy::Mpr121 Device support for MPR121 12x Capacitive Touch Sensor. |
class | daisy::NeoPixelI2CTransport |
class | daisy::NeoPixel Device support for Adafruit Neopixel Device. |
class | daisy::NeoTrellisI2CTransport |
class | daisy::NeoTrellis Device support for the Adafruit Neotrellis device. |
class | daisy::SSD130xI2CTransport |
class | daisy::SSD130x4WireSpiTransport |
class | daisy::SSD130x4WireSoftSpiTransport |
class | daisy::SSD130xDriver |
class | daisy::ShiftRegister4021 Device Driver for CD4021 shift register. |
class | daisy::Tlv493dI2CTransport |
class | daisy::Tlv493d Device support for TLV493D Magnetic Sensor. |
class | daisy::AudioHandle Audio Engine Handle. |
class | daisy::AnalogControl Hardware Interface for control inputs Primarily designed for ADC input controls such as potentiometers, and control voltage. . |
class | daisy::OneBitGraphicsDisplay |
class | daisy::OneBitGraphicsDisplayImpl |
class | daisy::Rectangle |
class | daisy::OledDisplay |
class | daisy::Encoder Generic Class for handling Quadrature Encoders Inspired/influenced by Mutable Instruments (pichenettes) Encoder classes. |
class | daisy::GateIn Generic Class for handling gate inputs through GPIO. |
class | daisy::Led LED Class providing simple Software PWM ability, etc Eventually this will work with hardware PWM, and external LED Driver devices as well. |
class | daisy::Logger Interface for simple USB logging. |
class | daisy::Logger< LOGGER_NONE > |
class | daisy::LoggerImpl Logging I/O underlying implementation. |
class | daisy::LoggerImpl< LOGGER_INTERNAL > Specialization for internal USB port. |
class | daisy::LoggerImpl< LOGGER_EXTERNAL > Specialization for external USB port. |
class | daisy::LoggerImpl< LOGGER_SEMIHOST > Specialization for semihosting (stdout) |
class | daisy::MidiUartTransport Transport layer for sending and receiving MIDI data over UART. |
class | daisy::MidiHandler Simple MIDI Handler Parses bytes from an input into valid MidiEvents. The MidiEvents fill a FIFO queue that the user can pop messages from. |
class | daisy::MidiParser Utility class for parsing raw byte streams into MIDI messages. |
struct | daisy::NoteOffEvent |
struct | daisy::NoteOnEvent |
struct | daisy::PolyphonicKeyPressureEvent |
struct | daisy::ControlChangeEvent |
struct | daisy::ProgramChangeEvent |
struct | daisy::ChannelPressureEvent |
struct | daisy::PitchBendEvent |
struct | daisy::ChannelModeEvent |
struct | daisy::SystemExclusiveEvent |
struct | daisy::MTCQuarterFrameEvent |
struct | daisy::SongPositionPointerEvent |
struct | daisy::SongSelectEvent |
struct | daisy::AllSoundOffEvent |
struct | daisy::ResetAllControllersEvent |
struct | daisy::LocalControlEvent |
struct | daisy::AllNotesOffEvent |
struct | daisy::OmniModeOffEvent |
struct | daisy::OmniModeOnEvent |
struct | daisy::MonoModeOnEvent |
struct | daisy::PolyModeOnEvent |
struct | daisy::MidiEvent |
class | daisy::Parameter |
class | daisy::RgbLed |
class | daisy::Switch |
class | daisy::Switch3 |
class | daisy::USBHostHandle Presents a USB Mass Storage Device host interface. |
class | daisy::MidiUsbTransport USB Transport for MIDI. |
struct | daisy::WavFileInfo |
class | daisy::WavPlayer |
struct | daisy::AdcChannelConfig Configuration Structure for an ADC Channel. |
class | daisy::AdcHandle Handler for analog to digital conversion. |
class | daisy::DacHandle DAC handle for Built-in DAC Peripheral. |
class | daisy::GPIO General Purpose I/O control. |
class | daisy::I2CHandle |
class | daisy::QSPIHandle |
class | daisy::Random True Random Number Generator access. |
class | daisy::SaiHandle |
class | daisy::SdmmcHandler |
class | daisy::SpiHandle |
class | daisy::MultiSlaveSpiHandle |
class | daisy::TimerHandle Hardare timer peripheral support. |
class | daisy::UartHandler |
class | daisy::FatFSInterface Daisy FatFS Driver Interface. |
class | daisy::System |
class | daisy::AbstractMenu Base class for complex menus. |
class | daisy::ButtonMonitor A button monitor that generates events in a UiEventQueue. |
class | daisy::FullScreenItemMenu A menu page for small screens. |
class | daisy::PotMonitor A potentiometer monitor that generates events in a UiEventQueue. |
struct | daisy::UiCanvasDescriptor A descriptor for a canvas in the UI system. |
class | daisy::UiPage The base class for a page in the UI system. |
class | daisy::UI A generic UI system. |
class | daisy::UiEventQueue A queue that holds user input events in the UI system. |
class | daisy::Color |
class | daisy::CpuLoadMeter |
class | daisy::FIFOBase |
class | daisy::FIFO |
class | daisy::FixedCapStrBase |
class | daisy::FixedCapStr |
class | daisy::MappedValue |
class | daisy::MappedFloatValue |
class | daisy::MappedIntValue |
class | daisy::MappedStringListValue |
class | daisy::PersistentStorage Non Volatile storage class for persistent settings on an external flash device. |
class | daisy::RingBuffer |
class | daisy::RingBuffer< T, 0 > |
class | daisy::ScopedIrqBlocker |
class | daisy::StackBase |
class | daisy::Stack |
class | daisy::VoctCalibration Helper class for calibrating an input to 1V/oct response. |
struct | daisy::WAV_FormatTypeDef |
class | daisy::WaveTableLoader |
class | daisy::WavWriter |
Types¶
Functions¶
Name | |
---|---|
MCPRegister | operator+(MCPRegister a, MCPPort b) |
void | dsy_i2c_global_init() |
void | dsy_spi_global_init() |
void | dsy_uart_global_init() |
template <class CharType ,std::size_t capacity> constexpr void |
Swap(const FixedCapStr< capacity, CharType > & lhs, const FixedCapStr< capacity, CharType > & rhs) |
Attributes¶
Name | |
---|---|
daisy::System::BootInfo | boot_info |
const uint32_t | kWavFileChunkId |
const uint32_t | kWavFileWaveId |
const uint32_t | kWavFileSubChunk1Id |
const uint32_t | kWavFileSubChunk2Id |
Detailed Description¶
Hardware defines and helpers for daisy field platform.
Copyright (C) Johannes Elliesen, 2021
Types Documentation¶
using MidiUartHandler¶
shorthand accessors for MIDI Handlers
using MidiUsbHandler¶
shorthand accessors for MIDI Handlers
enum GPIOPort¶
Enumerator | Value | Description |
---|---|---|
PORTA | Port A | |
PORTB | Port B | |
PORTC | Port C | |
PORTD | Port D | |
PORTE | Port E | |
PORTF | Port F | |
PORTG | Port G | |
PORTH | Port H | |
PORTI | Port I | |
PORTJ | Port J | |
PORTK | Port K | |
PORTX | Used as a dummy port to signal an invalid pin. |
GPIO Port names.
enum MCPRegister¶
Enumerator | Value | Description |
---|---|---|
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".
enum MCPPort¶
Enumerator | Value | Description |
---|---|---|
A | 0 | |
B | 1 |
enum MCPMode¶
Enumerator | Value | Description |
---|---|---|
INPUT | ||
INPUT_PULLUP | ||
OUTPUT |
enum Alignment¶
Enumerator | Value | Description |
---|---|---|
centered | ||
topLeft | ||
topCentered | ||
topRight | ||
bottomLeft | ||
bottomCentered | ||
bottomRight | ||
centeredLeft | ||
centeredRight |
Justifications
enum LoggerDestination¶
Enumerator | Value | Description |
---|---|---|
LOGGER_NONE | mute logging | |
LOGGER_INTERNAL | internal USB port | |
LOGGER_EXTERNAL | external USB port | |
LOGGER_SEMIHOST | stdout |
Enumeration of destination ports for debug logging
enum MidiMessageType¶
Enumerator | Value | Description |
---|---|---|
NoteOff | & | |
NoteOn | & | |
PolyphonicKeyPressure | & | |
ControlChange | & | |
ProgramChange | & | |
ChannelPressure | & | |
PitchBend | & | |
SystemCommon | & | |
SystemRealTime | & | |
ChannelMode | & | |
MessageLast | & |
Parsed from the Status Byte, these are the common Midi Messages that can be handled.
At this time only 3-byte messages are correctly parsed into MidiEvents.
enum SystemCommonType¶
Enumerator | Value | Description |
---|---|---|
SystemExclusive | & | |
MTCQuarterFrame | & | |
SongPositionPointer | & | |
SongSelect | & | |
SCUndefined0 | & | |
SCUndefined1 | & | |
TuneRequest | & | |
SysExEnd | & | |
SystemCommonLast | & |
enum SystemRealTimeType¶
Enumerator | Value | Description |
---|---|---|
TimingClock | & | |
SRTUndefined0 | & | |
Start | & | |
Continue | & | |
Stop | & | |
SRTUndefined1 | & | |
ActiveSensing | & | |
Reset | & | |
SystemRealTimeLast | & |
enum ChannelModeType¶
Enumerator | Value | Description |
---|---|---|
AllSoundOff | & | |
ResetAllControllers | & | |
LocalControl | & | |
AllNotesOff | & | |
OmniModeOff | & | |
OmniModeOn | & | |
MonoModeOn | & | |
PolyModeOn | & | |
ChannelModeLast | & |
enum ApplicationTypeDef¶
Enumerator | Value | Description |
---|---|---|
APPLICATION_IDLE | 0 | |
APPLICATION_START | ||
APPLICATION_READY | ||
APPLICATION_DISCONNECT |
Status of USB Host application
enum ArrowButtonType¶
Enumerator | Value | Description |
---|---|---|
left | 0 | The left arrow button. |
right | The right arrow button. | |
up | The up arrow button. | |
down | The down arrow button. |
The type of arrow button in the UI system.
Author: jelliesen
enum WavFileFormatCode¶
Enumerator | Value | Description |
---|---|---|
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.
using Apds9960I2C¶
using DotStarSpi¶
using Dps310I2C¶
using Dps310Spi¶
using Icm20948I2C¶
using Icm20948Spi¶
using MAX11300¶
template <size_t num_devices =1>
using daisy::MAX11300 = typedef daisy::MAX11300Driver<MAX11300MultiSlaveSpiTransport, num_devices>;
using Mcp23017¶
using Mpr121I2C¶
using NeoPixelI2C¶
using NeoTrellisI2C¶
using SSD130x4WireSpi128x64Driver¶
using daisy::SSD130x4WireSpi128x64Driver = typedef daisy::SSD130xDriver<128, 64, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 128x64 OLED displays connected via 4 wire SPI
using SSD130x4WireSpi128x32Driver¶
using daisy::SSD130x4WireSpi128x32Driver = typedef daisy::SSD130xDriver<128, 32, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 128x32 OLED displays connected via 4 wire SPI
using SSD130x4WireSpi98x16Driver¶
using daisy::SSD130x4WireSpi98x16Driver = typedef daisy::SSD130xDriver<98, 16, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 98x16 OLED displays connected via 4 wire SPI
using SSD130x4WireSpi64x48Driver¶
using daisy::SSD130x4WireSpi64x48Driver = typedef daisy::SSD130xDriver<64, 48, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 64x48 OLED displays connected via 4 wire SPI
using SSD130x4WireSpi64x32Driver¶
using daisy::SSD130x4WireSpi64x32Driver = typedef daisy::SSD130xDriver<64, 32, SSD130x4WireSpiTransport>;
A driver for the SSD1306/SSD1309 64x32 OLED displays connected via 4 wire SPI
using SSD130xI2c128x64Driver¶
A driver for the SSD1306/SSD1309 128x64 OLED displays connected via I2C
using SSD130xI2c128x32Driver¶
A driver for the SSD1306/SSD1309 128x32 OLED displays connected via I2C
using SSD130xI2c98x16Driver¶
A driver for the SSD1306/SSD1309 98x16 OLED displays connected via I2C
using SSD130xI2c64x48Driver¶
A driver for the SSD1306/SSD1309 64x48 OLED displays connected via I2C
using SSD130xI2c64x32Driver¶
A driver for the SSD1306/SSD1309 64x32 OLED displays connected via I2C
using SSD130x4WireSoftSpi128x64Driver¶
using daisy::SSD130x4WireSoftSpi128x64Driver = typedef daisy::SSD130xDriver<128, 64, SSD130x4WireSoftSpiTransport>;
A driver for the SSD1306/SSD1309 128x64 OLED displays connected via 4 wire SPI
using Tlv493dI2C¶
Functions Documentation¶
function operator+¶
function dsy_i2c_global_init¶
internal. Used for global init.
function dsy_spi_global_init¶
internal. Used for global init.
function dsy_uart_global_init¶
internal. Used for global init.
function Swap¶
template <class CharType ,
std::size_t capacity>
inline constexpr void Swap(
const FixedCapStr< capacity, CharType > & lhs,
const FixedCapStr< capacity, CharType > & rhs
)
Attributes Documentation¶
variable boot_info¶
variable kWavFileChunkId¶
Constants for In-Header IDs "RIFF"
variable kWavFileWaveId¶
"WAVE"
variable kWavFileSubChunk1Id¶
"fmt "
variable kWavFileSubChunk2Id¶
"data"
Updated on 2024-01-03 at 19:41:00 +0000