希望原子哥指点,BootLoader带RTX系统,跳转到APP后,要重设哪些寄存器

2019-07-20 07:45发布

本帖最后由 wuboaini23 于 2018-6-5 20:47 编辑

希望原子哥指点,BootLoader带RTX系统,跳转到APP后,要重设哪些寄存器,除了设置 SCB->VTOR = FLASH_BASE | 0x10000 还有设置APP程序IROM设置起始地址为0x8010000。还要设置哪些寄存器。现在有个问题是跳转到APP后,一进串口中断就进入了hardFault_handler函数。但是我另外一个APP串口是用DMA模式接收,又没问题。要是BootLoader不初始化任务,直接跳到APP,APP就都能运行,进中断也不会有问题。现在不知道到底是哪里有问题?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
wuboaini23
1楼-- · 2019-07-20 10:35
问题找到了就是RTX自带这三个函数
void SVC_Handler(void)
void PendSV_Handler(void)
void SysTick_Handler(void)
所以在运行在特权模式时,会修改掉这三个函数中断的中断优先级。但是RTX和M4的优先级定义不同,RTX为数值越大 优先级越大 M4为数值越大 优先级越小
xsx127
2楼-- · 2019-07-20 10:55
我觉得不需要其他设置了,我bootloader,app都有os,没发现什么问题
wuboaini23
3楼-- · 2019-07-20 13:45
 精彩回答 2  元偷偷看……
xsx127
4楼-- · 2019-07-20 16:44
freertos
但是你说的几个中断,freertos也会用的
wuboaini23
5楼-- · 2019-07-20 19:33
xsx127 发表于 2018-6-5 22:49
freertos
但是你说的几个中断,freertos也会用的

我是刚刚测试,我把串口实验,修改为带RTX系统,串口中断就没问题了。可以试试boot带reertosAPP为裸机程序

一周热门 更多>