DSP仿真器连不上的原因分析

合集下载

DSP常见问题及解决

DSP常见问题及解决

问:我测试你们的程序的时候,go main 进不去主函数,进入的是一段汇编。

是怎么回事?答:程序如果要进行设断点,观察变量等操作,要先调入project文件,然后再调入out文件。

如果是可以直接执行能看到结果的,就直接调入out文件,run就可以。

问:CY68013的固件程序怎么修改?答:在把QQ2812都研究清楚了,有精力有兴趣自己可以买一本EZ-USB的书好好看看。

在此之前,请不要随便更改固件代码,因为一旦出错,可能带来不必要的麻烦。

固件代码是通过USBControlPanel,使用USB接口进行下载的。

:2812的主频是最大150M,我如果想设为100M是在那里设置?答:打开工程,在Source文件夹下,打开DSP28_SysCtro.c文件,找到如下语句,修改即可。

// Initalize PLLSysCtrlRegs.PLLCR = 0x02;///锁相环产生的时钟频率定标,这里配置为30M问:为什么我的程序在SRAM中正常,烧入Flash后不对?答:1、请先确认你编译的时候使用了flash.cmd,推荐使用我们提供的flash.cmd,如果自己更改了这个文件,请先确认cmd文件的正确性;2、编译的时候,如果选择release模式,请检查一下build option,把其中的opt level改为none,即取消编译优化选项,很多语句在优化的时候可能会产生错误的优化结果。

或者选择debug模式编译,烧写正确后再改为release模式,通过对比两种模式的编译选项也能看出其中的区别。

3、程序在flash中运行会比在ram中运行大概慢20%,因此对于一些时序敏感的外设,比如usb总线,就有可能需要调整时序,否则就会有问题。

问:数码管LED显示的时候发送的数据是怎么规定和产生的?答:其实如果自己看程序和原理图自己就可以知道是怎么产生的。

数码管数据如下:Uint16SpiCode[]={0x7E7E,0x2929,0x2c2c,0x6666,0xa4a4,0xa0a0,0x3e3e,0x2020,0x2424,0x22 22,0xe0e0,0xb1b1,0x6868,0xa1a1,0xa3a3,0xffff,0xdfdf};数码管的笔画对应关系如下:63 742 01 5就是说0~7分别对应笔画的a~h,在原理图看就是分别连接的Q0~Q7这个数码管的型号是LG3611BH,是共阳级的,也就是说某个笔画为0的时候,这个笔画被点亮。

DSP常见问题及解决

DSP常见问题及解决

问:我测试你们的‎程序的时候,go main 进不去主函数‎,进入的是一段‎汇编。

是怎么回事?答:程序如果要进‎行设断点,观察变量等操‎作,要先调入pr‎o ject文‎件,然后再调入o‎u t文件。

如果是可以直‎接执行能看到‎结果的,就直接调入o‎u t文件,run就可以‎。

问:CY6801‎3的固件程序‎怎么修改?答:在把QQ28‎12都研究清‎楚了,有精力有兴趣‎自己可以买一‎本EZ-USB的书好‎好看看。

在此之前,请不要随便更‎改固件代码,因为一旦出错‎,可能带来不必‎要的麻烦。

固件代码是通‎过USBCo‎n trolP‎a nel,使用USB接‎口进行下载的‎。

:2812的主‎频是最大15‎0M,我如果想设为‎100M是在‎那里设置?答:打开工程,在Sourc‎e文件夹下,打开DSP2‎8_SysC‎t ro.c文件,找到如下语句‎,修改即可。

// Inital‎i ze PLLSysCtr‎l Regs.PLLCR = 0x02;///锁相环产生的‎时钟频率定标‎,这里配置为3‎0M问:为什么我的程‎序在SRAM‎中正常,烧入Flas‎h后不对?答:1、请先确认你编‎译的时候使用‎了flash‎.cmd,推荐使用我们‎提供的fla‎s h.cmd,如果自己更改‎了这个文件,请先确认cm‎d文件的正确‎性;2、编译的时候,如果选择re‎l ease模‎式,请检查一下b‎u ild option‎,把其中的op‎t level改‎为none,即取消编译优‎化选项,很多语句在优‎化的时候可能‎会产生错误的‎优化结果。

