大华HC32F460基于J-Link()RTT Viewer的printf输出

目前比较稍微比较清楚的是J-Link的RTT调试printf输出。(HC32F460开发板),其他方式弄明白再来

之前已在STM32G0上调通,但在大华的开发板上,J-Link RTT Viewer上一直无法显示,找了好多大佬的出坑资料,终于我也出坑了。

以下是HC32F460的RTT调试printf输出的配置过程:

1、在J-link上使用HC32F460时,需要先将HC32F460添加到J-Link中

 

<!--                 -->

  <!-- HDSC (HC32) -->

  <!--                 -->

  <Device>

    <ChipInfo Vendor="HDSC" Name="HC32F460"  WorkRAMAddr="0x20000000" WorkRAMSize="0x10000" Core="JLINK_CORE_CORTEX_M4"/>

    <FlashBankInfo Name="Flash_512K" BaseAddr="0x0" MaxSize="0x80000" Loader="Devices/HDSC/HC32F460_512K.FLM" LoaderType="FLASH_ALGO_TYPE_OPEN" AlwaysPresent="1"/>

  </Device>

2、将HDSC文件夹拷贝到你的jlink安装目录下的Devices文件夹,比如我这里的拷贝目录为C:\Program Files (x86)\SEGGER\JLink\Devices

3、打开jlink安装目录下的JlinkDevices.xml文件,如果jlink安装在系统目录下,可能需要以管理员权限打开。打开JlinkDevices.xml文件后,在文件末尾(</DataBase>之前)添加以下内容,添加内容如图中圈出的所示

加好之后可以在J-Link中选择

4.J-Link配置好之后可以配置Keil这边了。需要注意以下几个地方:a、先将J-link-Samples文件下的RTT文件拷到你的工程中。b、在keil中添加RTT的路径。

Keil的trace功能打开,选择端口0,如图

在程序中添加头文件#include "SEGGER_RTT.h",再调用SEGGER_RTT_printf函数即可

将程序烧录到开发板中,打开J-Link RTT Viewer,发现并没有数

和之前的STM32调试流程一样,但在大华的HC32上并没有显示数,找了大佬的出坑指南,发现,需要输入RTT控制块的地址,双击工程工程,调出.map文件,找到如下行:

地址是0x1fff8218,输入到

即可看到输出。出坑。。。

搞清楚原理,再出详细的说明。有错误请指正哦~

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪玫儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值