TMS320C5402 DSP开发调试过程中的问题及解决方案
1、 关于开发工具CCS3.3向下载程序后,出现错误提示“Unable to determine default Pin/Port configuration.”
解决方案:该错误提示是由于CCS软件版本的兼容性问题造成的,可以不管,不会对程序下载造成影响。
2、 XDS510仿真器有时能够连接成功,有时又会连接失败。经过多次实验,发现按照下述操作顺序,仿真器就能够连接成功:
解决方案:1、仿真器连接到目标板的JTAG口;
2、目标板上电;
3、仿真器连接到计算机的USB口;
4、打开CCS3.3软件,点击connect。
3、 怎样判断JTAG口的状态是否正常?
解决方案:若JTAG(针对14PIN)口各引脚的电压如下,则基本说明JTAG口硬件不存在问题:
PIN1(TMS):3.3V PIN2(TRST):0V
PIN3(TDI):3.3V PIN4(GND):0V
PIN5(VCC):3.3V PIN6(NC): 0V
PIN7(TDO):0V PIN8(GND):0V
PIN9(TCK):3.3V PIN10(GND):0V
PIN11(TCK):3.3V PIN12(GND):0V
PIN13(EMU0):3.3V PIN14(EMU1):3.3V
4、 关于复位引脚出现的问题。
解决方案:再检查目标板电路无误后,连接仿真器(仿真器连接成功),向目标板下载程序,程序无法下载成功。在测试相关引脚后,发现DSP芯片的复位引脚一直为低电平,及DSP一直处于复位状态,导致DSP无**常运行。之后发现PCB板上复位芯片的焊盘做反了。找其原因,是在绘制PCB时,为方便布线,(使用Altium Designer软件的快捷键X、Y)对复位芯片的PCB封装做了左右对换,从而导致焊盘顺序反了。复位芯片极有可能已被烧坏。
为解决这个问题,可以将复位芯片直接取掉,将DSP的复位引脚直接通过一个限流电阻接到高电平(5V)。这样电路不具有复位功能,如果需要复位,可以通过上电复位。
5、 CCS3.3工具在下载程序时,出现错误提示“data verification at address 0x0010……”。
解决方案:使用CCS3.3的CPU寄存器查看功能,将寄存器PMST中的OVLY位设置为1(即片内RAM可作为程序区,表明程序可以下载到RAM中),错误不再出现。
另外注意,在点击CCS3.3开发工具中的“Reset CPU”后,同样会出现该错误。解决的方法是重新给DSP上电,重新打开CCS3.3软件,问题解决。也可以重新设置寄存器PMST的OVLY位。
6、 在程序下载成功后,首先验证DSP与AIC23是否通信成功。用示波器分别观察多缓冲串口1(McBSP1)的端口BCKX1、BFSX1、BDX1,发现其信号波形与预期结果一致,但是二者并没有成功通信。
解决方案:多缓冲串口1(McBSP1)的作用是向AIC23发送控制字。二者是通过SPI总线模式进行通信的。查看AIC23芯片的datasheet,SPI总线模式有4条信号线:BFS、BCLK、MISO、MOSI。SPI总线要求数据在时钟的下降沿进行传送,所以需要将McBSP1的发送时钟的极性设置为下降沿进行采样(CLKXP = 1)。正确设置相关寄存器后,McBSP1成功向AIC23发送数据。
另外,在程序编写中,“dat |= addr<<8;”的写法要改成:
tmp = addr<<8;
dat = dat | tmp;
控制字才能正确发送到AIC23,否则也会出现问题。两种写法从语法角度上讲是一致的,并且前一种写法更加精炼,但是前一种写**导致问题出现,至于原因,可能与CCS3.3的编译器有关
7、 McBSP1的帧同步信号的帧周期需设置大一些,以使控制字能够写入AIC23的寄存器中。如下图,将t设置大些,在本程序中,t设置为8个时钟周期。
|