或者选择de‎b ug模式编‎译,烧写正确后再‎改为rele‎a se模式,通过对比两种‎模式的编译选‎项也能看出其‎中的区别。

3、程序在fla‎s h中运行会‎比在ram中‎运行大概慢2‎0%,因此对于一些‎时序敏感的外‎设,比如usb总‎线,就有可能需要‎调整时序,否则就会有问‎题。

DSP调试及烧写和加载常见错误及分析

DSP调试及烧写和加载常见错误及分析

Error: Read status value 0x0001 from symbol PRG_statusFlash algorithm failed during clear operation开始能够正常烧写的 , 可是上机调试了一下就不可以写了.在烧写 lf2407内部flash时出现以下错误,不知是什么原由造成的?Error:Read status value 0x0001 from symbolPRG_status Flash algorithm failed during clear operation.换了一个芯片后正常从前有一次在试 CCS功能时,一不当心点了一次加密,还没有履行完,就立刻点认识密,大体这样烧坏了吧!太柔弱了,不再敢试加密了CMD文件要避开 FLASH的 40H--44H 区间,我也出现过这样的问题,烧写2407A的片内 flash时会出现下边的错误提示:Error: Read status value 0x0001 form symbol PRG_statusFlash algorithm failed during clear operation以后换了一块 2407 就能烧写了。

是不是 2407 的 flash坏了?有没有方法检测或许修复flash?昨天在网上查了一下 , 好多人都碰到了这类问题 , 可能是 dsp 内部 flash 烧坏了吧 ! 今日从头换了一块芯片 , 能够烧录进去了 , 可是上拿到样机上浮试试看 , 再烧录就出现了相同的问题 , 预计又是 flash 坏了 , 究竟是什么原由惹起的 ?是不是电源惹起的呢 ?我也出现过能仿真,但不可以烧写的状况!解决方法:解决方法:降低时钟频次。

点击 FLASH插件上的“ View Config File ”,翻开VAR.h文件。

将该文件中的“ PLL_PATIO_CONST .Set 0000h”改成“PLL_PATIO_CONST .Set 0200h”存盘后,履行目录下的Buildall.bat 批办理文件。

DSP软件应用中出现的问题

DSP软件应用中出现的问题

DSP软件应用中出现的问题自己在使用DSP软件Code Composer Studio v4是遇到一些常见的错误:1:Severity and Description Path Resource Location Creation Time Iderrors encountered during linking; "timer_sdram.out" not builtSeverity and Description Path Resource Location Creation Time Idunresolved symbol _ADC_cal, first referenced in ./DSP2833x_SysCtrl.obj出现这样的问题,通常是少了一些文件,需要手动添加这些文件到工程里解决的方法是:在工程上右击links files to project,之后找到DSP2833x _ADC_cal.asm文件添加到工程里2:当我在用到软件中自带的头文件中的一些结构体,共用体。

说白了就是要对芯片寄存器的位进行操作时软件给我们提供了方便,如果不能“.” 符号不能灵活弹出对应选项时,例如CpuTimer0Regs.TCR.all,应该检查CpuTimer0Regs是否敲写正确,应该编译一下工程,我的做法就是写一个头文件,和主函数,并在函数里写一个InitSysCtrl();(当然前提你的头文件要有定义这个函数)在编译。

