void Wr93c46(tBYTE Addr_93c46,tWORD Word_93c46) { tBYTE i; Wen93c46(); SK93c46=0; DI93c46=1; CS93c46=1;//选中 Clock93c46(); Addr_93c46=Addr_93c46&0x3f|0x40; for(i=8;i!=0;i--) { DI93c46=Addr_93c46&0x80; Clock93c46(); Addr_93c46<<=1; } for(i=16;i!=0;i--) { DI93c46=Word_93c46&0x8000; Clock93c46(); Word_93c46<<=1; } CS93c46=0;//不选中,以降低功耗 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); CS93c46=1;//选中 DO93c46=1; while(DO93c46==0) { ; } EWDS(); ///用在此处不成功? }
调试时发现函数 EWDS(); 不是被做为子程序调用的(lcall EWDS()),而是直接跳到那儿去(ljmp EWDS()),请问谁知道这是怎么回事?? 谢谢! |