Microchip® Advanced Software Framework

audio_example.c File Reference
#include <stddef.h>
#include <stdio.h>
#include <avr32/io.h>
#include "nlao_cpu.h"
#include "nlao_usart.h"
#include "compiler.h"
#include "board.h"
#include "print_funcs.h"
#include "intc.h"
#include "gpio.h"
#include "pm.h"
#include "flashc.h"
#include "twim.h"
#include "usart.h"
#include "conf_usb.h"
#include "usb_task.h"
#include "host_audio_task.h"
#include "audio_example.h"
#include "controller.h"
#include "tlv320aic23b.h"
#include "et024006dhu.h"
#include "avr32_logo.h"

Functions

int _init_startup (void)
 Low-level initialization routine called during startup, before the main function. More...
 
static void init_codec_gclk (void)
 Sets up generic clock for the audio codec. More...
 
static void init_hmatrix (void)
 Initializes the HSB bus matrix. More...
 
static void init_stdio (void)
 Initializes STDIO. More...
 
static void init_sys_clocks (void)
 Initializes the MCU system clocks. More...
 
static void init_twi (uint32_t fpba_hz)
 
static void init_usb_clock (void)
 Initializes the USB clock. More...
 
int main (void)
 Main function. Execution starts here. More...
 

int _init_startup ( void  )

Low-level initialization routine called during startup, before the main function.

This version comes in replacement to the default one provided by the Newlib add-ons library. Newlib add-ons' _init_startup only calls init_exceptions, but Newlib add-ons' exception and interrupt vectors are defined in the same section and Newlib add-ons' interrupt vectors are not compatible with the interrupt management of the INTC module. More low-level initializations are besides added here.

References _evba, cpu_irq_enable, Enable_global_exception, init_stdio(), irq_initialize_vectors, and Set_system_register.

static void init_codec_gclk ( void  )
static

Sets up generic clock for the audio codec.

References gpio_enable_module_pin(), pm_gc_enable(), pm_gc_setup(), TLV320_PM_GCLK_FUNCTION, and TLV320_PM_GCLK_PIN.

Referenced by init_sys_clocks().

static void init_hmatrix ( void  )
static

Initializes the HSB bus matrix.

Referenced by main().

static void init_usb_clock ( void  )
static

Initializes the USB clock.

References pm_configure_usb_clock().

Referenced by init_sys_clocks().