数据比特发送是在串行时钟的下降沿并且采样在串行时钟的上升沿。字选择线选指示传输通道,一个低电平是供给左声道一个高电平是供给右声道。
在I2S格式,典型的配置和描述如下。这些配置没有列出全部所需的设置。只是最基础的。另一些配置是根据每个需求,如时钟和DMA配置。
情况1:I2S 16比特紧密立体声
时隙长度配置成16比特组(CLKCTRL0.SLOTSIZE=0x1)
时隙数量配置成2(CLKCTRL0.NBSLOTS=0x01)
数据长度配置为16比特紧密立体声模式(SERCTRL0.DATASIZE=0x05)
帧同步数据延迟配置成1比特延迟(CLKCTRLn.BITDELAY=0x01)
帧同步宽度配置成HALF帧(CLKCTRLn.FSWIDTH=0x01)
情况2:i2S 24比特立体声带有24比特时隙
时隙长度配置为24比特(CLKCTRL0.SLOTSIZE=0x2)
时隙数配置为2(CLKCTRL.NBSLOTS=0x1)
数据长度配置为24比特(SERCTRL0.DATASIZE=0x01)
数据同步延时配置为1延时比特(CLKCTRLn.BITDELY= 0x01)
帧同步宽度配置为HALF帧(CLKCTRLn.FSWIDTH=0X01)
在两种情况下,将确保字选择信号是"低电平"是给左声道并且"高电平"给右声道。传输的字的长度可以通过写在串行器控制m寄存器(SCRCTRLm.DATASIZE)数据字长度比特组在8,16,20,24,和32比特之间选择。
如果时隙允许比在SERCTRLm.DATASIZE字段指定多的数据比特,增加的比特添加到传输或者接收数据字,正如SERCTRLm.EXTEND字段指定的。如果时隙允许比编程少的数据比特,额外的比特将不被传输,或者接收数据字是以SCRCTRLm.EXTEND字段为基础的扩充。
|