3:在学习中遇到了在工程中不用添加头文件,有软件来自动查找,就是得先设置Properties选项,指定头文件的路径,在这之前我一直都是手动添加头文件,很是麻烦,对于不太熟练的我还容易出错,4:还要注意要将我们写的程序中用到的源文件全部添加到工程中(这句话听起来好像没说似的,其实不然),如果我们平时在编写程序时,不注意他,他经常会给添加不必要的麻烦(说白了就是在浪费你的时间)5:我在主函数里用到(“MemCopy(&XintffuncsLoadStart, &XintffuncsLoadEnd, &XintffuncsRunStart);”)编译时出现下列错误提示:unresolved symbol _MemCopy, first referenced in ./timer_sdram.obj这样的问题一看就是MemCopy这的问题,1-可能是在你调用前没有声明,在工程中没有添加这个函数2-我们在用到这个MemCopy时拼写错误自己在学习DSP中,在看过的一些书上有的说过在自己编写工程时不清楚自己工程里要用到什么源文件可以把他们都添加到工程里,今天就出现了问题,由此想起了“尽信书不如无书”6:errors encountered during linking; "cpu_flash1.out" not builtplacement fails for object ".text", size 0x1091 (page 0). Available ranges: RAML1出现这样的错误是因为自己多添加了“DSP2833x_ECan.c”这个文件7:errors encountered during linking; "cpu_flash1.out" not builtsymbol "_delay_loop" redefined: first defined in "./cpu_flash.obj"; redefined in "./DSP2833x_Mcbsp.obj" 我的这个程序是对FLASH进行读写操作,正如提示我多加了“DSP2833x_Mcbsp.h”源文件出现了错误。

DSP调试及烧写和加载常见错误及分析

DSP调试及烧写和加载常见错误及分析

DSP调试及烧写和加载常见错误及分析在进行DSP调试、烧写和加载过程中,常见的错误有很多,下面是一些常见错误及其分析:1.调试错误:-问题描述:无法连接到DSP设备。

-分析:可能是因为设备未正确连接,或者连接线路有问题,也可能是驱动程序不兼容导致的。

-解决方法:检查设备的连接状态,确保连接正确;检查连接线路是否完好;更新或卸载并重新安装驱动程序。

2.烧写错误:-问题描述:烧写失败或者烧写之后设备无法启动。

-分析:可能是烧写的文件有错误或者不完整,也可能是设备本身存在问题。

3.加载错误:-问题描述:加载程序时出现错误,或者加载之后程序无法正常运行。

-分析:可能是加载的程序有问题或者与设备不兼容,也可能是设备本身存在问题。

4.软件错误:-问题描述:使用的调试、烧写或加载软件出现错误或崩溃。

-分析:可能是软件本身存在问题,也可能是与其他软件或系统的兼容性冲突。

-解决方法:更新软件版本,或者使用其他可靠的软件;检查是否存在与其他软件或系统冲突的情况,如果有需要进行排查和修复。

5.设备故障:-问题描述:设备无法识别、烧写或加载,存在硬件故障。

-分析:可能是设备损坏或老化,设备内部电路出现问题。

-解决方法:检查设备的物理状态,是否存在损坏或老化情况;检查设备的内部电路,如果有问题需要进行修复或更换。

6.嵌入式系统错误:-问题描述:DSP芯片上的嵌入式系统无法正常运行。

-分析:可能是系统的软件代码有问题,硬件与软件的不匹配,系统配置错误等。

-解决方法:检查系统的软件代码,重新进行编译、调试和烧写;检查系统的硬件与软件的兼容性,如果有问题需要进行修复或更换;检查系统的配置参数,进行适当的修改。

在遇到以上错误时,可以根据具体情况进行分析和解决。

同时,可以参考调试、烧写和加载工具的操作手册,寻求厂商的技术支持,或者查阅相关的文档和资料来获取更多的帮助和解决方案。

调试、烧写和加载过程中可能会遇到各种各样的问题,需要耐心和细心进行排查和解决。

仿真器与DSP开发一般常见问题

仿真器与DSP开发一般常见问题

z DSP仿真器为什么必须连接目标系统(Target)?DSP的仿真器同单片机的不同,仿真器中没有DSP,提供IEEE标准的JTAG口对DSP 进行仿真调试,所以仿真器必须有仿真对象,及目标系统。

目标系统就是你的产品,上面必须有DSP。

仿真器提供JTAG同目标系统的DSP相接,通过DSP实现对整个目标系统的调试。

z仿真工作正常对于DSP的基本要求1)DSP电源和地连接正确。

2)DSP时钟正确。

3)DSP的主要控制信号,如RS和HOLD 信号接高电平。

4)C2000的watchdog关掉。

5)不可屏蔽中断NMI上拉高电平。

