[求助] AVR program占用多,请问如何精简程序?

常见泽1   2012-2-16 09:58 楼主

1.jpg

 

1.不知道这个program到底包括哪些?

2.我把全局变量从int改为char program占用减少

 

3.我把局部变量从int改为char program也减少

   局部变量不是存在RAM里面么??

 

不太理解具体的工作情况 还请高手赐教啊

比如代码段 数据区  flash 和 RAM

我的理解就是代码存于flash rom

局部变量存在RAM

全局变量呢?

回复评论 (2)

引用: 原帖由 常见泽1 于 2012-2-16 09:58 发表 80735   1.不知道这个program到底包括哪些? 2.我把全局变量从int改为char program占用减少   3.我把局部变量从int改为char program也减少    局部变量不是存在RAM里面么??   不 ...

 

有个交集,.data。

AVR.jpg

 

查查编译器的帮助文件或说明看看,.bss和.noint是啥咧?

一般认为,单片机那些不用搬程序到RAM运行的话,代码和常量应该是在ROM或者Flash里,变量应该是RAM里。Atmega8只有Flash和RAM。

那个.data咋在两个里都有咧?费解。

点赞  2012-2-16 11:27

回复 沙发 David_Lee 的帖子

看来一上午感觉 有点明白
关于.data
这个我也不清楚 感觉有点问题嘛
看了芯艺的GCC那个也没有写
点赞  2012-2-16 13:09
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复