IAR C如何定义变量
我用__saddr GLOBAL 定义的变量,附初值后再读回来发现数值不对,查看9212的文档,发现saddr定义地址有一段是和SFR重合的(FF00-FF1F),会不会是因为这个问题呢,请大家指教! 是什么型号?有的编译器版本是哪一个?链接文件RAM和SFR重合会错误的,检查一下链接文件-Z(DATA)SADDR_I,SADDR_Z,SADDR_N=RAM开始地址-RAM结束地址,是不是超过了RAM界限。 堆栈设在哪了? 用的是78K0S的9212,编译器是用IAR 4.60A, 我也曾经怀疑这个问题,但查看.map发现RAM的定义空间都没问题, SADDR_I = FE9E, SADDR_Z = FE9E - FEA3, 没有SADDR_N, RAM的空间应该是FE80 - FEFF的吧, 另外堆栈是在编译器里面设的,地址是FE80 - FE9D
页:
[1]