zpwkxg 发表于 2014-8-15 18:23:10

求助:2812 串口通讯仿真时正常,烧录后串口数据不正常

本帖最后由 zpwkxg 于 2014-8-15 18:31 编辑

dsp程序在2812ram里面仿真运行时各项功能都正常,烧录过程也没有提示错误,烧录后发现主程序没响应(主程序在接到上位机指令时动作),后来通过上位机查看,发现DSP串口发出的数据不是预设的数据,因此也有可能它接收到数据不正确的;后来在程序中的”头--尾“翻转IO口,烧录后引脚输出波形正常,也就是说整段程序是在运行的,只是串口的接收和发送功能不正常;后来把主程序都去掉,就测试SCI,DSP的两个串口都发数据,B口发出的数据是错误的,A口的波形变形的厉害!用四个产品上正常使用的核心板测试都是这个样子,基本排除硬件错误,是不是哪里设置有问题呢?CMD文件是以前一直用的,我仔细查看了,Memory和Section都没问题。

请教:为什么烧写到flash里面运行就不正常了?

就是在最后烧录完成后的对话框中最后提示:load RAM operation was successful,这在正常的烧录过程中,没出现过。图片如下:

这段时间净出现这种耗时无头绪的问题,请您有过类似或有想法的大虾指教一下,谢谢啊!

steaven2000 发表于 2014-8-18 11:07:39

发工程上来给看看。
明显你的设置有问题,正常运行时会由仿真器来load ram?
你看看工程里面是否有设置为run-time initialization?

zpwkxg 发表于 2014-8-20 08:02:37

我仍在查找原因烧写时出现load RAM operation的原因;在linker选项 autoinit Model:选择的Run_Time Autoinitialization。晚上回来我上传一下测试工程。

zpwkxg 发表于 2014-8-20 08:03:20

谢谢steaven2000关注

EngKing 发表于 2014-9-11 18:08:34

DSP28XX_CodeStartBranch.asm
这样的文件要加入进去,否则即使CMD文件改成功了,也不能从flash中运行

steaven2000 发表于 2014-9-12 09:13:51

EngKing 发表于 2014-9-11 18:08
DSP28XX_CodeStartBranch.asm
这样的文件要加入进去,否则即使CMD文件改成功了,也不能从flash中运行 ...

典型的回复不看原帖,楼主已经明确表示:“后来在程序中的”头--尾“翻转IO口,烧录后引脚输出波形正常,也就是说整段程序是在运行的,只是串口的接收和发送功能不正常”,哪里是你说的没有加codestartbranch.asm导致的。

steaven2000 发表于 2014-9-12 09:15:33

zpwkxg 发表于 2014-8-20 08:03
谢谢steaven2000关注

问题解决没有?
另外可以查看一下你的Init_Flash()是否是从RAM中执行的?如果不是,可能会有影响。
页: [1]
查看完整版本: 求助:2812 串口通讯仿真时正常,烧录后串口数据不正常