Microchip® Advanced Software Framework

qs_i2s_dma.c File Reference

SAM I2S - Inter-IC Sound Controller DMA Quickstart.

Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.

#include <asf.h>
#include <conf_i2s_quick_start_dma.h>

Functions

static void _config_dma_for_tx (void)
 [config_dma_for_rx] More...
 
static void _configure_i2s (void)
 [config_dma_for_tx] More...
 
 COMPILER_ALIGNED (16)
 [rx_dma_resource] [rx_dma_descriptor] More...
 
int main (void)
 [setup] More...
 

Variables

struct i2s_module i2s_instance
 [module_inst] More...
 
struct dma_resource rx_dma_resource
 [rx_dma_resource] More...
 
uint16_t rx_values [4] = {0xEEEE, 0xEEEE, 0xEEEE, 0xEEEE}
 [module_inst] More...
 
struct dma_resource tx_dma_resource
 [tx_dma_resource] More...
 

static void _config_dma_for_tx ( void  )
static
static void _configure_i2s ( void  )
static

[config_dma_for_tx]

[setup]

[setup_i2s_init]

[setup_i2s_init]

[setup_clock_unit_config]

[setup_clock_unit_config] [setup_clock_unit_config_defaults]

[setup_clock_unit_config_defaults]

[setup_clock_unit_change_config]

[setup_clock_unit_change_config]

[setup_clock_unit_change_pins]

[setup_clock_unit_change_pins]

[setup_clock_unit_set_config]

[setup_clock_unit_set_config]

[setup_serializer_config]

[setup_serializer_config] [setup_serializer_config_defaults]

[setup_serializer_config_defaults]

[setup_serializer_change_config_tx]

[setup_serializer_change_config_tx]

[setup_serializer_change_config_pin_tx]

[setup_serializer_change_config_pin_tx]

[setup_serializer_set_config_tx]

[setup_serializer_set_config_tx]

[setup_serializer_change_config_rx]

[setup_serializer_change_config_rx]

[setup_serializer_change_config_pin_rx]

[setup_serializer_change_config_pin_rx]

[setup_serializer_set_config_rx]

[setup_serializer_set_config_rx]

[setup_enable]

[setup_enable]

References i2s_clock_unit_config::clock, i2s_serializer_config::clock_unit, i2s_frame_config::data_delay, i2s_serializer_config::data_pin, i2s_serializer_config::data_size, i2s_pin_config::enable, i2s_clock_unit_config::frame, i2s_frame_config::frame_sync, i2s_clock_unit_config::fs_pin, GCLK_GENERATOR_0, i2s_clock_config::gclk_src, i2s_pin_config::gpio, I2S_CLOCK_UNIT_0, i2s_clock_unit_enable(), i2s_clock_unit_get_config_defaults(), i2s_clock_unit_set_config(), I2S_DATA_DELAY_0, I2S_DATA_SIZE_16BIT, i2s_enable(), I2S_FRAME_SYNC_SOURCE_SCKDIV, I2S_FRAME_SYNC_WIDTH_HALF_FRAME, i2s_init(), i2s_instance, I2S_MASTER_CLOCK_SOURCE_GCLK, I2S_SERIAL_CLOCK_SOURCE_MCKDIV, I2S_SERIALIZER_0, I2S_SERIALIZER_1, i2s_serializer_enable(), i2s_serializer_get_config_defaults(), I2S_SERIALIZER_RECEIVE, i2s_serializer_set_config(), I2S_SERIALIZER_TRANSMIT, I2S_SLOT_SIZE_32_BIT, i2s_serializer_config::loop_back, i2s_clock_config::mck_out_div, i2s_clock_config::mck_out_enable, i2s_clock_unit_config::mck_pin, i2s_clock_config::mck_src, i2s_serializer_config::mode, i2s_pin_config::mux, i2s_frame_config::number_slots, i2s_clock_config::sck_div, i2s_clock_unit_config::sck_pin, i2s_clock_config::sck_src, i2s_frame_config::slot_size, i2s_frame_sync_config::source, and i2s_frame_sync_config::width.

Referenced by main().

COMPILER_ALIGNED ( 16  )

[rx_dma_resource] [rx_dma_descriptor]

[tx_dma_resource] [tx_dma_descriptor]

[rx_dma_descriptor] [rx_variables] [tx_variables]

[tx_dma_descriptor] [tx_variables] [config_dma_for_rx]

[config_dma_resource_for_rx] [dma_setup_1]

[dma_setup_1]

[dma_setup_2]

[dma_setup_2]

[dma_setup_3]

[dma_setup_3]

[dma_setup_4]

[dma_setup_4] [config_dma_resource_for_rx]

[config_dma_descriptor_for_rx] [dma_setup_5]

[dma_setup_5]

[dma_setup_6]

[dma_setup_6]

[dma_setup_7]

[dma_setup_7]

[dma_setup_8]

[dma_setup_8]

[dma_setup_9]

[dma_setup_9] [config_dma_descriptor_for_rx]

[config_dma_job_for_rx] [dma_setup_10]

[dma_setup_10] [dma_setup_11]

[dma_setup_11] [config_dma_job_for_rx]

int main ( void  )

[setup]

[setup_init] [setup_dma]

[setup_dma]

[setup_init]

[main]

[main_loop]

[main_loop]

[main]

References _config_dma_for_tx(), _configure_i2s(), and system_init().

struct i2s_module i2s_instance

[module_inst]

struct dma_resource rx_dma_resource

[rx_dma_resource]

uint16_t rx_values[4] = {0xEEEE, 0xEEEE, 0xEEEE, 0xEEEE}

[module_inst]

[rx_variables]

struct dma_resource tx_dma_resource

[tx_dma_resource]

Referenced by _config_dma_for_tx().