[ZLG-ARM] lpc23xx问题求解!谢谢

[复制链接]
 楼主| shkliu 发表于 2007-1-20 12:26 | 显示全部楼层 |阅读模式
系统win2000.&nbsp;keil&nbsp;uv3&nbsp;.&nbsp;cpu=lpc2378.&nbsp;小系统。<br />startup.s使用的keil,mcb2300的。只修改了stack&nbsp;heap的尺寸。其他没有变。<br /><br />1。使用malloc经常不成功,跑到DAbt_Handler。<br />2。调用的函数经常不能返回,跑到PAbt_Handler。<br /><br />多谢赐教!
hotpower 发表于 2007-1-20 12:34 | 显示全部楼层

昨天看见有人做先用lpc214x软仿真试试,不知可行否???

硬件估计可以跑起来,但软仿真用lpc23xx估计不行...
db10 发表于 2007-1-20 13:45 | 显示全部楼层

malloc是不太好用,跟库有关

&nbsp;你可以查查00的内存申请程序.俺现在程序里用他的,感觉不错.以前我在用2132的时候,用系统的malloc也是不稳定的,后来用了00的就好了.
computer00 发表于 2007-1-20 14:30 | 显示全部楼层

哈哈~~~~还真用上了.....不过出了事偶可不负责滴.....

内存分配函数在OS&nbsp;core.c文件里面,而相关宏定义在OS&nbsp;core.h里面。<br /><br /><br /><a href="http://blog.21ic.com/user1/2198/archives/2006/24820.html" target=_blank>http://blog.21ic.com/user1/2198/archives/2006/24820.html</a><br /><br /><br /><br /><a href="http://bbs.21ic.com/club/bbs/list.asp?boardid=39&t=2224233&tp=%u54C8%u54C8%uFF0C%u7EC8%u4E8E%u5C06ARM_00_OS%u79FB%u690D%u5230LPC213X%u4E0A%u6765%u4E86%7E%7E%7E" target=_blank>http://bbs.21ic.com/club/bbs/list.asp?boardid=39&t=2224233&tp=%u54C8%u54C8%uFF0C%u7EC8%u4E8E%u5C06ARM_00_OS%u79FB%u690D%u5230LPC213X%u4E0A%u6765%u4E86%7E%7E%7E</a>
 楼主| shkliu 发表于 2007-1-20 14:56 | 显示全部楼层

我是下载进取调试的。因为程序超过32k的ram:)

00&nbsp;写的malloc?&nbsp;我再找找看。
 楼主| shkliu 发表于 2007-1-20 20:26 | 显示全部楼层

还是没有解决,高手请支招阿。

  
lpc2000 发表于 2007-1-22 07:46 | 显示全部楼层

我以前提到过

嵌入系统,malloc要自己写,不要去用现成的。<br /><br />有的时候,malloc(0)回答1,还有free什么也不回,你怎么知道是不是free了呢?最好的是,写自己的malloc和free,自己定malloc的范围,自己来回挪指针。这样你就不用担心是malloc不对,还是free不对了。<br /><br />例子的话,网上都有。比如,<br /><br />#define&nbsp;NULL&nbsp;0<br />#define&nbsp;ALLOCSIZE&nbsp;100<br /><br />static&nbsp;char&nbsp;allocbuf[ALLOCSIZE];<br />static&nbsp;char&nbsp;*allocptr&nbsp;=&nbsp;allocbuf;<br /><br />char&nbsp;*alloc(n)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;allocptr&nbsp;+&nbsp;n&nbsp;&lt=&nbsp;allocbuf&nbsp;+&nbsp;ALLOCSIZE)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allocptr&nbsp;+=&nbsp;n;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(&nbsp;allocptr&nbsp;-&nbsp;n&nbsp;);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;(&nbsp;NULL&nbsp;);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br />free(&nbsp;p&nbsp;)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;p&nbsp;&gt=&nbsp;allocbuf&nbsp;&&&nbsp;p&nbsp;&lt&nbsp;allocbuf&nbsp;+&nbsp;BUFSIZE&nbsp;)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allocptr&nbsp;=&nbsp;p;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br />
汽车电子 发表于 2007-1-22 08:59 | 显示全部楼层

支持7楼

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

本版积分规则

26

主题

97

帖子

0

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

26

主题

97

帖子

0

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