请教马老师及各位高手,关于ATMEGA128外部SRAM里两个不同数据类型的数组之间的数据交
如题:刚刚遇到一个很棘手的问题,请马老师跟各位高手指点一下!就是两个定义于外部sram里的数组A和B,A数据类型是uint,B数据类型是float,现在想将A里的数据给B,但是出现了很大的问题。
#pragma abs_address:0x1100
uint A;//通过16位A/D采的数
#pragma end_abs_address
#pragma abs_address:0x110A
float B;//计算完给上位机传的数(必须传浮点数)
#pragma end_abs_address
1.直接在循环里交换好像不行
for(i=0;i<10;i++)
{
B=A;
}
2.用中间变量也不行
for(i=0;i<10;i++)
{
temp=A;
B=temp;
}
现在就一个好使的方法:
B=A;
B=A;
B=A;
...
...
...
B=A;
但是数组的大小不是10,只是随便举个例子,真实的有1024,要是像这种方法的话得写到什么时候啊。。。。。。
所以请马老师及各位高手出出招,不胜感激。。。。。。 B=A;
和
B=A;
B=A;
B=A;
没有区别的。
查看是否其它情况造成的。比如数据空间超出实际RAM的空间等
页:
[1]