建设一个网站需要哪些硬件设备,手机网站制作吧,贵州网站建设,上海做网站哪家便宜1 J-Link简介
J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR#xff0c;ADS#xff0c;KEIL#xff0c;WINARM#xff0c;RealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等内核芯片的仿真#xff0c;是学…1 J-Link简介
J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWARADSKEILWINARMRealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等内核芯片的仿真是学习开发ARM最好最实用的开发工具。 J-link 软件包的工具很多有J-FlashJ-Link CommanderJ-Link GDB ServerJ-Link RTT ViewerJ-Mem等小工具组成本文讲解J-link读写MCU内部Flash的相关软件。
2 J-link下载与安装
下载地址https://www.segger.cn/downloads/jlink/
J-link从V750以后Windows就有64位的软件。 笔者这里下载的是JLink_Windows_x86_64_V754d.exe。下载后直接安装即可这样就不再赘述了。
3 J-link读写MCU内部Flash
下面以STM32为例进行讲解当然其他MCU也是试用的只要有JTAG或SWD接口即可。
3.1 使用J-Flash下载程序
这里使用J-Flash将程序下载到MCU的内部Flash中。打开J-Flash在安装完J-Link驱动就会有该软件。
首次使用就需要新建工程如图所示。 然后就选择相应的芯片。 根据板子的芯片类型选择即可。
接下来将前面编译好的程序拖动进入J-Flash。J-Flash支持Hex、Bin等多种文件类型。笔者这里选择的是HEX文件类型。如果烧写的是Bin文件还需要指定烧写的起始地址因为Bin文件是不包含烧写地址的。 然后点击‘Connect’。 然后按F7或者点击‘Production Programming’即可下载。 值得注意的是要想生成HEX文件需要在Keil配置输出文件。 如果要想生成bin文件需要在KEIL的User选项中如下图添加这两项 fromelf --bin --output…/Output/STM32F103.bin …/Output/STM32F103.axf 编译完成后就会在Output目录下生成bin文件。 烧写成功之后此时程序还没有运行点击Target-Manual Programming-Start Application或者按快捷键F9程序才开始运行或者按复位键也可以让程序运行。 如果想让每次下载完成后程序自动运行而不用复位。可以使用工程配置下的自动运行选项。打开Option-Project Setting切换到Production选项勾选Start Application就可以让程序自动运行。 当然啦也可下载任意bin文件到MCU的内部Flash中。另外也可手动进行烧写。
3.2 使用J-Flash读取Flash
打开J-Flash和上一节一样选择相应的芯片然后点击‘Connect’。
选择Target-Manual Programming -Read Back一共有三个选项用于读取不同的Flash地址范围。 Selected sectors 被选择的扇区可以在工程配置选项Project settings-Flash查看哪些扇区被选择了。 Entire chip 整个Flash区域一般选择这个选项读取整个Flash区域的程序
Range 手动指定读取的Flash地址范围。
笔者这里选择Range指定读取Flash的内容。 等待片刻即可读取完成。 选项File- Save data file或者是Save data file as保存读取的数据。 然后即可对比烧写的数据和读取数据是否一致可以用作程序的校验。
3.3 使用J-Mem读取Flash
打开J-Mem选择相应的芯片然后点击‘OK’。 如果连接正常就可以看到MCU的4G内存空间的内容。 笔者这里使用的是STM32F1是Cortex-M3的内核Cortex-M3存储器映射结构如下图所示。 Cortex-M3是32位的内核因此其PC指针可以指向2^324G的地址空间也就是0x0000_0000——0xFFFF_FFFF这一大块空间。根据图中描述Cortex-M3内核将0x0000_0000——0xFFFF_FFFF这块4G大小的空间分成8大块代码、SRAM、外设、外部RAM、外部设备、专用外设总线-内部、专用外设总线-外部、特定厂商等因此使用该内核的设计者必须按照这个进行各自芯片的存储器结构设计。
Cortex-M3存储器结构和STM32存储器结构 图中可以很清晰的看到STM32的存储器结构和Cortex-M3的很相似不同的是STM32加入了很多实际的东西如Flash、SRAM等。可以看到Flash的地址是0x08000000。
这里就可以指定到Flash中读取相应的内容。 当然也可以保存相应地址的内容。
点击右键选择“Save”。 然后选择保存路径设置其实地址。 即可保存任意数据。