static void setInsPorts (uint8 mode) { //Set the clock ports if (mode==INS_MODE_I8S) { //I8S on both ports, MCLK=512xBase rate, BCLK inverted = 256FS (drive on neg, sample on pos) insSetClockPort (INS_ID0, INS_MCK_512BR, INS_BCK_256FS, INS_FSYN_LEN_1BIT, 0, 1, 0, true); insSetClockPort (INS_ID1, INS_MCK_512BR, INS_BCK_256FS, INS_FSYN_LEN_1BIT, 0, 1, 0, true); } else { //I4S on both ports, MCLK=512xBase rate, BCLK inverted = 128FS (drive on neg, sample on pos) insSetClockPort (INS_ID0, INS_MCK_512BR, INS_BCK_128FS, INS_FSYN_LEN_1BIT, 0, 1, 0, true); insSetClockPort (INS_ID1, INS_MCK_512BR, INS_BCK_128FS, INS_FSYN_LEN_1BIT, 0, 1, 0, true); } insRxSetDataFormat (INS_ID0, INS_LN0, mode, 1, INS_SHFL_24MSB_FRST_LJST, true); insRxSetDataFormat (INS_ID0, INS_LN1, mode, 1, INS_SHFL_24MSB_FRST_LJST, true); insRxSetDataFormat (INS_ID0, INS_LN2, INS_MODE_I2S, 1, INS_SHFL_24MSB_FRST_LJST, false); insRxSetDataFormat (INS_ID0, INS_LN3, INS_MODE_I2S, 1, INS_SHFL_24MSB_FRST_LJST, false); insTxSetDataFormat (INS_ID0, INS_LN0, mode, 1, INS_SHFL_24MSB_FRST_LJST, true); insTxSetDataFormat (INS_ID0, INS_LN1, mode, 1, INS_SHFL_24MSB_FRST_LJST, true); insTxSetDataFormat (INS_ID0, INS_LN2, INS_MODE_I2S, 1, INS_SHFL_24MSB_FRST_LJST, false); insTxSetDataFormat (INS_ID0, INS_LN3, INS_MODE_I2S, 1, INS_SHFL_24MSB_FRST_LJST, false); }
static void myAppInitI2S (void) { insSetClockPort (INS_ID0, INS_MCK_512BR, INS_BCK_64FS, INS_FSYN_LEN_32BIT, 1, 1, 1, true); insRxSetDataFormatI2S (INS_ID0, INS_LN0, true); insTxSetDataFormatI2S (INS_ID0, INS_LN0, true); }