I'm planning on using the McASP1 to transmit 2-slot I2S data. I'd like to handle the transmit and receive with the CPU (not DMA) because I have 2 32 bit words to transmit and receive, but they are transmitted and received seldomly. That is, I do not have an audio signal, but instead am driving an ADC/DAC chip that talks I2S.
DMA seems like overkill for two 32 bit words. I expect the receive and transmit channels to be synchronous. Will the shift registers allow me to perform this:
write, write, read, read
or will I need to
write, read, write, read?
That is, if I don't read the first slot's data before the second slot's data is shifted in, will the receive shift register hold the data? (I expect no additional receive data to come in before I read both slots of data).