一种多功能调试工具设计方案开源

一种多功能调试工具设计方案开源

  • 设计初衷
  • 设计方案
  • 具体实现
    • HUB芯片采用沁恒微CH339W。
      • TF卡功能
      • 网口功能
      • SPI功能
      • IIC功能
      • JTAG功能
      • 下行USB接口
    • 安路FPGA烧录器功能
    • Xilinx FPGA烧录器功能
    • Jlink OB功能
    • 串口功能
      • RS232串口
      • RS485和RS422串口自适应接口
    • CAN功能
    • 烧录器功能
  • 目前进度
  • 后续计划

设计初衷

工作中由于用到的调试工具比较多,很多时候会发现接口不够用,所以设计综合多种工具,做了一个多功能的调试工具。

设计方案

实现框图如下所示。
在这里插入图片描述
实现的具体功能如下

1.支持Type-C和Type-B输入;
2. 支持安路CPLD、FPGA等器件烧录,JTAG接口支持外部输入或内部3.3V电压;
3. 支持ARM-Cortex M系列ARM芯片烧录,Jlink接口电压支持外部输入或内部3.3V电压;
4. 支持Xilinx、复旦微、高云、Lattice、Intel等FPGA芯片烧录,JTAG接口电压支持外部输入或内部3.3V电压;
5. 支持CAN 2.0B;
6. 支持RS422和RS485自适应;
7. 支持3路RS232接口;
8. 支持1路LVTTL(3.3)UART;
9. 支持1路可变电平UART;
10. 支持烧录SPI Flash和EEPROM;
11. 支持TF卡读卡器动能;
12. 支持1路100M以太网接口;
13. 支持一路可变电平的IIC、SPI和JTAG接口;
14. 支持1路下行USB接口;

具体实现

HUB芯片采用沁恒微CH339W。

CH339 是符合USB2.0协议规范的7端口多功能USB HUB控制器芯片,单芯片集成7口USB HUB、USB 百兆以太网、USB高速SD读卡器、USB PD和USB转SPI、USB转JTAG、USB转UART、USB转I2C接口等功能。CH339上行端口支持USB2.0高速和全速,下行端口支持USB2.0高速480Mbps、全速12Mbps和低速1.5Mbps,另有USB网卡、USB高速读卡器、USB转JTAG等多个内部直达通道。CH339支持高性能的并发处理MTT模式,采用工业级设计,外围精简,可应用于计算机和工控机主板、扩展坞、外设、嵌入式系统等场景。
在这里插入图片描述

TF卡功能

采用TF卡接口,可以直接进行TF卡的读写,采用TF卡转eMMC工装,可以直接烧录eMMC芯片。

网口功能

百兆网口,支持指示灯功能。

SPI功能

可变电平,电压支持外部输入或内部3.3V。

IIC功能

可变电平,电压支持外部输入或内部3.3V。

JTAG功能

可变电平,电压支持外部输入或内部3.3V。

下行USB接口

一路下行USB接口。

安路FPGA烧录器功能

具体实现参考安路开发板的图纸,具体采用一颗STM32F103C8T6实现JTAG功能,在此不详细描述。

具体电路参考安路开发板

Xilinx FPGA烧录器功能

采用FT2232H方案,也属于市面上比较常见的方案,通过烧录不同的固件,可以实现Xilinx、Intel、复旦微、lattice等FPGA的程序烧录。
其中A路实现JTAG功能,B路实现可变电平的串口功能,串口电平可以由外部电压输入。

Jlink OB功能

Jlink OB功能参考Segger官网的Jlink OB的参考图纸,固件已经烂大街了,自行搜索。

串口功能