z CCS或Emurst运行时提示“Can't Initialize Target DSP”1)仿真器连接是否正常? 2)仿真器的I/O设置是否正确? 3)XDSPP仿真器的电源是否正确? 4)目标系统是否正确? 5)仿真器是否正常?6)DSP工作的基本条件是否具备。

建议使用目标板测试。

z为什么CCS需要安装Driver?CCS是开放的软件平台,它可以支持不同的硬件接口,因此不同的硬件接口必须通过标准的Driver同CCS连接。

z Link的cmd文件的作用是什么?Link的cmd文件用于DSP代码的定位。

由于DSP的编译器的编译结果是未定位的,DSP 没有操作系统来定位执行代码,每个客户设计的DSP系统的配置也不尽相同,因此需要用户自己定义代码的安装位置。

以C5000为例,基本格式为:-o sample.out-m sample.map-stack 100sample.obj meminit.obj-l rts.libMEMORY {PAGE 0: VECT: origin = 0xff80, length 0x80PAGE 0: PROG: origin = 0x2000, length 0x400PAGE 1: DATA: origin = 0x800, length 0x400}SECTIONS {.vectors : {} >PROG PAGE 0.text : {} >PROG PAGE 0.data : {} >PROG PAGE 0.cinit : {} >PROG PAGE 0.bss : {} >DATA PAGE 1}z如何将OUT文件转换为16进制的文件格式?DSP的开发软件集成了一个程序,可以从执行文件OUT转换到编程器可以接受的格式,使得编程器可以用次文件烧写EPROM或Flash。

DSP软件应用中出现的问题

DSP软件应用中出现的问题

DSP软件应用中出现的问题自己在使用DSP软件Code Composer Studio v4是遇到一些常见的错误:1:Severity and Description Path Resource Location Creation Time Iderrors encountered during linking; "timer_sdram.out" not builtSeverity and Description Path Resource Location Creation Time Idunresolved symbol _ADC_cal, first referenced in ./DSP2833x_SysCtrl.obj出现这样的问题,通常是少了一些文件,需要手动添加这些文件到工程里解决的方法是:在工程上右击links files to project,之后找到DSP2833x _ADC_cal.asm文件添加到工程里2:当我在用到软件中自带的头文件中的一些结构体,共用体。

说白了就是要对芯片寄存器的位进行操作时软件给我们提供了方便,如果不能“.” 符号不能灵活弹出对应选项时,例如CpuTimer0Regs.TCR.all,应该检查CpuTimer0Regs是否敲写正确,应该编译一下工程,我的做法就是写一个头文件,和主函数,并在函数里写一个InitSysCtrl();(当然前提你的头文件要有定义这个函数)在编译。

3:在学习中遇到了在工程中不用添加头文件,有软件来自动查找,就是得先设置Properties选项,指定头文件的路径,在这之前我一直都是手动添加头文件,很是麻烦,对于不太熟练的我还容易出错,4:还要注意要将我们写的程序中用到的源文件全部添加到工程中(这句话听起来好像没说似的,其实不然),如果我们平时在编写程序时,不注意他,他经常会给添加不必要的麻烦(说白了就是在浪费你的时间)5:我在主函数里用到(“MemCopy(&XintffuncsLoadStart, &XintffuncsLoadEnd, &XintffuncsRunStart);”)编译时出现下列错误提示:unresolved symbol _MemCopy, first referenced in ./timer_sdram.obj这样的问题一看就是MemCopy这的问题,1-可能是在你调用前没有声明,在工程中没有添加这个函数2-我们在用到这个MemCopy时拼写错误自己在学习DSP中,在看过的一些书上有的说过在自己编写工程时不清楚自己工程里要用到什么源文件可以把他们都添加到工程里,今天就出现了问题,由此想起了“尽信书不如无书”6:errors encountered during linking; "cpu_flash1.out" not builtplacement fails for object ".text", size 0x1091 (page 0). Available ranges: RAML1出现这样的错误是因为自己多添加了“DSP2833x_ECan.c”这个文件7:errors encountered during linking; "cpu_flash1.out" not builtsymbol "_delay_loop" redefined: first defined in "./cpu_flash.obj"; redefined in "./DSP2833x_Mcbsp.obj" 我的这个程序是对FLASH进行读写操作,正如提示我多加了“DSP2833x_Mcbsp.h”源文件出现了错误。

