搜索
bottom↓
回复: 51

RTT2UART——像串口一样使用Segger RTT

  [复制链接]

出0入0汤圆

发表于 2019-10-12 09:26:23 | 显示全部楼层 |阅读模式
本帖最后由 tianxiaoMCU 于 2019-10-12 09:25 编辑

项目上越来越多的使用RTT进行调试,但还是习惯用串口,所以写了这个工具,配合虚拟串口工具,就能继续用串口…………………………

工具用python写的,界面使用PySide2,jlink部分使用pylink,所以jlink驱动版本须要≥6.0b

话不多说,直接上图

1、安装虚拟串口工具,论坛很多了,我用的com0com


2、打开工具长这样子


3、点击右上角的按钮,选择目标芯片


4、选择接口、速度等,这里的串口选择虚拟串口对中的一个,点“Start”启动


5、在串口工具里打开虚拟串口对中另一个串口,打完收工



附件太大了,传不上来,放到github上了,可以到上面下载源码仓库在这里

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出25入0汤圆

发表于 2019-10-12 09:34:40 | 显示全部楼层
本帖最后由 hspydf 于 2019-10-12 09:36 编辑

请教两个问题  1  RTT要打印浮点数怎么设置?  我这边打印浮点数一直不成功
                     2 RTT能输入数据吗?还是只能打印?                

出0入8汤圆

发表于 2019-10-12 09:37:05 | 显示全部楼层
关注一下,多谢分享。

出0入8汤圆

发表于 2019-10-12 09:38:58 | 显示全部楼层
hspydf 发表于 2019-10-12 09:34
请教两个问题  1  RTT要打印浮点数怎么设置?  我这边打印浮点数一直不成功
                     2 RTT能输入数据吗?还是 ...

不支持浮点。
可以输入。

出0入0汤圆

 楼主| 发表于 2019-10-12 09:43:04 | 显示全部楼层
hspydf 发表于 2019-10-12 09:34
请教两个问题  1  RTT要打印浮点数怎么设置?  我这边打印浮点数一直不成功
                     2 RTT能输入数据吗?还是 ...

1、打印浮点的接口用的哪个?如果是SEGGER_RTT_printf,这个是不支持浮点的
2、可以输入

出0入0汤圆

发表于 2019-10-12 09:47:18 | 显示全部楼层
hspydf 发表于 2019-10-12 09:34
请教两个问题  1  RTT要打印浮点数怎么设置?  我这边打印浮点数一直不成功
                     2 RTT能输入数据吗?还是 ...


供参考

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2019-10-12 09:55:11 | 显示全部楼层
感谢分享!

出25入0汤圆

发表于 2019-10-12 10:18:22 | 显示全部楼层

谢谢啦,有人讲,配置下就能打印浮点数了.不知道怎么配置

出0入0汤圆

发表于 2019-10-12 10:27:31 | 显示全部楼层
hspydf 发表于 2019-10-12 10:18
谢谢啦,有人讲,配置下就能打印浮点数了.不知道怎么配置

谁说的,那个人看过函数吗,你要用Segger_Printf来打印浮点数,你需要做以下事情
1、实现_PrintFloag函数
2、SEGGER_RTT_vprintf函数中增加f选项字支持并调用_PrintFloag

出0入0汤圆

 楼主| 发表于 2019-10-12 11:13:55 | 显示全部楼层
gamethink 发表于 2019-10-12 10:24
pylink是?有人封装好一个通讯库?

https://github.com/square/pylink

出0入0汤圆

发表于 2019-10-12 11:28:07 | 显示全部楼层
这样就不需要在debug状态下也能打印出来吗?

出140入115汤圆

发表于 2019-10-12 11:37:38 | 显示全部楼层
多谢分享,刚好用到

出0入8汤圆

发表于 2019-10-12 11:40:46 | 显示全部楼层
soos 发表于 2019-10-12 11:28
这样就不需要在debug状态下也能打印出来吗?

原生的 RTT 本来就跟 debug 没有必然的联系。

出0入0汤圆

 楼主| 发表于 2019-10-12 11:41:23 | 显示全部楼层
soos 发表于 2019-10-12 11:28
这样就不需要在debug状态下也能打印出来吗?