串口芯片采用沁恒的CH344Q,CH344 是一款USB总线的转接芯片,实现USB转四个异步串口UART0/1/2/3功能,用于为计算机扩展异步串口,或者将普通的串口设备或者MCU直接升级到USB总线。
在这里插入图片描述
CH344Q特点

 CH344Q为480Mbps高速USB设备接口,CH344L为12Mbps全速USB设备接口。内置固件,仿真标准串口,用于升级原串口外围设备,或者通过USB增加额外串口。 计算机端Windows操作系统下的串口应用程序完全兼容,无需修改。支持免安装的操作系统内置CDC类驱动程序或者多功能高速率的VCP厂商驱动程序。  硬件全双工串口,内置独立的收发缓冲区。CH344Q支持通讯波特率1200bps~6Mbps,CH344L支持1200bps~2Mbps。串口支持8个数据位,支持奇校验、偶校验以及无校验。 每个串口内置2048字节的接收FIFO,1024字节的发送FIFO。支持常用的MODEM联络信号。  l 支持CTS和RTS硬件自动流控。支持半双工,提供串口正在发送状态指示TNOW,可用于控制RS485收发切换。  支持最多16路GPIO输入输出功能。 通过外加电平转换器件,支持RS232、RS485、RS422等接口。内置EEPROM,可配置芯片VID、PID、最大电流值、厂商和产品信息字符串等参数。  单一3.3V供电。提供LQFP48无铅封装,兼容RoHS。

RS232串口

CH344Q的A、B和C实现3路RS232串口。

RS485和RS422串口自适应接口

CH344Q的D实现RS422和RS485自适应接口。

CAN功能

采用开源方案,支持CAN2.0B,波特率支持最大1Mbps。

烧录器功能

采用CH341A方案,也是开源的方案,不详细描述。

目前进度

目前已经完成图纸绘制及PCB绘制,BOM整理及外壳设计,可以投板了。
在这里插入图片描述

安装外壳之后的形态在这里插入图片描述

如果有朋友对这个工具感兴趣,可私信我哦。

后续计划

设想中的这个工具应该是无线的方式,USB线缆也不再需要,可通过WIFI连接这个设备,那么此时这个工具就需要增加电池、无线等功能啦,有想法的朋友可以私信。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/483566.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三维测量与建模笔记 - 5.3 光束法平差(Bundle Adjustment)

此篇笔记尚未理解,先做笔记。 如上图,在不同位姿下对同一个物体采集到了一系列图像, 例子中有四张图片。物体上某点M,在四幅图像上都能找到其观测点。 上式中的f函数是对使用做投影得到的估计点位置。求解这个方程有几种方法&…

力扣hot100道【贪心算法后续解题方法心得】(三)

力扣hot100道【贪心算法后续解题方法心得】 十四、贪心算法关键解题思路1、买卖股票的最佳时机2、跳跃游戏3、跳跃游戏 | |4、划分字母区间 十五、动态规划什么是动态规划?关键解题思路和步骤1、打家劫舍2、01背包问题3、完全平方式4、零钱兑换5、单词拆分6、最长递…

ElasticSearch学习篇19_《检索技术核心20讲》搜推广系统设计思想

目录 主要是包含搜推广系统的基本模块简单介绍,另有一些流程、设计思想的分析。 搜索引擎 基本模块检索流程 查询分析查询纠错 广告引擎 基于标签倒排索引召回基于向量ANN检索召回打分机制:非精确打分精准深度学习模型打分索引精简:必要的…

Ambrus 游戏工作室将应对气候变暖与游戏变现完美结合

当 Ambrus Studio 创始人兼 CEO Johnson Yeh 计划打造他称之为“第一款伟大的 Web3 游戏”时,他设立了两个关键目标:游戏需要在传统大型工作室忽视的市场中盈利,以及它需要具备超越娱乐的意义。 在 Sui 的帮助下,Johnson 和他的团…

KAN-Transfomer——基于新型神经网络KAN的时间序列预测

1.数据集介绍 ETT(电变压器温度):由两个小时级数据集(ETTh)和两个 15 分钟级数据集(ETTm)组成。它们中的每一个都包含 2016 年 7 月至 2018 年 7 月的七种石油和电力变压器的负载特征。 traffic(交通) :描…

UEFI Spec 学习笔记---3 - Boot Manager(3)

3.2 Boot Manager Policy Protocol EFI_BOOT_MANAGER_POLICY_PROTOCOL----EFI应用程序使用该协议请求UEFI引导管理器使用平台策略连接设备。 typedef struct _EFI_BOOT_MANAGER_POLICY_PROTOCOL EFI_BOOT_MANAGER_POLICY_PROTOCOL; struct _EFI_BOOT_MANAGER_POLICY_PROTOCOL…

wordpress网站首页底部栏显示网站备案信息

