jaky80000 发表于 2015-1-29 00:13:29

STC15W204S的加入XDATA后,使用部分不正常(已解决看14楼)

本帖最后由 jaky80000 于 2015-1-29 10:36 编辑

由于idata只有128个字节,不够用,所以把对速度要求没这么高的变量用xdata,
如:uchar xdata xtemp;
其他程序都正常,就是如果程序中用此变量就会不对。请教是我用的不对吗?

xpxp 发表于 2015-1-29 01:12:08

uchar xdata a=1;
if(a)P1^0=0;
while(1);

farfar 发表于 2015-1-29 08:20:54

沒有發現不妥的地方,除非你沒有初始化該變量就是用該變量。

lusson 发表于 2015-1-29 08:45:14

楼主,我没看到STC15W204S说有xdata啊。
只看到是有片内256Byte。

jaky80000 发表于 2015-1-29 09:11:23

回复2,3楼的朋友
即使先初始化变量,刚测试了也是有问题的。

jaky80000 发表于 2015-1-29 09:13:11

lusson 发表于 2015-1-29 08:45
楼主,我没看到STC15W204S说有xdata啊。
只看到是有片内256Byte。

谢谢答复,资料上写的是分成128字节的idata和128字节的xdata的。

lusson 发表于 2015-1-29 09:21:59

STC官网太料了,想打开204的资料看下都看不了。
楼主你看下编绎出来有xdata吗?

jaky80000 发表于 2015-1-29 09:26:45

lusson 发表于 2015-1-29 09:21
STC官网太料了,想打开204的资料看下都看不了。
楼主你看下编绎出来有xdata吗? ...

有的,你定义时加个xdata编译出来的就有xdata的

zyjbcnmdb 发表于 2015-1-29 09:48:06

uchar型变量,溢出了没?

STCunio 发表于 2015-1-29 09:56:45

STC15W204S只有256个片内RAM,没有片外XDATA,然而使用了XDATA编译器不会提醒错误,但使用的XDATA是不起作用的

jaky80000 发表于 2015-1-29 10:03:46

STCunio 发表于 2015-1-29 09:56
STC15W204S只有256个片内RAM,没有片外XDATA,然而使用了XDATA编译器不会提醒错误,但使用的XDATA是不起作 ...

谢谢!
请教使用keilc时,要怎么使用呢,因为超过128时就会报数据空间超过的错误,导致编译错误。

jaky80000 发表于 2015-1-29 10:21:52

lusson 发表于 2015-1-29 08:45
楼主,我没看到STC15W204S说有xdata啊。
只看到是有片内256Byte。

你说的对,资料上只有内部256字节的。

lusson 发表于 2015-1-29 10:29:25

jaky80000 发表于 2015-1-29 10:21
你说的对,资料上只有内部256字节的。

256你只用了128,还有128的idata可以用,你定义的时候使用idata试下。

jaky80000 发表于 2015-1-29 10:35:26

lusson 发表于 2015-1-29 10:29
256你只用了128,还有128的idata可以用,你定义的时候使用idata试下。

是的,用idata定义就ok了

lusson 发表于 2015-1-29 10:37:26

jaky80000 发表于 2015-1-29 10:35
是的,用idata定义就ok了

修正下说法,idata指的是片内全部的256Byte RAM.默认是data为低128Byte

小李非刀 发表于 2015-1-29 11:07:45

对于STC的规格书,里面对功能的描述是所有的IC通用的,但是某个型号有什么资源,请看这个型号的选型表,里面有资源列表。

xiaobendan 发表于 2015-1-30 18:54:28

基础问题,256以外的才是XDATA
页: [1]
查看完整版本: STC15W204S的加入XDATA后,使用部分不正常(已解决看14楼)