Audio I/O with PCM3003 and DSP/BIOS

Started by jaleitao2003 July 16, 2003

I'm using a TMS320C6711 DSP with a PCM3003 Audio Daughter card.
Can anybody explain me how to configure the DSP/BIOS (for RTDX
usage) on a program that uses hardware interrupts
(like 'loop_intr_pcm' by R. Chassaing)?

This is what I am doing (please correct):

-Initialize the audio codec (c6x11_dsk_init(), see code bellow).
-The interrupts are initialized by the DSP/BIOS configuration, so
they are not configured in my code.
-In the DSP/BIOS configuration, select HWI_INT11 and fill in with
MCSP_0_RECEIVE and the function to call. Do I need to use
Dispatcher, since the function which is called is written in C?

What am I missing (am I doing anyhing right?... :S )

I also tried 'An Audio Example Using DSP/BIOS' (SPRA598), but it
uses the onboard AD535 instead of my PCM3003...


void c6x11_dsk_init() /* dsp and periphiral initialization */
CSR=0x100; /* disable all interrupts */
IER=1; /* disable all interrupts except NMI */
ICR=0xffff; /* clear all pending interrupts */
*(unsigned volatile int *)EMIF_GCR = 0x3300; /*EMIF global
control */
*(unsigned volatile int *)EMIF_CE0 = 0x30; /*EMIF CE0control*/
*(unsigned volatile int *)EMIF_CE1 = 0xffffff23; /*EMIF CE1
control, 8bit async */
*(unsigned volatile int *)EMIF_SDCTRL = 0x57116000; /* EMIF
SDRAM control */
*(unsigned volatile int *)EMIF_SDRP = 0x61a; /* EMIF SDRM refresh
period */
*(unsigned volatile int *)EMIF_SDEXT = 0x54529; /* EMIF SDRAM
extension */