打印

请教一个简单的单片机问题

[复制链接]
1830|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
很忙|  楼主 | 2013-9-26 10:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
           本人也开始做单片机程序,一般用C语言编译,目前遇到一个问题请教下各位大侠。
义隆的153单片机,规格书上RAM空间有32个字节,自己写的C的代码没有用到32个字节,
但是提示总是提示RAM不够用,如图。有没有什么地方可以设置的,可以解决这个问题,谢谢!

error.jpg (32.11 KB )

显示错误内容

显示错误内容

相关帖子

沙发
ayb_ice| | 2013-9-26 13:35 | 只看该作者
你没有用到不代表够用,自动变量,临时变量都要占空间的
另外这32个字节可能还切页了

使用特权

评论回复
板凳
很忙|  楼主 | 2013-9-26 14:28 | 只看该作者
谢谢,芯片商说用C语言会自动做一个堆栈,堆栈的大小不知道,所以你用不了32个变量,我做个很简单的功能的软件,自动变量和临时变量都可以数的过来,还是会提示这个问题。所以以为编译器有时地方可以设置所谓的堆栈的大小的。,呵呵,本人比较笨。

使用特权

评论回复
地板
ayb_ice| | 2013-9-26 16:44 | 只看该作者
那你说你用了多少字节呢

使用特权

评论回复
5
NE5532| | 2013-9-26 16:48 | 只看该作者
楼主啊,32个字节RAM的单片机,你也不可能写出什么高深的算法进去吧,这种东东,应该写汇编,而不是C!;P

使用特权

评论回复
6
q3742829| | 2013-9-26 16:50 | 只看该作者
进来看评论,学习

使用特权

评论回复
7
gx_huang| | 2013-9-26 17:15 | 只看该作者
以前觉得这个C语言好玩,下载了测试一下,基本没有实用价值。

使用特权

评论回复
8
很忙|  楼主 | 2013-9-26 17:39 | 只看该作者
确实玩不了什么高深的算法,就写了个NEC遥控的发射和接收。另外控制几个IO口的状态。这个芯片供应商确实建议用汇编去写。但是很羞愧的是兄弟不是很会。

153.jpg (103.86 KB )

芯片规格

芯片规格

使用特权

评论回复
9
林志财| | 2013-9-26 23:18 | 只看该作者
有没可能是编译软件的问题呢,换个软件试下,

使用特权

评论回复
10
很忙|  楼主 | 2013-9-27 08:27 | 只看该作者
这个是有可能的。但是我换了一个编译工具还是一样的现象。看来C是有些让人头疼的地方。问了一些开发过这样小MCU的工程师,都说用汇编比较好。C语言对开发大一点项目比较有优势,可读性和可移植性比较高。汇编语言对这种资源紧凑型的MCU有天然的优势。多谢各位达人的指点。

使用特权

评论回复
11
NE5532| | 2013-9-27 08:35 | 只看该作者
很忙 发表于 2013-9-27 08:27
这个是有可能的。但是我换了一个编译工具还是一样的现象。看来C是有些让人头疼的地方。问了一些开发过这样 ...

说会C,不会汇编,就是你还没学会编程,真正的编程是跟语言无关的。推荐《程序调试黑宝书》

使用特权

评论回复
12
wangyy608| | 2013-9-27 08:45 | 只看该作者
可以试着调整程序结构,不要嵌套的太多

使用特权

评论回复
13
jackcms| | 2013-9-27 09:47 | 只看该作者

使用特权

评论回复
14
jackcms| | 2013-9-27 10:09 | 只看该作者
谢谢!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

110

帖子

1

粉丝