共2条
1/1 1 跳转至页
memory,remap 问个问题:memory remap是怎么回事
问
是不是说:没有经过这一步,44B0X就没法进入中断
答 1:
对此问题也不是很了解,希望高手能指点一下
答 2:
44b0没有memory remap功能!但是可以在0x0000000开始的地址上加上跳转指令从而实现中断向量表的转移!
可以参考bootload程序! 答 3: 回答ARM的中断向量表只能放在0x0地址,而在嵌入式系统中一般而言系统启动时的默认片选是指向非挥发存储器(ROM或Flash中)的,这个默认片选的地址必须是0x0地址(因为ARM的Reset向量是存放在0X0地址的),但是系统Boot起来后一般需要修改中断向量表,使得中断指向正常工作的中断处理器程序,但是ROM和Flash中的Boot时的中断向量表是没有办法改变的(因为他们是只读的),因此就有必要将系统的SRAM或SDRAM的地址重新映射到0x0地址(这时SDRAM或SRAM有两个基址,一个是0x0开始的地址,另一个是用户配置的基址,对于这些基址的访问都指向SDRAM或SRAM),这时用户的程序可以将新的中断向量表设置到SRAM或SDRAM中,进行正常的中断处理了(当然上述的操作过程应该在关闭中断的情况下完成)。以上这个过程就是通常所说的REMAP或 Double Map。
所以你说的不经过REMAP就不能进中断的说法是不正确的,只是说在这种情况进入的中断是系统BOOT前就设定好的,用户没有办法修改而已。 答 4: 好样的trio,再问一下:当系统上电复位时执行的RESET是BOOTLOAD中映射到0X0000000的吧。然后运行FLASH中的客户程序时中断向量是存在于FLASH中对吗?当程序在RAM中运行时就要REMAP此时中断向量存在于RAM中对吗?
可以参考bootload程序! 答 3: 回答ARM的中断向量表只能放在0x0地址,而在嵌入式系统中一般而言系统启动时的默认片选是指向非挥发存储器(ROM或Flash中)的,这个默认片选的地址必须是0x0地址(因为ARM的Reset向量是存放在0X0地址的),但是系统Boot起来后一般需要修改中断向量表,使得中断指向正常工作的中断处理器程序,但是ROM和Flash中的Boot时的中断向量表是没有办法改变的(因为他们是只读的),因此就有必要将系统的SRAM或SDRAM的地址重新映射到0x0地址(这时SDRAM或SRAM有两个基址,一个是0x0开始的地址,另一个是用户配置的基址,对于这些基址的访问都指向SDRAM或SRAM),这时用户的程序可以将新的中断向量表设置到SRAM或SDRAM中,进行正常的中断处理了(当然上述的操作过程应该在关闭中断的情况下完成)。以上这个过程就是通常所说的REMAP或 Double Map。
所以你说的不经过REMAP就不能进中断的说法是不正确的,只是说在这种情况进入的中断是系统BOOT前就设定好的,用户没有办法修改而已。 答 4: 好样的trio,再问一下:当系统上电复位时执行的RESET是BOOTLOAD中映射到0X0000000的吧。然后运行FLASH中的客户程序时中断向量是存在于FLASH中对吗?当程序在RAM中运行时就要REMAP此时中断向量存在于RAM中对吗?
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【笔记】生成报错synthdesignERROR被打赏50分 | |
【STM32H7S78-DK评测】LTDC+DMA2D驱动RGBLCD屏幕被打赏50分 | |
【STM32H7S78-DK评测】Coremark基准测试被打赏50分 | |
【STM32H7S78-DK评测】浮点数计算性能测试被打赏50分 | |
【STM32H7S78-DK评测】Execute in place(XIP)模式学习笔记被打赏50分 | |
每周了解几个硬件知识+buckboost电路(五)被打赏10分 | |
【换取逻辑分析仪】RA8 PMU 模块功能寄存器功能说明被打赏20分 | |
野火启明6M5适配SPI被打赏20分 | |
NUCLEO-U083RC学习历程2-串口输出测试被打赏20分 | |
【笔记】STM32CUBEIDE的Noruletomaketarget编译问题被打赏50分 |