Nexus 发表于 2014-10-30 16:04:33

28335——CCS5.1奇葩问题

各位论坛大神!最近调试28335(使用CCS5.1为调试工具)发现奇葩问题:
写了一个工程,里面包含了一个电网锁相的程序,调试2个月都没有问题。前两天加入了两个新的文件后,编译通过,没有任何错误。但是上电后发现锁相环完全不准确,失效;但是奇怪的是:按一下28335的复位后,又能正确执行;
而后将加入的两个文件删除,又回复正常。。
给大家描述一下遇到的问题,具体原因还在查,可能是程序的问题。但即使程序没有调用,整个软件也会出现问题。

freefei 发表于 2014-10-30 19:12:08

后续的调试经历也发上来,给大家参考下

Nexus 发表于 2014-10-30 19:27:04

兄弟们,问题解决了!
是F28335.cmd文件的问题。
就是说,原本自带的28335.cmd(从库里面拷贝过来的)其中的ebss段很小,只有0x1000,我加大了,变成三倍就问题了。
但是问题出现了,为什么编译的时候CCS不报错呢???
明天把cmd文件贴上来。

596142041 发表于 2014-10-30 21:14:22

本帖最后由 596142041 于 2014-10-30 21:16 编辑

这、、、这种软件应该无法检测到吧!楼主你说锁相的程序能否共享一份呢?如果涉及到你们的产品那就不用了

wang19900908 发表于 2014-10-30 22:58:19

我使用CCS5.1好像也会出问题,不知道怎么回事,有时自己就好了

Nexus 发表于 2014-10-31 08:57:11

596142041 发表于 2014-10-30 21:14
这、、、这种软件应该无法检测到吧!楼主你说锁相的程序能否共享一份呢?如果涉及到你们的产品那就不用了 ...

Sorry哦~~算是公司财产咯~~不好给的啦。。。

lljyes 发表于 2014-10-31 09:57:20

请问锁相程序有考虑三相不平衡的问题吗?假如有,可以讲一下实现的原理吗?

silence_sky 发表于 2014-10-31 10:52:05

CCS从来不检查超界问题。直到你调试时程序跳转出问题了才知道,还美其名曰这是给用户自主控制。

jinyi7016 发表于 2014-11-5 11:46:58

测试CCS5.2可以检测出来cmd问题。

Nexus 发表于 2014-11-5 18:15:18

jinyi7016 发表于 2014-11-5 11:46
测试CCS5.2可以检测出来cmd问题。

多谢提醒。我们这边会尽快更新上去。。。

EMC菜鸟 发表于 2014-11-6 11:06:05

ebss 段一般为全局变量区吧 —— 楼主的程序编译好了之后,都不检查各段(尤其是数据区)的分配是否合理,比如堆栈区的分配是否足够 ?

Nexus 发表于 2014-11-6 14:10:22

EMC菜鸟 发表于 2014-11-6 11:06
ebss 段一般为全局变量区吧 —— 楼主的程序编译好了之后,都不检查各段(尤其是数据区)的分配是否合理, ...

弱弱问一句,每次编译程序,你都会检查么?我觉得这是编译器的事情。不足了,提醒下。

EMC菜鸟 发表于 2014-11-6 14:15:43

本帖最后由 EMC菜鸟 于 2014-11-6 14:16 编辑

Nexus 发表于 2014-11-6 14:10
弱弱问一句,每次编译程序,你都会检查么?我觉得这是编译器的事情。不足了,提醒下。 ...

你在楼主位遇到的问题,编译器提醒你了么?

DSP目前还在研究中,目前用于产品的处理器,程序的最终版本我都要检查的。

Nexus 发表于 2014-11-6 18:19:38

EMC菜鸟 发表于 2014-11-6 14:15
你在楼主位遇到的问题,编译器提醒你了么?

DSP目前还在研究中,目前用于产品的处理器,程序的最终版本 ...

编译器没有给出提醒,最终版本必须好好测试啊。。。CCS5.1的奇葩问题。

tiger2023 发表于 2014-11-6 23:37:12

cmd ebss段溢出一般都会提醒吧

Nexus 发表于 2014-11-12 10:46:23

好像又有问题了,加了一段代码,就又出现问题,搞不懂。。。同样的症状,直接上电不行,复位下就没问题。。。

Nexus 发表于 2014-12-1 14:52:44

这个问题我现在统一回复下,CCS没有问题,是我个人的问题。
简单说是我的程序出现了一个小漏洞,而添加代码后,这个漏洞会显现出来。所以会造成这种状况。。
各位可以安心使用CCS。
封贴。

jinyi7016 发表于 2015-1-10 19:21:43

电网锁相 是硬件上实现的么?求思路 ,

Nexus 发表于 2015-1-10 22:32:16

jinyi7016 发表于 2015-1-10 19:21
电网锁相 是硬件上实现的么?求思路 ,

不是,软件上面实现的。只要计算速度足够就可以。

plate_test 发表于 2015-1-11 07:30:16

谢谢分享经验,学习了!

jinyi7016 发表于 2015-1-11 11:05:30

Nexus 发表于 2015-1-10 22:32
不是,软件上面实现的。只要计算速度足够就可以。

这是什么产品,锁相是为了测零点还是测频?能指教下思路么?

Nexus 发表于 2015-1-11 16:57:36

jinyi7016 发表于 2015-1-11 11:05
这是什么产品,锁相是为了测零点还是测频?能指教下思路么?

不是产品,是实验品。不是为了测过零点。
可以获得电网的频率,和相位。方便与电网进行同步。

电网的角度对于功率控制非常重要。

weichao4808335 发表于 2015-1-11 19:14:42

Nexus 发表于 2014-10-30 19:27
兄弟们,问题解决了!
是F28335.cmd文件的问题。
就是说,原本自带的28335.cmd(从库里面拷贝过来的)其中 ...

cmd文件范围有问题就是不会报错的,以前见过很多次你的这个还能运行,很多都是写flash时提示有问题只能写到ram中

jinyi7016 发表于 2015-1-11 21:52:03

Nexus 发表于 2015-1-11 16:57
不是产品,是实验品。不是为了测过零点。
可以获得电网的频率,和相位。方便与电网进行同步。



那怎么得到角度呢?

Nexus 发表于 2015-1-11 23:08:13

weichao4808335 发表于 2015-1-11 19:14
cmd文件范围有问题就是不会报错的,以前见过很多次你的这个还能运行,很多都是写flash时提示有问题只能写 ...

cmd分配的区间不够的话,在map文件里面放不下了就会报错。我尝试定义一个非常大的数组,放不下后确实报错了。

Nexus 发表于 2015-1-11 23:10:19

jinyi7016 发表于 2015-1-11 21:52
那怎么得到角度呢?

通过所谓的“锁相环”。

具体的比较麻烦,有单相的和三相的,方法千差万别,不是一句话能够说明白的。
如果感兴趣的话,可以看一下matlab下面simulink工具箱里面的锁相环,这个是最基本的三相锁相环。

weichao4808335 发表于 2015-1-12 19:35:57

Nexus 发表于 2015-1-11 23:08
cmd分配的区间不够的话,在map文件里面放不下了就会报错。我尝试定义一个非常大的数组,放不下后确实报错 ...

我说的是再cmd里面把flash地址写的比实际的大的话编译时是不会报错的
页: [1]
查看完整版本: 28335——CCS5.1奇葩问题