一、页脚文件footer.php 例如,wordpress主题使用的是simple-life主题,服务器IP为192.168.68.89,在wordpress主题文件中有个页脚文件footer.php,这是一个包含网站页脚代码的文件。 footer.php 路径如下: /www/wwwroot/192.168.68…

QT实战-qt各种菜单样式实现

本文主要介绍了qt普通菜单样式、带选中样式、带子菜单样式、超过一屏幕菜单样式、自定义带有滚动条的菜单样式, 先上图如下: 1.普通菜单样式 代码: m_pmenu new QMenu(this);m_pmenu->setObjectName("quoteListMenu"); qss文…

数据结构实训——查找

声明: 以下是我们学校在学习数据结构时进行的实训,如涉及侵权马上删除文章 声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险,并遵循相关法…

指针(上)

目录 内存和地址 指针变量和地址 取地址(&) 解引用(*) 大小 类型 意义 const修饰 修饰变量 修饰指针 指针运算 指针- 整数 指针-指针 指针的关系运算 野指针 概念 成因 避免 assert断言 指针的使用 strl…

13TB的StarRocks大数据库迁移过程

公司有一套StarRocks的大数据库在大股东的腾讯云环境中,通过腾讯云的对等连接打通,通过dolphinscheduler调度datax离线抽取数据和SQL计算汇总,还有在大股东的特有的Flink集群环境,该环境开发了flink开发程序包部署,实时…

ARP表、MAC表、路由表的区别和各自作用

文章目录 ARP表、MAC表、路由表的区别和各自作用同一网络内:ARP表request - 请求reply - 响应 MAC地址在同一网络内,交换机如何工作? 不同网络路由表不同网络通信流程PC1到路由器路由器到PC2流程图 简短总结 ARP表、MAC表、路由表的区别和各自作用 拓扑图如下: 同一网络内:…

第七课 Unity编辑器创建的资源优化_UI篇(UGUI)

上期我们学习了简单的Scene优化,接下来我们继续编辑器创建资源的UGUI优化 UI篇(UGUI) 优化UGUI应从哪些方面入手? 可以从CPU和GPU两方面考虑,CPU方面,避免触发或减少Canvas的Rebuild和Rebatch&#xff0c…

微服务搭建----springboot接入Nacos2.x

springboot接入Nacos2.x nacos之前用的版本是1.0的,现在重新搭建一个2.0版本的,学如逆水行舟,不进则退,废话不多说,开搞 1、 nacos2.x搭建 1,首先第一步查询下项目之间的版本对照,不然后期会…

Node.js 实战: 爬取百度新闻并序列化 - 完整教程

很多时候我们需要爬取一些公开的网页内容来做一些数据分析和统计。而多数时候,大家会用到python ,因为实现起来很方便。但是其实Node.js 用来爬取网络内容,也是非常强大的。 今天我向大家介绍一下我自己写的一个百度新闻的爬虫,可…

Flink四大基石之State(状态) 的使用详解

目录 一、有状态计算与无状态计算 (一)概念差异 (二)应用场景 二、有状态计算中的状态分类 (一)托管状态(Managed State)与原生状态(Raw State) 两者的…

底部导航栏新增功能按键

场景需求: 在底部导航栏添加power案件,单击息屏,长按 关机 如下实现图 借此需求,需要掌握技能: 底部导航栏如何实现新增、修改、删除底部导航栏流程对底部导航栏部分样式如何修改。 比如放不下、顺序排列、坑点如…

如何在 Firefox 中清除特定网站的浏览历史记录

以下,我将介绍如何清除特定网站的浏览历史记录。清除历史记录可以保护隐私,特别是在公共或共享设备上使用时,还能节省设备存储空间,避免浏览历史占用过多内存。 如何清除特定网站的浏览历史记录 在 Firefox 中,清除特…

SpringMVC(二)

Model 以Map方式进行存储,用于向作用域中存值。 注意:在Model中增加模型数据,若不指定key,则默认使用对象的类型作为key Controller //控制器类 public class IndexController {RequestMapping("/index3")public Strin…

ABE 中的隐藏属性:DIPPE(去中心化内积谓词加密)

1. 引言 相关论文有: Yan Michalevsky 和 Marc Joye 2018年论文 Decentralized policy-hiding ABE with receiver privacy,发表于23rd European Symposium on Research in Computer Security, ESORICS 2018。Amit Sahai 和 Brent Waters 2005年论文 Fu…