伟福V8仿真调试Winbond77E58不能正常使用片上1K外部存贮器的问题

omantou   2008-7-27 11:26 楼主
我用伟福V8/L仿真调试Winbond77E58板子,

W77E58有片上1K外部存贮器,我不知是我的编译环境设置不对,
还是伟福不能仿真片上1K外部存贮器?在下面的程序中,将
int xdata iii;
改为:
int data iii;
就正常。

调试下列程序,
-------------------------------------------------------------------------------
#include   
#include   
#include   
#include   

/* USER headers */
sfr PMR=0XC4;

int xdata iii;

/************************************/
/*         main program  */
/************************************/
void main()
{

PMR=PMR|0X01;

iii=0;

iii = 10;
}
-----------------------------------------------------------------------------------
跟踪iii变量的值,发现iii始终等于1,不知为什么?

我用Keil uVision 3和伟福的VW for Windows调试,结果都一样。

请帮助,谢谢!

回复评论 (6)

..
点赞  2008-7-27 22:58
估计是仿真器不支持W77E58的片上xdata
点赞  2008-7-28 09:02
你用Keil软件仿真调试一下,如果能成功说明程序没问题。
再用仿真器试不行的话就得找仿真器厂家问了。
点赞  2008-7-28 10:08
我用的时候是这样定义一个变量的
xdata unsigned int SendBTTimeout;  
完全可以用啊,我也在用w77e58
点赞  2008-7-29 23:27
是不是编译时候存储器设置的选项没选对啊,应该设成large模式,所有变量均在xdata上
点赞  2008-7-30 10:37
原因是仿真器有问题,谢谢各位关注!给分了。
点赞  2008-8-22 08:59
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复