尊敬的团队:
我将28377D McBSP 仿真为 SPI、以与 CPLD 进行通信、将 DSP 设置为主机、将 CPLD 设置为从器件(仅一个从器件)。
我检查了芯片选择、CLK 和传输信号是否正常、并且 CPLD 发送到 DSP 的数据也可以通过示波器看到。 但在 CCS 在线仿真中、我们观察到 DRR1始终显示0xFF。 这是什么原因?
此致
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.
尊敬的团队:
我将28377D McBSP 仿真为 SPI、以与 CPLD 进行通信、将 DSP 设置为主机、将 CPLD 设置为从器件(仅一个从器件)。
我检查了芯片选择、CLK 和传输信号是否正常、并且 CPLD 发送到 DSP 的数据也可以通过示波器看到。 但在 CCS 在线仿真中、我们观察到 DRR1始终显示0xFF。 这是什么原因?
此致
尊敬的惠特尼:
我要将 McBSP 传输到 SPI 端口。 为了验证是否是硬件问题、我首先将这四个引脚配置到 SPI 中、并观察 CPLD 通信发送和接收的数据。 配置 SPI 时、发送和接收的数据没有问题。 但是、如果这四个端口被配置为 McBSP 扩展的 SPI 端口、则接收到的数据将会有问题。 McbspbReg.DRR1.all = 0xFF、且始终为0xFF (I 以16位发送)。
输入总线似乎一直被上拉。 但是进入 DSP 的 GPIO 端口的电平是正确的、并非所有端口都是高电平。 我不知道配置在哪里出错。 这是我的初始化配置:
McbspaRegs.SPCR2.all=0x0000;//重置 FS 发生器、采样率//发生器和发送器
McbspaRegs.SPCR1.all=0x0000;//复位接收器、右对齐字
McbspaRegs.pcr.bit.all = 0x0F08;
McbspaRegs.SPCR1.bit.DLB = 0;
McbspaRegs.SPCR1.bit.CLKSTP= 3;
McbspaRegs.pcr.bit.CLKXP=0;
McbspaRegs.pcr.bit.CLKRP = 1;
McbspaRegs.RCR2.bit.RDATDLY = 01;// RX 数据延迟为1位
McbspaRegs.XCR2.bit.XDATDLY= 01;// TX 数据延迟为1位
McbspaRegs.RCR1.bit.RWDLEN1 = 2;// 16位字
McbspaRegs.XCR1.bit.xWDLEN1 = 01;// 16位字
McbspaRegs.SRGR2.bit.all = 0x2000;
McbspaRegs.SRGR1.bit.all = 19;
McbspaRegs.SPCR2.GRST=1;
delay_loop();
McbspaRegs.SPCR2.XRST=1;
McbspaRegs.SPCR1.RRST=1;
McbspaRegs.SPCR2.frst=1;
此致