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 |
[config_dma_for_rx]
[config_dma_for_tx]
[config_dma_resource_for_tx]
[config_dma_resource_for_tx]
[config_dma_descriptor_for_tx]
[config_dma_descriptor_for_tx]
[config_dma_job_for_tx]
[config_dma_job_for_tx]
References dma_descriptor_config::beat_size, dma_descriptor_config::block_transfer_count, dma_descriptor_config::destination_address, dma_add_descriptor(), dma_allocate(), DMA_BEAT_SIZE_HWORD, dma_descriptor_create(), dma_descriptor_get_config_defaults(), dma_get_config_defaults(), dma_start_transfer_job(), DMA_TRIGGER_ACTION_BEAT, dma_descriptor_config::dst_increment_enable, dma_resource_config::peripheral_trigger, dma_descriptor_config::source_address, dma_resource_config::trigger_action, and tx_dma_resource.
Referenced by main().
|
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().