DSP调试过程的几点小问题,随笔记录

1、地址的分配要注意,空间要够
2、在ram里面,出现错误
C28xx: Trouble Setting Breakpoint with the Action “Finish Auto Run” at 0x223db3: (Error -1066 @ 0x223DB3) Unable to set requested breakpoint in memory. Verify that the breakpoint address is in writable memory. (Emulation package 5.0.872.0)

这里的问题是,程序用的内部ram进行的仿真,程序过大,需要使能外部ram

具体操作如下:
打开ccs版本安装目录下的f28335.gel,我的在C:\ti\ccsv5\ccs_base\emulation\gel目录下,去掉只读属性。

OnReset(int nErrorCode)
{
if (GEL_IsInRealtimeMode()) /* If in real-time-mode */
{
}
else /* Put device in C28x mode */
{
C28x_Mode();
}
Unlock_CSM();
ADC_Cal();
// XINTF_Enable(); /* Uncomment to enable XINTF on Reset */
}

去掉// XINTF_Enable();前面的反斜杠,变成
OnReset(int nErrorCode)
{
if (GEL_IsInRealtimeMode()) /* If in real-time-mode */
{
}
else /* Put device in C28x mode */
{
C28x_Mode();
}
Unlock_CSM();
ADC_Cal();
XINTF_Enable(); /* Uncomment to enable XINTF on Reset */
}

再次编译。调试即可。

3、在下载完程序后,最后能把dsp仿真器从板子上拔下来,而不是把USB线拔下来,否则极易出现dsp启动异常。——是不是很可笑的问题,我的板子老是无法正常启动,是不是flash原因是不是ram原因,查半天是这个,哭了吧,所以保险起见,直接拔掉仿真器。划重点。

4、寄存器配置时候,注意高低字节。校验也是。还有就是数据类型的定义。
5、编程过程中要注意内存溢出。该是布尔型就定义个布尔。定义的变量一定记得初始化。
6、有些东西必须放在中断里执行,你的任务开销要弄清,小心因为多个时间要求高的任务,导致计算不过来,这时候程序放在内部RAM还是外部FLASH,你的变量定义在外部RAM还是内部RAM,自己算清楚。
7、下载器一般不会坏,下不了程序看看下载线的端子吧,十有八九是接头坏了

  • 1
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值