This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28335: 28335使用AIC23双通道输出不同的波形

Part Number: TMS320F28335


通过DRR1和DRR2向左右通道发送数据(各16位)由音频芯片的DAC输出成正弦波,在给的值不同的情况下,两个耳机声道的值相同,似乎均采用DRR1的值,DRR2的值直接无效。

AIC23设为主模式且左右通道更新已打开,貌似是 Master mode USB模式下 BCLK=MCLK  DSP模式  16位的输入数据长度,对这个整体的流程不太了解,有文档的话希望能推荐一下,谢谢!!!

参考文档:320AIC23.pdf

想请前辈们帮忙指导一下或者能提供一些参考例程,感谢!

AIC23与DSP的具体配置如下:

AIC23寄存器设置:

AIC23Write(0x00,0x00);
Delay(100);
AIC23Write(0x02,0x00);
Delay(100);
AIC23Write(0x04,0xff);//耳机左声道控制
Delay(100);
AIC23Write(0x06,0xff);//耳机右声道控制
Delay(100);
AIC23Write(0x08,0x14);//模拟音频路径控制
Delay(100);
AIC23Write(0x0A,0x00);//数字音频路径控制
Delay(100);
AIC23Write(0x0C,0x00);//断电控制
Delay(100);
AIC23Write(0x0E,0x43);//数字音频接口格式 貌似是 Master mode USB模式下 BCLK=MCLK  DSP模式  16位的输入数据长度。
Delay(100);
AIC23Write(0x10,0x1f);//Sample Rate Control clock 为USB mode
Delay(100);
AIC23Write(0x12,0x01);// Digital Interface Activation
Delay(100); //AIC23Init

McbspaRegs.SPCR1.all=0;
McbspaRegs.SPCR2.all=0;
McbspaRegs.SPCR1.all = SPCR10_VAL;
McbspaRegs.SPCR2.all = SPCR20_VAL; //仿真停止期间,串口时钟继续运行
McbspaRegs.PCR.all = PCR0_VAL; //上升沿采样

McbspaRegs.XCR1.all = XCR10_VAL;
McbspaRegs.XCR2.all = XCR20_VAL;
McbspaRegs.RCR1.all = RCR10_VAL;
McbspaRegs.RCR2.all = RCR20_VAL;

McbspaRegs.DXR1.all = 0;//清楚数据

McbspaRegs.MFFINT.bit.RINT = 1;//中断管理
McbspaRegs.SPCR1.bit.RRST = 1;//打开串口接收
McbspaRegs.SPCR2.bit.XRST = 1;//打开串口发送