是的,其实Segger RTT viewer就可以做到,只是个人觉得不好用,才整了这么个东西

出0入25汤圆

发表于 2019-10-12 11:41:27 | 显示全部楼层

工具很帅,,感谢分享

出140入115汤圆

发表于 2019-10-12 11:42:12 | 显示全部楼层
楼主, 可以帮忙打包为EXE吗。

出0入0汤圆

 楼主| 发表于 2019-10-12 11:43:35 | 显示全部楼层
yanyanyan168 发表于 2019-10-12 11:42
楼主, 可以帮忙打包为EXE吗。

打包了,有点大传不到论坛,就放github上了,可以直接下载

出0入0汤圆

发表于 2019-10-12 11:46:53 来自手机 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-12 11:41
是的,其实Segger RTT viewer就可以做到,只是个人觉得不好用,才整了这么个东西 ...

记错了,以为rtt viewer是要在debug状态下才能打印

出140入115汤圆

发表于 2019-10-12 11:56:04 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-12 11:43
打包了,有点大传不到论坛,就放github上了,可以直接下载

好的,谢谢

出0入0汤圆

发表于 2019-10-12 11:56:30 | 显示全部楼层
这个是不是一定要参与编译才行的?

出0入0汤圆

发表于 2019-10-12 12:21:03 来自手机 | 显示全部楼层
hspydf 发表于 2019-10-12 09:34
请教两个问题  1  RTT要打印浮点数怎么设置?  我这边打印浮点数一直不成功
                     2 RTT能输入数据吗?还是 ...

格式的事可以交给专业的做 rtt只干传输  用sprintf

出0入0汤圆

发表于 2019-10-12 12:27:48 | 显示全部楼层
谢谢啦。。。

出0入0汤圆

发表于 2019-10-12 12:38:33 | 显示全部楼层
谢谢,楼主做事细致讲究,拿走谢谢

出0入0汤圆

 楼主| 发表于 2019-10-12 12:51:18 | 显示全部楼层
jlhgold 发表于 2019-10-12 11:56
这个是不是一定要参与编译才行的?

MCU端需要RTT参与编译

出0入0汤圆

 楼主| 发表于 2019-10-12 12:51:49 | 显示全部楼层
XIVN1987 发表于 2019-10-12 11:41
工具很帅,,感谢分享

向大佬学习

出0入0汤圆

发表于 2019-10-12 13:27:50 | 显示全部楼层
感谢楼主提供的工具

出140入115汤圆

发表于 2019-10-12 13:33:47 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-12 11:43
打包了,有点大传不到论坛,就放github上了,可以直接下载

我的系统是32位的,运行不了

出0入0汤圆

发表于 2019-10-12 13:35:13 | 显示全部楼层
这是折腾下?

出425入0汤圆

发表于 2019-10-12 14:39:19 | 显示全部楼层
RTT 是最好的调试手段。感谢你的付出。

出140入115汤圆

发表于 2019-10-12 15:24:33 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-12 11:43
打包了,有点大传不到论坛,就放github上了,可以直接下载

大神,好人做到底,帮忙打包到32位系统可运行版本吧,多谢

出0入0汤圆

发表于 2019-10-12 17:59:18 | 显示全部楼层
怎么没有STM32F0的芯片?

出0入0汤圆

 楼主| 发表于 2019-10-12 18:20:24 | 显示全部楼层
belongfs 发表于 2019-10-12 17:59
怎么没有STM32F0的芯片?

谢谢反馈,器件列表现在是通过解析JLinkDevices.xml得到的,但是没想到这个也是不完整的

出0入0汤圆

发表于 2019-10-12 18:27:55 | 显示全部楼层
很实用的思路,毕竟串口工具多。

出0入0汤圆

发表于 2019-10-13 10:09:18 | 显示全部楼层
楼主,你的软件支持的MCU没有STM32的M0,M3的型号,可否增加上去呢?

出0入0汤圆

 楼主| 发表于 2019-10-13 10:19:56 | 显示全部楼层
way2888 发表于 2019-10-13 10:09
楼主,你的软件支持的MCU没有STM32的M0,M3的型号,可否增加上去呢?

