查看: 1065|回复: 0

[求助] K64程序空间分块

[复制链接]

该用户从未签到

1

主题

1

帖子

0

新手上路

Rank: 1

积分
15
最后登录
2024-6-27
发表于 2024-6-27 10:55:26 | 显示全部楼层 |阅读模式
问题1:
请教,我用MK64FX512,现在我想将程序空间分成两个块,第一个块位于0x00-0x2ffff,第二个块位于0x3000-0x80000,从第一个块跳转到第二个块用了如下指令:typedef void (*iapfun) (void);
iapfun jump2app;

void msrmsp (unsigned int addr)
{
        __asm volatile (
        "MSR MSP, r0                \n"
        "BX r14                                \n"
        );
}

void iap_load_app (unsigned int appxaddr)
{
    unsigned long tmp;

    tmp = (*(volatile unsigned int *)appxaddr) & 0x2ff00000;
    tmp = tmp;
        if (tmp == 0x20000000) {
       
               
                jump2app = (iapfun)*(volatile unsigned int *)(appxaddr + 4);
                msrmsp (*(volatile unsigned int *)appxaddr);
                jump2app();               
        }
}


调用iap_load_app (0x3000),0x3000已经有程序了,上面的程序在ST\TI的M4使用没有问题,但是在MK64无法运行0x3000的程序。

问题2:
程序能在0x10000000第二块FLASH运行吗?
我知道答案 目前已有0人回答
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-8-29 13:40 , Processed in 0.066856 second(s), 20 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表