SAMV71 Xplained Ultra Software Package 1.5

AUDDSpeakerDriver.h File Reference

#include <USBLib_Types.h>
#include <USBRequests.h>
#include <USBDescriptors.h>
#include <AUDDescriptors.h>
#include "USBD.h"
#include <USBDDriver.h>
#include <AUDDSpeakerPhone.h>

Go to the source code of this file.

Data Structures

struct  _AUDHeaderDescriptor1
struct  _AUDFeatureUnitDescriptor3
struct  _AUDDSpeakerDriverAudioControlDescriptors
struct  _AUDFormatTypeOneDescriptor1
struct  _AUDDSpeakerDriverConfigurationDescriptors

Defines

#define AUDDSpeakerDriver_MASTERCHANNEL   0
#define AUDDSpeakerDriver_LEFTCHANNEL   1
#define AUDDSpeakerDriver_RIGHTCHANNEL   2
#define AUDDSpeakerDriver_RECCHANNEL   0
#define AUDDSpeakerDriver_NUMCHANNELS   2
#define AUDDSpeakerDriverDescriptors_CONTROL   0
#define AUDDSpeakerDriverDescriptors_STREAMING   1
#define AUDDSpeakerDriver_NUMINTERFACES   2
#define AUDDSpeakerDriverDescriptors_INPUTTERMINAL   AUDD_ID_SpeakerIT
#define AUDDSpeakerDriverDescriptors_OUTPUTTERMINAL   AUDD_ID_SpeakerOT
#define AUDDSpeakerDriverDescriptors_FEATUREUNIT   AUDD_ID_SpeakerFU

Functions

struct _AUDHeaderDescriptor1 __attribute__ ((__packed__)) AUDHeaderDescriptor1
void AUDDSpeakerDriver_Initialize (const USBDDriverDescriptors *pDescriptors)
void AUDDSpeakerDriver_ConfigurationChangeHandler (uint8_t cfgnum)
void AUDDSpeakerDriver_InterfaceSettingChangedHandler (uint8_t interface, uint8_t setting)
void AUDDSpeakerDriver_RequestHandler (const USBGenericRequest *request)
uint8_t AUDDSpeakerDriver_Read (void *buffer, uint32_t length, TransferCallback callback, void *argument)
WEAK void AUDDSpeakerDriver_MuteChanged (uint8_t channel, uint8_t muted)
WEAK void AUDDSpeakerDriver_StreamSettingChanged (uint8_t newSetting)

Variables

AUDHeaderDescriptor header
uint8_t bInterface0
AUDFeatureUnitDescriptor feature
uint8_t bmaControls [3]
uint8_t iFeature
AUDInputTerminalDescriptor input
AUDOutputTerminalDescriptor output
AUDFormatTypeOneDescriptor formatType
uint8_t tSamFreq [3]
USBConfigurationDescriptor configuration
USBInterfaceDescriptor control
AUDDSpeakerDriverAudioControlDescriptors controlDescriptors
USBInterfaceDescriptor streamingOutNoIsochronous
USBInterfaceDescriptor streamingOut
AUDStreamingInterfaceDescriptor streamingOutClass
AUDFormatTypeOneDescriptor1 streamingOutFormatType
AUDEndpointDescriptor streamingOutEndpoint
AUDDataEndpointDescriptor streamingOutDataEndpoint

Detailed Description

Purpose

Definition of a USB Audio Speaker Driver with two playback channels.

Usage

  1. Enable and setup USB related pins (see pio & board.h).
  2. Configure the USB Audio Speaker driver using AUDDSpeakerDriver_Initialize
  3. To get audio stream frames from host, use AUDDSpeakerDriver_Read

Definition in file AUDDSpeakerDriver.h.


Variable Documentation

uint8_t bInterface0

Id of the first grouped interface - Speaker.

Definition at line 156 of file AUDDSpeakerDriver.h.

uint8_t bmaControls[3]

Available controls for each channel.

Definition at line 172 of file AUDDSpeakerDriver.h.

USBConfigurationDescriptor configuration

Standard configuration.

Definition at line 230 of file AUDDSpeakerDriver.h.

USBInterfaceDescriptor control

Audio control interface.

Definition at line 232 of file AUDDSpeakerDriver.h.

AUDDSpeakerDriverAudioControlDescriptors controlDescriptors

Descriptors for the audio control interface.

Definition at line 234 of file AUDDSpeakerDriver.h.

AUDFeatureUnitDescriptor3 feature

Feature unit descriptor.

Definition at line 170 of file AUDDSpeakerDriver.h.

AUDFormatTypeOneDescriptor formatType

Format type I descriptor.

Definition at line 201 of file AUDDSpeakerDriver.h.

AUDHeaderDescriptor1 header

Header descriptor.

Header descriptor (with one slave interface).

Definition at line 154 of file AUDDSpeakerDriver.h.

uint8_t iFeature

Index of a string descriptor for the feature unit.

Definition at line 174 of file AUDDSpeakerDriver.h.

AUDInputTerminalDescriptor input

Input terminal descriptor.

Definition at line 190 of file AUDDSpeakerDriver.h.

AUDOutputTerminalDescriptor output

Output terminal descriptor.

Definition at line 192 of file AUDDSpeakerDriver.h.

USBInterfaceDescriptor streamingOut

Streaming out interface descriptor.

Definition at line 239 of file AUDDSpeakerDriver.h.

AUDStreamingInterfaceDescriptor streamingOutClass

Audio class descriptor for the streaming out interface.

Definition at line 241 of file AUDDSpeakerDriver.h.

AUDDataEndpointDescriptor streamingOutDataEndpoint

Audio class descriptor for the streaming out endpoint.

Definition at line 247 of file AUDDSpeakerDriver.h.

AUDEndpointDescriptor streamingOutEndpoint

Streaming out endpoint descriptor.

Definition at line 245 of file AUDDSpeakerDriver.h.

AUDFormatTypeOneDescriptor1 streamingOutFormatType

Stream format descriptor.

Definition at line 243 of file AUDDSpeakerDriver.h.

USBInterfaceDescriptor streamingOutNoIsochronous

Streaming out interface descriptor (with no endpoint, required).

Definition at line 237 of file AUDDSpeakerDriver.h.

uint8_t tSamFreq[3]

Sampling frequency in Hz.

Definition at line 203 of file AUDDSpeakerDriver.h.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines