// lab4bmain.c // based on main.c by Educational DSP // Initializes autocorr_out, state, and iseed. // Can be modified for optimization. #include "dsk5510_dual3006cfg.h" #include "dsk5510.h" #include #include "lab4b.h" #define IIR_order 4 extern int iirptr; unsigned int *iseed; extern int autocorr_out[N]; extern int state[IIR_order]; void init_DMA(); void main() { int i; DSK5510_init(); // init BSL DSK5510_rset(DSK5510_MISC, 0x03); // route McBSP0/1 to J3 // Initialize autocorr_out to zero since some values will remain zero for (i = 0; i < N; ++i) { autocorr_out[i] = 0; } for ( i = 0; i < IIR_order; ++i) state[i] = 0; // Start McBSP0 I2S slave MCBSP_start(hMcbsp0, MCBSP_XMIT_START | MCBSP_RCV_START | MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC, 220); // Start McBSP1 I2S master MCBSP_start(hMcbsp1, MCBSP_XMIT_START | MCBSP_RCV_START | MCBSP_SRGR_START | MCBSP_SRGR_FRAMESYNC, 220); init_DMA(); // configure DMA and interrupts *iseed = 1; iirptr = 0; return; // let DSP/BIOS scheduler take over }