本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
Young Hu:
有可能是Flash速度慢造成的,建议Flash版本的程序中关键代码或者频繁运行的代码搬移到RAM中。
本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
yong ouyang1:
回复 Young Hu:
我已经从FLASH中搬移到RAM中了,但是问题依旧没有解决!
本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
Chen Jones:
电源供电能力足够么? 程序都已经搬移到RAM中了?
特别是看看有没有一些delay的函数,是否已经搬移到RAM中了? 比如us_delay();
本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
yong ouyang1:
回复 Chen Jones:
供电足够,程序只有几个无关紧要的没有搬移到RAM中。关键部分是中断的形式写的,已经将其存放在RAM中了。
我也实在是找不出原因来了!
本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
yong ouyang1:
回复 yong ouyang1:
LZ 一直期待各位的回复。
本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
Young Hu:
回复 yong ouyang1:
能不能说说性能差异在哪些方面?这样有助于我们帮您分析问题所在
本人在用28035做个小项目,将程序烧写在flash里面并通过XDS100v1在线联调,此时运行效果比较理想;但是当我断开仿真器,让CPU单独运行的时候出来的结果就变得很差了,简单的讲,就是下载到flash的程序,在线仿真与CPU单独运行时差异很大(其他条件都一样)。
请问各位,会是什么原因造成的这种现象?
yong ouyang1:
回复 Young Hu:
主要在于在相同的电压环境下,输出的正弦电压波形长出很多毛刺(在线调试基本没有,但是独立运行就有了)