基于STM/APM32F072制作的J-Link OB调试器项目验证

基于STM/APM32F072制作的J-Link OB调试器项目验证


  • 📍本文基于github项目:https://github.com/geekchun/Jlink-OB/tree/master
  • ⚡申明:仅限个人研究学习,无其他用途。
  • 🌿采用该项目提供的固件,烧录STM32f4时信息以及硬件信息:
    在这里插入图片描述
  • 🌿对于制作的J-Link OB调试器,也可以使用现成的ST-LINKv2烧录器通过特定软件升级固件换成J-Link OB调试器的固件。也就是说,制作J-Link OB调试器,可以是STM32F103CBt6的芯片。
✨该项目是基于STM32F072CBTx制作的,正好手上之前制作过一款stm32f072RBT6的最小系统板,于是进行功能验证一下,实际采用的是极海的APM32F072RBT6主控芯片,成功验证了项目可行性。
  • 👉在JLINK没有添加license情况下,不支持JLINK软件下载。
  • 🌿J-Link OB-STM32F072 最快下载速度2M,设置2MHz下载速度,需要将J-Link OB-STM32F072的PA1连接到目标板上的NRST引脚,才能达到此速度,没有连接此引脚,只能选择500KHz的下载速度.否则,在设置高于500KHz速度参数时,下载会报错。
    在这里插入图片描述

📓STM32F072的OB调试器简介

  • 📍segger官方对J-Link OB介绍:https://www.segger.com/products/debug-probes/j-link/models/j-link-ob/#supported-devices
  • 🔖仅支持SWD接口
  • 🔖仅支持Cortex-M MCU
  • 🔖支持SWO功能
  • 🔖使用STM32F072的硬件串口来实现的CDC虚拟串口
  • 🔖无需外部晶振,使用内部48MHz的HSI
    🔖 外部器件更少,体积更小巧.
  • 🔖下载速度慢,固件限制jtag时钟最高2MHz。
  • ✨使用个人开发板验证时测试,时钟调至500KHz,下载程序时才不会报错。
  • 🔰如果个人进行验证的话,硬件+制作成本可能就5元以内(主控3.5元+其他元件算1.5)就可以制作,前提是使用立创免费PCB打样。

  • 🍁原理图:
    在这里插入图片描述

  • 📌项目的在线原理图以及PCB文件:https://365.altium.com/files/E4666ADF-0253-4355-9297-A74E3173189E?openedFrom=files&variant=[No+Variations]
    在这里插入图片描述

  • 🌿APM32F072可以参考:(D+需要1.5K上拉):https://www.geehy.com/uploads/tool/APM32F072VB-MINIBOARD%20V1.0.pdf
    在这里插入图片描述

  • ✨stm32f072cxt6芯片的DP线是内置上拉电阻的,可以不需要此上拉电阻。可以参考:https://oshwhub.com/lsanor/j-link-ob-stm32f072_v1-2
  • 📑基于STM/APM32F072 JLINK OB烧录连接方式:
PA2  ---   连接目标板的PA14(swclk)
PA4  ---	连接目标板的PA13(SWDIO)
PA1	 --- 连接目标板的NRST(RST)
---虚拟串口---
PA9(OB_TX)
PA10(OB_RX)
  • 🔧J-Link驱动下载地址:https://www.segger.com/downloads/jlink/

📑固件烧录说明

  • ✨个人直接使用的是项目提供的jlink-ob-072-cortex-m.bin文件直接使用STM32 ST-LINK Utility工具进行烧录。
  • 🌿使用APM32F072芯片,需要注意,如果使用STM32 ST-LINK Utility工具烧录,那么版本不能太高,否则无法连接和识别APM32芯片,新版本的STM32所有上位机软件都有排他性识别。
  • 🏷极海Geehy-ISP软件通过串口下载:https://www.geehy.com/apm32?id=16
  • 🌿烧录完固件后,需要安装驱动,才能正常识别J-LINK,否则在电脑设备管理器中只显示bulk interface设备,必须手动更新驱动才行。🔖具体可以参考:https://wiki.segger.com/J-Link_shown_as_generic_BULK_device_in_Windows
    在这里插入图片描述
  • 🌿驱动下载地址:https://www.segger.com/downloads/jlink/

🛠烧录配置参考

  • 🔧Keil MDK烧录配置参考选项:
    在这里插入图片描述

⛳序列号和license添加

  • ✨添加这2项内容主要是为了使用JLINK软件直接对目标对象进行烧录。添加序列号操作必须使用JLINKV7以下的版本才支持修改序列号的命令。
  • 🌿烧录完成固件后,并且安装了JLINK软件以及打好驱动后,运行JLINK的J-Link Commander窗口,会S/N序列号会显示-1显示:
    在这里插入图片描述
  • 🌿输入exec setsn=20231231,其中setsn=后面的数字字符串中自己随便填写。
    在这里插入图片描述
  • 🌿在JLINK菜单help - license-选择Add license按钮进行添加。
    在这里插入图片描述
  • 🔖添加license序列号需要根据上面所设定的序列号进行生成。忘记了可以提供JLINK command进行查看。
    在这里插入图片描述
  • 📌工具来源于:https://oshwhub.com/LSanor/jlink-ob_32f103
    在这里插入图片描述

在这里插入图片描述

  • 🌿有关固件版本修改说明

使用ST-LINK Utility软件加载烧录文件,定位到固件信息处,双击进行编辑,然后保持。
在这里插入图片描述
在这里插入图片描述

📘ST-LINKv2调试器和J-Link OB调试器固件相互介绍

  • 🌿使用SEGGER官网的工具软件STLinkReflash,进行固件升级和转换。

在这里插入图片描述

  • 👉通过软件该软件进行固件更新操作比较简单,可以自行搜索相关内容,进行进一步了解。但是需要注意一点,目前测试发现,仅支持使用ST意法半导体的stm32f103C8-B的芯片才支持该软件的固件更换。同型号国产的不支持该软件的固件更换,只能通过SWD刷写的方式来实现固件的更换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值