Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Bootloader
LPC546XX Bootloader跳转问题
发布于 2020-03-12 10:22:31 浏览:1282
订阅该版
最近在尝试制作LPC546xx的bootloader,过程中采用了[SpunkyWX](https://gitee.com/spunky_973)的方案。 但是最后在跳转时,跳转到APP后只打印出了RTT的LOGO就无法向下执行。 早上换成NXP官方的bootloader进行了尝试,出现了同样的问题。 1.APP的程序,不使用boot是可以正常运行和跑起来的。 2.使用boot后,从现象来看,程序已经成功进行了跳转,并运行; 现在想请教一下大家,有没有遇到过类似的问题?感觉是系统没有能够起来,APP段如果不放在0地址开始要做哪些设置吗? ![使用bootloader以后的启动情况.png](https://oss-club.rt-thread.org/uploads/202003/12/102140j8592l9lb9f9x90q.png) ![不使用bootloader的启动情况.png](https://oss-club.rt-thread.org/uploads/202003/12/102141rlt15ml5iiyucy9c.png) ![是否使用bootloader分散加载文件的区别.png](https://oss-club.rt-thread.org/uploads/202003/12/102141qkkgr4wpvrbdq4gw.png)
查看更多
5
个回答
默认排序
按发布时间排序
Alex.Pan
2020-03-12
这家伙很懒,什么也没写!
[i=s] 本帖最后由 Alex.Pan 于 2020-3-12 11:07 编辑 [/i] 另外,这个boot和另一个ucosIII的项目是跳转运行成功的。 跳转代码如下: ``` /* * The vector table is in the front of the image, and the following is for the normal code. * The new image is just like the normal image file but with a indicated base address offset. */ void FwBoot_BootToFwImage(uint32_t fwImageBaseAddr) { void (*firmwareFunc)(void); uint32_t fwStackVal = *((uint32_t *)(fwImageBaseAddr)); /* the first word is for the stack pointer. */ uint32_t fwEntryVal = *((uint32_t *)(fwImageBaseAddr+4U)); /* the second works is for the boot function. */ firmwareFunc = (void (*)(void))fwEntryVal; SCB->VTOR = fwImageBaseAddr; /* The stack address is also the start address of vector. */ __set_MSP(fwStackVal); __set_PSP(fwStackVal); firmwareFunc(); } ```
cychen
2020-03-12
这家伙很懒,什么也没写!
SCB->VTOR = (0x00000000 & NVIC_VTOR_MASK); APP里面这个去掉
Alex.Pan
2020-03-12
这家伙很懒,什么也没写!
[i=s] 本帖最后由 Alex.Pan 于 2020-3-12 14:48 编辑 [/i] >SCB->VTOR = (0x00000000 & NVIC_VTOR_MASK); APP里面这个去掉 --- 想起来你也是用lpc46xx的,是否方便加个qq,平常一起交流一下94034822 我是下面这段代码,试了去掉没用。 ![]()
Alex.Pan
2020-03-12
这家伙很懒,什么也没写!
打开系统调试信息后,打印信息如下: ``` mem init, heap begin address 0x2000f834, size 100268 initialize rti_board_start:0 done initialize rt_hw_pin_init:0 done initialize rt_hw_spifi_init:0 done \ | / - RT - Thread Operating System / | \ 4.0.2 build Mar 12 2020 2006 - 2019 Copyright by rt-thread team start scheduler: max priority 0x20 malloc size 144 thread (NULL) take sem:heap, which value is: 1 thread (NULL) releases sem:heap, which value is: 0 allocate memory at 0x2000f844, size: 160 malloc size 2048 thread (NULL) take sem:heap, which value is: 1 thread (NULL) releases sem:heap, which value is: 0 allocate memory at 0x2000f8e4, size: 2064 startup a thread:main with priority:10 thread resume: main insert thread[main], the priority: 10 startup a thread:timer with priority:4 thread resume: timer insert thread[timer], the priority: 4 startup a thread:tidle0 with priority:31 thread resume: tidle0 insert thread[tidle0], the priority: 31 remove thread[timer], the priority: 4 ``` 感觉,是切换以后,RTT没有能够跑起来,问题出在哪里呢?
Alex.Pan
2020-03-13
这家伙很懒,什么也没写!
>SCB->VTOR = (0x00000000 & NVIC_VTOR_MASK); APP里面这个去掉 --- 感谢,再次在你的提示下解决了问题。昨天是我没仔细找错了地方。
撰写答案
登录
注册新账号
关注者
0
被浏览
1.3k
关于作者
Alex.Pan
这家伙很懒,什么也没写!
提问
21
回答
28
被采纳
1
关注TA
发私信
相关问题
1
Linux下通过USBTinyISP为Arduino开发板烧?写Bootloader
2
请教修改NVIC后RTT调度函数失效的问题[已解决 bootloader中打开了不必要的中断]
3
进入bootloader的方式探讨
4
求助:IAP里的APP使用的RTT,跳转后出错。[已解决]
5
有没有人在STM32F103上用UART IAP跑过RT-Thread?
6
想做网口的IAP远程升级,不知可不可行
7
IAP问题
8
[已解决]请教基于RTT的IAP程序切换到应用程序不成功的问题(基于STM32F4)?
9
stm32f4xx-----IAP移植APP程序需要注意的地方
10
在调试IAP网络升级遇到跳转之后bootloader程序网络不通
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
五分钟玩转RT-Thread新社区
5
国产MCU移植系列教程汇总,欢迎查看!
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
musb移植问题记录【设备注册3次挂起】
2
关于使用CherryUSB时候使用外挂的usb phy 芯片配置的一点注意事项
3
【Vision Board 创客营】Vision Board上的ADC实践
4
FRDM-MCXN947 & RT-Thread的CAN实践——控制GM6020云台电机
5
[Vision Board创客营]WDT实践之配置、issue、PR一条龙
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
CAN总线
Hardfault
FinSH
USB
文件系统
RT-Thread
DMA
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
I2C_IIC
UART
flash
cubemx
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
ADC
BSP
中断
keil_MDK
编译报错
socket
MicroPython
GD32
msh
Debug
ulog
SDIO总线
SFUD
rt_mq_消息队列_msg_queue
C++_cpp
本月问答贡献
xiaorui
7
个答案
3
次被采纳
sakumisu
4
个答案
3
次被采纳
三世执戟
31
个答案
1
次被采纳
梦笑真美
18
个答案
1
次被采纳
踩姑娘的小蘑菇
14
个答案
1
次被采纳
本月文章贡献
Z_Y
2
篇文章
5
次点赞
Alipay
2
篇文章
3
次点赞
2345vor
2
篇文章
1
次点赞
比特饼干
1
篇文章
6
次点赞
Lu_盼盼
1
篇文章
3
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部