智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1146|回复: 4
打印 上一主题 下一主题

程序运行

[复制链接]

63

主题

115

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2069
威望
1037
贡献
472
兑换币
177
注册时间
2012-9-22
在线时间
280 小时
毕业学校
大学
跳转到指定楼层
1#
发表于 2013-3-9 23:41:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
2贡献
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */



void f()
{
float pi[256]={0.0};
}

void main(void) {
  /* put your own code here */
  f();
  DDRB=0XFF;
  PORTB=0X55;

        EnableInterrupts;


  for(;;) {
    _FEED_COP(); /* feeds the dog */
  } /* loop forever */
  /* please make sure that you never leave main */
}

大牛们,为什么这段程序无法正确运行,你们能正确运行这程序吗?

最佳答案

查看完整内容

栈溢出了,单片机的栈一般只有几十几百个字节。

36

主题

1837

帖子

3

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6375
威望
3368
贡献
1847
兑换币
2326
注册时间
2013-2-3
在线时间
580 小时
2#
发表于 2013-3-9 23:41:57 | 只看该作者
栈溢出了,单片机的栈一般只有几十几百个字节。
回复

使用道具 举报

63

主题

115

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2069
威望
1037
贡献
472
兑换币
177
注册时间
2012-9-22
在线时间
280 小时
毕业学校
大学
3#
 楼主| 发表于 2013-3-9 23:53:00 | 只看该作者
如果把pi[256]={0.0}改成pi[50]={0.0}就可以正确运行了,这是怎么回事呢?

回复

使用道具 举报

63

主题

115

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2069
威望
1037
贡献
472
兑换币
177
注册时间
2012-9-22
在线时间
280 小时
毕业学校
大学
4#
 楼主| 发表于 2013-3-10 11:03:03 | 只看该作者
灰原姐姐 发表于 2013-3-9 23:41
栈溢出了,单片机的栈一般只有几十几百个字节。

其实有点不明白,我定义的浮点数数组怎么说也少于2000字节,但是图像采集的数组怎么说也有6000+个字节,怎么就会没事呢??
回复

使用道具 举报

36

主题

1837

帖子

3

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6375
威望
3368
贡献
1847
兑换币
2326
注册时间
2013-2-3
在线时间
580 小时
5#
发表于 2013-3-10 14:59:05 | 只看该作者
zhehong 发表于 2013-3-10 11:03
其实有点不明白,我定义的浮点数数组怎么说也少于2000字节,但是图像采集的数组怎么说也有6000+个字节,怎 ...

全局变量就没事,局部变量是存在栈上的。
回复

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-29 19:39 , Processed in 0.071966 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表