4994|12

78

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于内存的问题 [复制链接]

我在用MSP5438片子求1024点FFT的时候,定义
float dataR[1024]={0};
float dataI[1024]={0};在RAN区

定义正余弦表在flash程序存储器里
const float sin_tab[1024]={.....};
const float cos_tab[1024]={.....};
做软仿的时候可以计算,用JTAG往片子里下的时候就不行,观察RAM区时候发现,是定义的const float sin_tab[1024]
const float cos_tab[1024]本应该在flash区的数据,怎么会出现在RAM区里?导致不能进行仿真。
编译以后这里看所消耗的资源应该是可以的承受的。
892 bytes of CODE memory
8194 bytes of CONST memory
8194 bytes of DATA memory
我是第一次用430的片子,有些问题不太明白,望各位大虾不吝赐教。谢了。

最新回复

引用: MSP430初始化数组时WDT超时,CPU复位了. 明白了,谢谢  详情 回复 发表于 2009-4-14 10:11
 
点赞 关注

回复
举报

77

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
float 4bytes
2048*4=8K bytes

8194 bytes of CONST memory
8194 bytes of DATA memory
8k的ram,8k的const
看着没啥问题啊
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

有点怀疑是内存初始化的时候看门狗复位了

内存变量太多,看门狗有可能复位。
LZ尝试把
:\Program Files\IAR Systemsnew\Embedded Workbench 5.0\430\src\lib
目录下的lowinit.c包含到工程里试试。
 
 
 

回复

87

帖子

0

TA的资源

一粒金砂(初级)

4
 
我也觉得是这个原因,在请教一下kuoching,lowinit这个函数怎么用,这样用吗

int __low_level_init(void)
{
float dataR[1024]={0};
float dataI[1024]={0};
const float sin_tab[1024]={.....};
const float cos_tab[1024]={.....};

/*==================================*/
/* Choose if segment initialization */
/* should be done or not. */
/* Return: 0 to omit seg_init */
/* 1 to run seg_init */
/*==================================*/
return (1);
}
然后在
__low_level_init();
void main(void)
.....
这样用吗? 请教!
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

5
 
只需要把lowinit.c拷到你的工程目录,然后在工程里添加这个文件,就可以了。不用更改任何程序的
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

6
 
数组
float dataR[1024]={0};
float dataI[1024]={0};
太大,MSP430初始化数组时WDT超时,CPU复位了.

用自定义int __low_level_init(void)关闭WDT.
int __low_level_init(void)
{
WDTCTL = WDTPW + WDTHOLD ;//stop wdt
}

将__low_level_init(void)添加到工程中即可
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(初级)

7
 
还真没碰到过,学习下。
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

8
 
好的 回头我再试试看,感谢各位的帮助。
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

9
 
问题已经解决,感谢帮助我的朋友!
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

10
 
不知道楼主怎么解决的,是数组定义太大了么
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

11
 
MSP430初始化数组时WDT超时,CPU复位了.
 
 
 

回复

85

帖子

0

TA的资源

一粒金砂(初级)

12
 
学习了啊,下回遇到就有办法了
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

13
 
引用:

MSP430初始化数组时WDT超时,CPU复位了.
明白了,谢谢
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表