1、JLink仿真调试器 下载器五花八门,但是我只用JLink,小巧方便携带。对于单片机开发者一般所用的下载器基本就是JLink和ST-Link。这两者功能差不多,JLink是SEEGER公司的,ST-Link是ST公司的,而且只支持ST系列的芯片。只用JLink下载器调试,原因就是这玩意体积小,只有四根线,用起来太方便了,YYDS! 
J-Link OB ARM 仿真调试器2、安装JLink驱动下载链接:https://www.segger.com/downloads/jlink/。买回来JLink驱动后,一般卖家都会提供JLink的驱动程序,驱动安装完成后就可以下载调试程序了。 
https://www.segger.com/downloads/jlink/当然我们现在要使用JLink的RTT功能(实时传输Real Time Transfer,可不是RT-Thread操作系统啊 ),就需要在官网下载完整的Jlink包,最新版本的是V7.52版本的,当然别的版本也可以。下载完成后直接安装可以了。安装完成后你会在你的安装目录下看到如下内容: 
JLink安装目录3、移植RTT安装完成就好办了,RTT源码包就在我们刚刚安装的JLINK驱动的目录里面。我的目录是:D:\Software\SEGGER\JLink_V644b\Samples\RTT 解压后具体的目录是:[size=0.9em]D:\Software\SEGGER\JLink_V644b\Samples\RTT\SEGGER_RTT_V644b\RTT 然后将这个RTT文件夹复制到我们的编写程序的工程文件夹中  然后在项目中新建一个RTT分组,并将RTT文件夹中的两个.c文件添加进来。   当然还要记得添加RTT的头文件路径  到这里基本就移植成功了,是不是很简单,就是把RTT的源码添加到工程中即可,完全不需要修改别的什么操作。 4、RTT打印输出接下来就可以打印输出了。 #include "sys.h"#include "delay.h"#include "usart.h"#include "led.h"#include "SEGGER_RTT.h"int main(void){ HAL_Init(); //初始化HAL库 Stm32_Clock_Init(336,8,2,7); //设置时钟,168Mhz delay_init(168); //初始化延时函数 LED_Init(); //初始化LED while(1) { SEGGER_RTT_printf(0,"zhiguoxin666\r\n"); }}
 编译没有错误之后连接好下载器

配置为SW模式之后打开JLink安装目录下的JLinkRTTViewer.exe  按照如下配置  将代码下载到单片机中就可以看到已经完美的打印了。 
|