我用idata定义那些大的数据类型后,程序是c写的,是可以构建成功的,但是程序运行错误,未输入就端口信号乱波动,板子芯片木有外置ram,单单是stc89c52的裸片。
我就是想问问idata怎么使用,或者推荐些书和资料也可以,谢谢
如果是C写的程序,不用关心变量的使用问题,不管是什么内存类型的。对变量的内存类型的定义,只会影响执行速度,通常不会导致程序执行错误。所以程序运行错误应该还是你的程序有问题。
当然因为51的内存有限,你使用idata内存应该留有余地,因为51的堆栈也在idata区里,你多少要留出堆栈空间,否则程序运行可能会崩溃。建议堆栈至少留8个字节以上。
留心一下附件的第二章第2节。
我使用的是数组变量,板子没外置ram,不能用xdata,最近两天一直在优化代码,原来是200多,硬是让我缩减到160,但还是不能用,头痛不已啊。
想请问还有有什么别的办法吗?
坐等大神指点