打印

两块F28335主板,同一个CCS环境,程序一样,但是运行结果不一致

[复制链接]
1888|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jdliuhuihong|  楼主 | 2015-12-11 15:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,这些天一直被这个问题所困扰。简单介绍下我的项目的组成:
1.SPI通信,与FPGA通信,完成数据交换;此处用到一些大数组。大概100左右
2.SCI通信,与串口屏通信;
3.还有一些其他的GPIO配置,ADC配置等。
问题描述:
1.两块DSP板,同一个CCS v6.0.0环境,跑同一个程序(定为版本2),在ram中运行,但一块板可以正常运行,另一块运行不正常;
2.设断点,CCS上观察变量,发现程序并没有跑飞,只是一些参数不正确;
3.怀疑栈溢出导致,栈空间已经设置到0x1000;
4.之前有个版本的程序(定位版本1),两块板子都没问题,ram,flash、运行都OK;
5.两个版本唯一的区别是添加了一些数组,可能比较大,有100个int。
有碰到相似问题的高手或大侠们请不吝赐教。
。。。。。分本来就不多,希望大家不要嫌少,谢谢大家。

相关帖子

沙发
zhangmangui| | 2015-12-11 23:29 | 只看该作者
同样的程序    同样原理图的硬件   运行结果不一样   个人觉得肯定是板卡硬件的问题  
焊接问题的可能性最大  
还有FPGA和28335在同一块板子上吗    FPGA代码一样吧   

使用特权

评论回复
板凳
jdliuhuihong|  楼主 | 2015-12-12 10:05 | 只看该作者
zhangmangui 发表于 2015-12-11 23:29
同样的程序    同样原理图的硬件   运行结果不一样   个人觉得肯定是板卡硬件的问题  
焊接问题的可能性最 ...

恩,谢谢版主的答复。FPGA的程序是一样的。重新刷过。
板卡硬件的话,由于有一版程序(即上面提到的版本1),在两块DSP板卡上都是可以运行的,ram、flash都是可以的。所以就没大怀疑是板卡硬件的问题。
不过虚焊脱焊也是有可能的。
就是不知道您有没有碰到类似的问题,现在是黔驴技穷啊

使用特权

评论回复
地板
comeon201208| | 2015-12-12 17:50 | 只看该作者
这样的话就主要检查下硬件上的细节问题的。

使用特权

评论回复
5
zhangmangui| | 2015-12-12 21:45 | 只看该作者
jdliuhuihong 发表于 2015-12-12 10:05
恩,谢谢版主的答复。FPGA的程序是一样的。重新刷过。
板卡硬件的话,由于有一版程序(即上面提到的版本1) ...

想不到其他的可能了     觉得还是某个硬件外设有问题

使用特权

评论回复
6
jdliuhuihong|  楼主 | 2015-12-12 21:53 | 只看该作者
zhangmangui 发表于 2015-12-12 21:45
想不到其他的可能了     觉得还是某个硬件外设有问题

谢谢哦。其实我甚至想到了,是因为添加大数组,导致的栈区空间不够。甚至想用动态分配空间的方法,将数组分配到DSP的heap堆区。
硬件问题的话,其实就很难解释为什么先前版本1程序是OK的,而版本2程序就挂了。

使用特权

评论回复
7
lwsn| | 2015-12-14 20:26 | 只看该作者
板卡硬件的话,由于有一版程序(即上面提到的版本1),在两块DSP板卡上都是可以运行的,ram、flash都是可以的。

说不一定也可能是焊接问题

使用特权

评论回复
8
jdliuhuihong|  楼主 | 2015-12-15 19:42 | 只看该作者
我结贴了。这几天调试程序的时候,发现应该还是软件程序的问题。似乎和状态机的时序有关系。看来还是要优化程序啊。谢谢大家了。:)

使用特权

评论回复
9
869385911| | 2017-8-3 10:13 | 只看该作者
我现在也遇到这个问题,同一个程序,别人编译后是168k,不管我怎么优化程序都是182k左右,并且程序跑的时候总是出问题。

使用特权

评论回复
10
坏坏62| | 2017-8-4 14:21 | 只看该作者
zhangmangui 发表于 2015-12-12 21:45
想不到其他的可能了     觉得还是某个硬件外设有问题

版主 我现在也遇到了这个问题 同一个程序 在两块不同的板子上跑 得到的效果明显不一样 计算得到的数据也不一样  很困扰我。  

使用特权

评论回复
11
zhangmangui| | 2017-8-4 22:18 | 只看该作者
坏坏62 发表于 2017-8-4 14:21
版主 我现在也遇到了这个问题 同一个程序 在两块不同的板子上跑 得到的效果明显不一样 计算得到的数据也 ...

硬件完全一样吗

使用特权

评论回复
12
坏坏62| | 2017-8-15 20:25 | 只看该作者

是的  不过都是手焊的 不敢保证完全一样 程序跑出来的结果不一样

使用特权

评论回复
13
坏坏62| | 2017-8-15 20:26 | 只看该作者

而且遇到一个很奇怪的问题  就是有一块板子 AD采样的数据都是满量程输出 跟真实电压不一样

使用特权

评论回复
14
zhangmangui| | 2017-8-15 22:34 | 只看该作者
坏坏62 发表于 2017-8-15 20:26
而且遇到一个很奇怪的问题  就是有一块板子 AD采样的数据都是满量程输出 跟真实电压不一样 ...

这个明显有问题   如果芯片正常   AD口什么都不接  
采集到的应该是3V左右

使用特权

评论回复
15
坏坏62| | 2017-8-19 10:00 | 只看该作者
zhangmangui 发表于 2017-8-15 22:34
这个明显有问题   如果芯片正常   AD口什么都不接  
采集到的应该是3V左右

是芯片坏了吗?还是pcb布线什么的影响了DSP的工作。而且 如果AD输入不接的话 看到采集到的电压是0.7V左右

使用特权

评论回复
16
zhangmangui| | 2017-8-20 22:26 | 只看该作者
坏坏62 发表于 2017-8-19 10:00
是芯片坏了吗?还是pcb布线什么的影响了DSP的工作。而且 如果AD输入不接的话 看到采集到的电压是0.7V左右 ...

PCB布线肯定有影响     你看看其他功能是否正常
还有AD相关的电源设计

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

51

帖子

1

粉丝