DSP实验常见错误及解决方法

DSP实验常见错误及解决方法

实验常见错误及解决方法1、启动CCS时出现如下错误:错误原因:以前在CCS setup里设置当前使用的平台为sdgo2xx(硬件仿真),或者同时设置为sdgo2xx 与c2xx simulator,所以进行软件仿真时应设置当前正在使用的为c2xx simulator。

解决方法有两种:方法1:点击“终止”,然后重新设置CCS setup,将sdgo2xx移除。

方法2:点击“忽略”,然后在“Parallel Debug Manager”中Open菜单下选择c2xx simulator2、编译连接时出现如下错误:错误原因是:文件命名、文件夹命名或保存位置不正确。

文件命名:不能以数字开头(包括mak文件的名字)文件夹命名:不能为中文保存位置:项目文件(mak文件)存储的位置一定要与其它文件(C文件、asm文件、h文件、cmd文件、等)放在同一目录下,且最好放在“x:\tic2xx\myprojects”目录下。

3、编译连接时出现如下错误提示:warning: entry point symbol _C_int0 undefined错误原因:用C语言开发的DSP程序在向工程文件添加文件时没有添加运行支持库文件rts2xx.lib注意rts2xx.lib的路径:在C:\tic2000\c2000\cgtools\lib目录下4、CCS与CCS setup均不能启动,提示:不能正确初始化程序或者CCS运行到某个地方后(例如编译连接后)不能停止,观察任务管理器,发现cc_app.exe占用CPU为100%,即CCS已经死了。

错误原因:CCS被病毒感染或破坏,或者多个版本CCS共存,相互干扰。

解决方法:方法1:重新启动电脑方法2:用运行正确的cc_app.exe程序替换被破坏的cc_app.exe程序。

5、编译连接通过,加载程序后,在运行时出现如下错误提示:错误可能原因:第一种可能:没有加载CMD文件第二种可能:CMD文件已加载,但CMD文件编写有问题,存储器配置、定位不正确第三种可能:用C语言编写的DSP程序,C初始化设置错误,已修改C Initialization 设置,方法:Project ——> Option——> Linker6、探测点设置不成功注意:①在设置探测点时应先加载程序②如下图所示,应先点击Probe Point中的选择框,使volume.c line 63——> No Connection被选中,然后在选Connect下拉菜单,找到相关联的数据文件,再点击Replace ,最后点“确定”。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DSP调试时,首先遇到一般会是JTAG连不上,说实话,这个问题本身不是很难,但由于影响的原因太多,还真让人头疼;不过,若JTAG不能识别TI的DSP,则一般的,可能存在以下几个方面的原因:
1、仿真器有问题;
2、仿真器的驱动有问题;
3、目标板有问题;
在此,我们先来讨论仿真器没问题,和仿真器的驱动正确安装的前提下,因目标板的原因导致JTAG连不上的情况:
1、检查DSP的供电(Core电压,IO电压)是否正确?纹波是否满足要求? 上电顺序是否满足要求?
2、检查DSP的供电始终是否正确?电平是否满足要求?
3、检查DSP的系统复位信号是否正常?NMI管脚的接法是否正确?DSP相关的所有输入脚的接法是否正确?
4、测量DSP的CLKOUT是否正确?测量上电时,DSP是否会去片选boot-Flash?
3、EMU0和EMU1需要上拉,手册中要求1Kohm这个应该并不严格,不是必须的;因为我手头上两块板子,一个用的4.7K,一个用的10K,都没问题;
5、有人怀疑是JTAG供电问题,手头上的板子用的都是3.3V,可以连接,没问题,不必5V;
6、检查晶振是否起振,查看CLKOUT是否有波形输出,将CLKOUT6引了出来,这个默认是系统时钟的六分之一。

