I'm trying to set the SAI2 port on the Cortex M4 core of a MVF60NS151CMK50 and when I try to read the memory mapped registers in the I2S_MemMap struct mys system hangs. Has anyone else seen this problem? I'm using MQX 4.1.2 for the Vybrid and the gcc-arm-none-eabi-4_8-2014q1-20140314-linux compiler. In the: _ksai_hw_init function, any time I
try to read the member variables of the I2S_MemMap struct the system hangs. The i2s_ptr has the right value of
0x40031000, but if I try something like:
val = i2s_ptr->RCSR; I get nothing and the systems locks up. This is where I'm looking in the sai_dma_ksai.c file.
/* ================== General receiver configuration ==================== */
if (set_rx)
{
printf("\n Set Rx \n");
uint8_t rx_channel = ksai_init_ptr->RX_CHANNEL;
printf("i2sptr = 0x%.8x \n", i2s_ptr);
printf("i2sptr->rcsr = %d \n", i2s_ptr->RCSR);
i2s_ptr->RCSR = 0;
}
Thanks.
Hi James,
sorry for the delay. Please double check that the clock module is enabled. As you know Vybrid enables clock modules separately.
If your problem persists please indicate me steps to reproduce it.
Carlos