请教大家两个问题,将一个函数复制到一个数组然后跳转到数组地址去执行那个函数,gcc编译器编译x86可执行程序没有问题,IAR编译430可执行程序也没有问题,但是Keil编译stm32 程序执行的时候不能跳转,进一步发现是LSB置1了并且发现跳转的地址是个偶数(猜测可能与这个有关系,因为好像是CM3规定跳转分支需要是奇数地址)?进而又准备将那个函数绑定在某个地址编译,绑定在ROM可以通过(因为时间关系没有来得及执行),发现绑定在RAM编译不通过,这是为什么?求大神指点一下。最终目的也就是需要将这个函数放到RAM中执行,不知道有没有一些更好的方案设计?
好的,非常感谢SimonLuk和David的大力协助。 也赞一下 GJF712 能把答案贴上来利人利己。