用的是50MHz外部时钟,20倍频模式,此处输出为166MHz;在实际调试调试过程中,经常会遇到JTAG的时钟是50kHz,很明显,时钟有问题;
7、JTAG接插件与DSP之间是否装有驱动缓冲芯片,这个也不是必须的;常用到的芯片是:SN74LVTH244和SN74LVCH16245ADGGR;
8、USB插口供电不足,如果是台式机,换成机箱后面的USB口会好些;
还有就是复位的问题,这个是经常遇到的,一定要先确认复位是否正常?
9、测量DSP的EMIF总线,任意两个数据线或地址线不要有短路或接错的现象;若有条件,可对EMIF总线上的负载断开再进行JTGA连接测试;
10、若DSP的EMIF总线上,有FPGA设备,则需要先下载FPGA的程序。

可把与DSP相关的FPGA所有信号都定义为输入;
11、正确设置CCS,打开CCS后,点击debug中reset后,若不报错,则一般驱动都没有问题;
12、手动多次复位DSP后再尝试连接,或连接失败后重启CCS和计算机;
在确认DSP JTAG设计没有问题的情况下,可能会是CCS或者仿真器/仿真器驱动的问题;参考解决方法:
1、重装CCS,这一项还是不要轻易采用了吧。

一年来,我没这样做过;
2、换个电脑,换个仿真器,有一种原因是你的仿真器版本不行,比如XDS510升级为XDS510PLUS,这个我倒遇到过,可以尝试一下;
4、重装驱动,查看设备管理器中驱动是否安装好,驱动是否跟CCS保持同一安装路径,复位程序usb20reset是否可以正常复位对于驱动,可以查看
“Studio_v3.3/cc/bin”路径下的“xdsfast3.dll”文件,如果这个文件是160K大小那么驱动就是没有装好的。

如果出现这样的问题,即使重装驱动往往也不能成功。

需要删除该“xdsfast3.dll”文件,然后断开PC和仿真器,重新装仿真器驱动。

安装后查看“xdsfast3.dll”文件大小为352K即表示驱动安装成功。

DSP JTAG口相关管脚的电压,不连接仿真器和连上仿真器跑起来之后两种状态下DSP JTAG的管脚电压情况如下(供参考):
1.不连接仿真器时:
连上仿真器跑起来之后:
94c474bdd5_500_.gif(3.33 KB, 下载次数: 22)
下载附件
2013-4-3 23:57 上传
案例1及分析
报错信息如下, 这是怎么回事
Error connecting to the target:
Error 0x80000240/-2092
Fatal Error during: Initialization, OCS,
Device driver: Emulation Connection Loss Detected on Target CPU.
It is recommended to RESET EMULATOR. This will disconnect each target from the emulator. The targets should then be power cycled
or hard reset followed by an emureset and reconnect to each target.
Sequence ID: 0
Error Code: -2092
Error Class: 0x80000240
I/O Port = 240
Board Name: F2810 XDS510 Emulator
Cpu Name: CPU_1
Abort: Close Code Composer Studio. Retry: Try to connect to the target again. Cancel: Remain disconnected from the target Diagnostic: Run diagnostic utility.
之后点“Retry”的话,出的是另外一个错误代码:Error connecting to the target:
Error 0x80000200/-1037
Fatal Error during: OCS,
PTI_ERR_EMU_CLOSE Error Occured at 0x00000000
Sequence ID: 0
Error Code: -1037
Error Class: 0x80000200
I/O Port = 240
Board Name: F2810 XDS510 Emulator
Cpu Name: CPU_1
Abort: Close Code Composer Studio.
Retry: Try to connect to the target again.
Cancel: Remain disconnected from the target
Diagnostic: Run diagnostic utility.
我也是这个问题,我已经解决了。

问题描述:如楼顶所示。

我用的是SEEDXDS510USB的仿真器。

我发现没有SEEDXDS510USB emulator这个选项,于是重装了驱动,其中xdsfast3.dll 文件应该是352k,如不是,赶紧拷贝一个。

然后选择SEEDXDS510USB emulator,右击,属性改为Seedusb2.cfg,之后仿真器下面的器件属性改为f2812.gel,其余的不用改。

然后把ccs右击,属性——兼容性,——改为xp,确定,然后重新启动ccs。

debug——connect,之后就好了
希望能帮到你。

相关文档
最新文档