求大侠指点:keil中,N76E003的xdata,为何不能用在函数中传递
如《图一》所示,数组定义:UINT8xdata UART_BUFFER;
在调用图二的函数时,发现不能获取正确的数值,求高手指点迷津。
cmd的值发现不对,不是取到UART_BUFFER的值。
图一
图二
本帖最后由 bblythe2017 于 2018-12-26 15:16 编辑
写法很low ,按下面的试试。
cmd = *buf;
cmd1=*(buf+1);
cmd2=*(buf+2); 记录下,真正的原因是这里的设置导致的:
51用指针是要好好考虑考虑的 蛋定 发表于 2018-12-26 20:43
记录下,真正的原因是这里的设置导致的:
請問下樓主,003不能用無源晶振,你UART是用有源晶振?或是用003內建的,內建的調適好後穩定度如何? 看下汇编代码, 贴出来就明白了 WOSDAIZ 发表于 2018-12-27 03:21
請問下樓主,003不能用無源晶振,你UART是用有源晶振?或是用003內建的,內建的調適好後穩定度如何? ...
没用外部晶振,我也不熟悉这个,刚开始用啊,你看看例程,例程里很全面 再记录下教训:xdata 的区域,定义300个字节,发现在202开始不能操作了,最后解决是删除其他的xdata里的数组,本来是768个字节,为何不能用呢,感到到奇怪。
页:
[1]