STC15W204S的加入XDATA后,使用部分不正常(已解决看14楼)
本帖最后由 jaky80000 于 2015-1-29 10:36 编辑由于idata只有128个字节,不够用,所以把对速度要求没这么高的变量用xdata,
如:uchar xdata xtemp;
其他程序都正常,就是如果程序中用此变量就会不对。请教是我用的不对吗? uchar xdata a=1;
if(a)P1^0=0;
while(1); 沒有發現不妥的地方,除非你沒有初始化該變量就是用該變量。 楼主,我没看到STC15W204S说有xdata啊。
只看到是有片内256Byte。 回复2,3楼的朋友
即使先初始化变量,刚测试了也是有问题的。 lusson 发表于 2015-1-29 08:45
楼主,我没看到STC15W204S说有xdata啊。
只看到是有片内256Byte。
谢谢答复,资料上写的是分成128字节的idata和128字节的xdata的。 STC官网太料了,想打开204的资料看下都看不了。
楼主你看下编绎出来有xdata吗? lusson 发表于 2015-1-29 09:21
STC官网太料了,想打开204的资料看下都看不了。
楼主你看下编绎出来有xdata吗? ...
有的,你定义时加个xdata编译出来的就有xdata的 uchar型变量,溢出了没? STC15W204S只有256个片内RAM,没有片外XDATA,然而使用了XDATA编译器不会提醒错误,但使用的XDATA是不起作用的 STCunio 发表于 2015-1-29 09:56
STC15W204S只有256个片内RAM,没有片外XDATA,然而使用了XDATA编译器不会提醒错误,但使用的XDATA是不起作 ...
谢谢!
请教使用keilc时,要怎么使用呢,因为超过128时就会报数据空间超过的错误,导致编译错误。 lusson 发表于 2015-1-29 08:45
楼主,我没看到STC15W204S说有xdata啊。
只看到是有片内256Byte。
你说的对,资料上只有内部256字节的。 jaky80000 发表于 2015-1-29 10:21
你说的对,资料上只有内部256字节的。
256你只用了128,还有128的idata可以用,你定义的时候使用idata试下。 lusson 发表于 2015-1-29 10:29
256你只用了128,还有128的idata可以用,你定义的时候使用idata试下。
是的,用idata定义就ok了 jaky80000 发表于 2015-1-29 10:35
是的,用idata定义就ok了
修正下说法,idata指的是片内全部的256Byte RAM.默认是data为低128Byte 对于STC的规格书,里面对功能的描述是所有的IC通用的,但是某个型号有什么资源,请看这个型号的选型表,里面有资源列表。 基础问题,256以外的才是XDATA
页:
[1]