DSP仿真调试与实际运行出现的奇怪的差异

[复制链接]
1216|13
 楼主| Rospiers 发表于 2018-1-30 16:33 | 显示全部楼层 |阅读模式
买了一块DSP28335开发板,使用产商提供的源代码例子进行测试。该例子的功能是LED轮替闪烁:
部分源码:
void main(void)
{

     while(1)
    {
      LED1=~LED1;
      DELAY_US(100000);
      LED2=~LED2;
      DELAY_US(100000);
      LED3=~LED3;
      DELAY_US(100000);
      LED4=~LED4;
      DELAY_US(100000);
     }

}
问题点来了:
在仿真状态下运行程序,LED的闪烁频率是0.5秒闪烁一次。
烧写进Flash后LED约2秒闪烁一次。
厂家客服说是RAM与Flash中运行的差异。是这样吗?
Lewisnx 发表于 2018-1-30 16:51 | 显示全部楼层
正常啊,程序在RAM比在flash中跑得快
CCompton 发表于 2018-1-30 17:02 | 显示全部楼层
网上也有相关的资料。先下程序到Flash再将程序复制到RAM中运行
Richardd 发表于 2018-1-30 17:15 | 显示全部楼层
不是DELAY_US(100000)这个跟CPU的速度有关,跟Flash的读写速度无关吗??
Mattheww 发表于 2018-1-30 17:29 | 显示全部楼层
仿真和实际是不一样的
vivilzb1985 发表于 2018-1-31 23:09 | 显示全部楼层
这个例程比较简单的,好实现的
hudi008 发表于 2018-2-1 21:57 | 显示全部楼层
使用示波器测量的吗?
lzmm 发表于 2018-2-1 21:57 | 显示全部楼层
Lewisnx 发表于 2018-1-30 16:51
正常啊,程序在RAM比在flash中跑得快

这个不是时钟的问题吗?
minzisc 发表于 2018-2-1 21:58 | 显示全部楼层
你这个差异有点大。
selongli 发表于 2018-2-1 21:58 | 显示全部楼层
输入的时钟都是一样的吗?
hudi008 发表于 2018-2-1 22:02 | 显示全部楼层
示波器测试的比较精确
lzmm 发表于 2018-2-1 22:02 | 显示全部楼层
Lewisnx 发表于 2018-1-30 16:51
正常啊,程序在RAM比在flash中跑得快

跟运行的有关系吗?
selongli 发表于 2018-2-1 22:02 | 显示全部楼层
时钟一样,就可能是程序的问题了。
minzisc 发表于 2018-2-1 22:02 | 显示全部楼层
放在定时器里面试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

116

主题

377

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部