你们好,前段时间用430写一个稍复杂的程序时遇到一些变量内存的分配上的一些问题。我用的软件是TI的CCSV5,硬件是MPS430F5438A。具体情况如下:
如上图示,在一个函数中我定义了一个unsigned long型的变量temp,但它的位置是Register R12,R12的长度应该只有24位,似乎不大对吧。如何把变量直接定义在某个地址上,而不是寄存器。
此外似乎无法对变量temp进行赋值,如:
temp=0;
temp++;
执行先上面条语句后,temp居然等于0x00005A73!如下图示:
还有一次我用结构体指针作为函数参数成员进行传值,对此指针地址不做任何改变的情况下,在最后跳出此函数时该结构体指针所指向的地址居然突然变化为另一个无关的值,真是难以理解!
问题有点多,希望给予解惑,谢谢!



