在IAR下通过Jlink将程序直接下载到Flash指定地址
2012-10-16 17:16
309 查看
用IAR直接下载.out文件到Flash中:
.out文件在工程文件夹的exe文件夹下,体积比较大,能比.hex或.bin大十倍以上。
在DFU配置的工程下(左上角下拉菜单可选DFU 还是FLASH),菜单栏Project->Download->Download file… 可以下载.out文件到芯片中。
具体下到哪,在工程上点右键->linker->edit,这里可以设置中断向量表(VectorTable)和程序存放地址(Memory Regions)。IAP程序(相当于bootloader)中断向量表设在0x08000000程序起始地址设为0x08000044(多出来的0x44用来放大小为0x40的向量表);普通用户程序(被引导的)分别设为:0x08003000,0x08003000。
本人亲测,先将自己的程序下到0x08003000开始的区域,再将William给的DFU.out下到IAP区(0x08000000),重启两次后可以正确引导运行,而且原来进DFU模式的按钮生效。
另外,貌似用Download and Debug 按钮下载时只有设置成0x08000000才能调试。
.out文件在工程文件夹的exe文件夹下,体积比较大,能比.hex或.bin大十倍以上。
在DFU配置的工程下(左上角下拉菜单可选DFU 还是FLASH),菜单栏Project->Download->Download file… 可以下载.out文件到芯片中。
具体下到哪,在工程上点右键->linker->edit,这里可以设置中断向量表(VectorTable)和程序存放地址(Memory Regions)。IAP程序(相当于bootloader)中断向量表设在0x08000000程序起始地址设为0x08000044(多出来的0x44用来放大小为0x40的向量表);普通用户程序(被引导的)分别设为:0x08003000,0x08003000。
本人亲测,先将自己的程序下到0x08003000开始的区域,再将William给的DFU.out下到IAP区(0x08000000),重启两次后可以正确引导运行,而且原来进DFU模式的按钮生效。
另外,貌似用Download and Debug 按钮下载时只有设置成0x08000000才能调试。
相关文章推荐
- 在IAR下通过Jlink将程序直接下载到Flash指定地址
- 直接通过配置文件来指定log文件的输出地址
- 使用Jlink通过SWD接口给STM32下载程序连线方式
- keil通过jlink下载程序时提示cannot stop arm device
- 使用IAR+Jlink开发STM32关于下载Flash的一点发现
- STM32F030用IAR+JLINK在线调试无法下载FLASH问题
- 通过程序,而不是连接地址下载文件
- 编写一个程序,可以通过次程序完成一个表的创建操作,输入表的名称,各个列的名称及类型,输入完成后直接通过JDBC创建指定的表。
- 试图搞懂MDK程序下载到flash(五)--使用MDK中的download直接下载到nor flash
- 解决“只能通过Chrome网上应用商店安装该程序”的方法下载地址
- 编写一个程序,可以通过次程序完成一个表的创建操作,输入表的名称,各个列的名称及类型,输入完成后直接通过JDBC创建指定的表。
- 发布程序 通过safari直接下载手机安装
- 通过keil给stm32板下载程序出现cannot load flash programming algorithm
- 编写一个程序,可以通过次程序完成一个表的创建操作,输入表的名称,各个列的名称及类型,输入完成后直接通过JDBC创建指定的表。
- 在IAR6.3上使用Jlink无法仿真控制LED,但是下载程序正常,SWO一直处于打开模式解决办法
- 通过修改程序的代码使程序能够下载并运行指定程序
- 编写一个程序,可以通过次程序完成一个表的创建操作,输入表的名称,各个列的名称及类型,输入完成后直接通过JDBC创建指定的表。
- 编写一个程序,可以通过次程序完成一个表的创建操作,输入表的名称,各个列的名称及类型,输入完成后直接通过JDBC创建指定的表。
- 如何对没有直接下载地址(只能通过eclipse下载)Eclipse插件进行link安装
- IAR中通过ICF指定某变量的地址 或者 通过语句指定