1) A block of 16-bit stereo audio data having the size of 4551792 bytes is transferred via I2S interface configured in DMA mode with 16-bit data width and DMA interrupts enabled. The sampling frequency is 44.1 kHz. Determine the maximum amount of data (total number of samples) per DMA transfer to implement playback so that all DMA transfers have the same size. Determine the time interval between DMA Transfer Complete Interrupts.

First, let's calculate the total number of samples in the audio data block:

Total number of bytes = 4551792 bytes
Data width = 16 bits = 2 bytes

Total number of samples = Total number of bytes / Data width
Total number of samples = 4551792 bytes / 2 bytes = 2275896 samples

Next, let's calculate the maximum amount of data (total number of samples) per DMA transfer so that all transfers have the same size:

DMA data width = 16 bits = 2 bytes
DMA transfer size = 1 DMA transfer = 1 block of audio data

Maximum samples per DMA transfer = Maximum DMA data size / Data width
Maximum samples per DMA transfer = 65536 bytes / 2 bytes = 32768 samples

Therefore, the maximum amount of data (total number of samples) per DMA transfer is 32768 samples.

Finally, let's determine the time interval between DMA Transfer Complete Interrupts:

Sampling frequency = 44.1 kHz
Samples per second = 44.1 kHz

Time interval between interrupts = Maximum samples per DMA transfer / Sampling frequency
Time interval between interrupts = 32768 samples / 44.1 kHz ≈ 0.742 seconds

Therefore, the time interval between DMA Transfer Complete Interrupts is approximately 0.742 seconds.