正在处理这个问题

出0入0汤圆

发表于 2019-10-13 17:38:48 | 显示全部楼层
必须收藏,谢谢楼主分享

出140入115汤圆

发表于 2019-10-14 14:46:18 | 显示全部楼层
折腾了两天,自己打包好32位系统版,可是运行报错

Traceback (most recent call last): File "main_window. py", line 290, in target_device_selete File "main_window. py", line 76. in _init AttributeError:' DeviceSeleteDialog' object has no attribute ' devices_list'

出140入115汤圆

发表于 2019-10-14 14:54:29 | 显示全部楼层
用IDE运行会报以下错误:
Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 02:47:15) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>
=== RESTART: C:\Users\Administrator\Desktop\RTT2UART-master\main_window.py ===
Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\RTT2UART-master\main_window.py", line 290, in target_device_selete
    device_ui = DeviceSeleteDialog()
  File "C:\Users\Administrator\Desktop\RTT2UART-master\main_window.py", line 76, in __init__
    if len(self.devices_list):
AttributeError: 'DeviceSeleteDialog' object has no attribute 'devices_list'

出0入0汤圆

 楼主| 发表于 2019-10-14 14:58:16 | 显示全部楼层
way2888 发表于 2019-10-13 10:09
楼主,你的软件支持的MCU没有STM32的M0,M3的型号,可否增加上去呢?

已支持,发布在github了

出0入0汤圆

 楼主| 发表于 2019-10-14 14:59:04 | 显示全部楼层
belongfs 发表于 2019-10-12 17:59
怎么没有STM32F0的芯片?

已支持,发布在github了

出0入0汤圆

 楼主| 发表于 2019-10-14 15:16:50 | 显示全部楼层
yanyanyan168 发表于 2019-10-14 14:46
折腾了两天,自己打包好32位系统版,可是运行报错

Traceback (most recent call last): File "ma ...

手上没有32bit的环境,所以一直都没有在上面测试过,找个时间装虚拟机看一下

出140入115汤圆

发表于 2019-10-14 16:13:46 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-14 15:16
手上没有32bit的环境,所以一直都没有在上面测试过,找个时间装虚拟机看一下 ...


搞定了,手动添加路径   可是没有STM32F1

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2019-10-14 16:26:49 | 显示全部楼层
yanyanyan168 发表于 2019-10-14 16:13
搞定了,手动添加路径   可是没有STM32F1

这个文件只是数据库的扩展文件,不完整,新版本已经解决这个了

出0入0汤圆

发表于 2019-10-14 16:39:30 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-14 14:59
已支持,发布在github了

好的。我再去试试看

出0入0汤圆

发表于 2019-10-15 16:07:48 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-14 14:59
已支持,发布在github了

那个配置界面那里能保存参数吗?每次都要选芯片,还有配置波特率什么的。比较麻烦啊。

出0入0汤圆

发表于 2019-10-15 17:34:30 | 显示全部楼层
一直使用J-Link RTT Viewer,只看打印够用了

出0入0汤圆

 楼主| 发表于 2019-10-15 20:43:24 | 显示全部楼层
belongfs 发表于 2019-10-15 16:07
那个配置界面那里能保存参数吗?每次都要选芯片,还有配置波特率什么的。比较麻烦啊。 ...

可以保存参数的,你那是什么环境

出0入0汤圆

发表于 2019-10-15 21:33:58 | 显示全部楼层
tianxiaoMCU 发表于 2019-10-15 20:43
可以保存参数的,你那是什么环境

WIN10 64位

出0入0汤圆

 楼主| 发表于 2019-11-12 15:13:54 | 显示全部楼层

回复晚了,不好意思。功能是有做的,但是打包后就失效了,至今无解

出0入0汤圆

 楼主| 发表于 2019-11-15 09:46:17 | 显示全部楼层
tianxiaoMCU 发表于 2019-11-12 15:13
回复晚了,不好意思。功能是有做的,但是打包后就失效了,至今无解

此问题已解决,已发布在github

出10入95汤圆

发表于 2021-6-27 10:27:14 | 显示全部楼层
那位大师 可以帮忙打包成exe文件吗?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 05:35

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表