模组硬件通用丨模组USB电路设计指南

USB(全称:Universal Serial Bus)是一种串口总线标准,也是一种输入输出接口的技术规范,广泛应用于个人电脑和移动设备等信息通讯产品,并扩展至摄影器材、数字电视(机顶盒)、游戏机等相关领域。模组应用时,USB接口通常作为4G、5G模组与CPU的通信和固件升级的重要接口,性能直接影响通信数据传输的成功率。本文讲解了USB接口设计、差分阻抗控制以及固件下载常见问题。

一、USB接口设计

1.USB概念及速率

USB是一种外部总线标准,用于规范电脑与外部设备的连接和通讯。USB各版本的速率及功率1

表1 1USB版本及特点

USB 2.0物理接口采用4针脚设计(D+,D-,Vbus,GND),D+与D-是一对差分线。USB 3.0物理接口采用9针脚设计,增加了两对超高速差分信号SSTX+与SSTX-、SSRX+与SSRX-,共3对差分线。

2.一般设计原则

模组仅能作为设备(Device)工作,无法作为主机(Host)工作,不支持OTG模式。5G模组最高可支持USB 3.1 Gen2速率,其余模组最高支持USB 2.0的高速模式,向下兼容。

在原理图设计中,建议USB接口进行防静电保护,预留用于滤除共模和差模干扰的元件位置不贴实际值,仅贴0R短接即可预留元件位置便于测试中如果发现干扰,可以快速贴上电感电容进行调试这是硬件设计中的一种兼容策略有助于避免改板问题。

在PCB设计时,为保证数据传输的稳定性及可靠性,必须遵循差分线一般的设计原则:

  1. 根据PCB层叠关系,利用阻抗计算工具,控制差分90Ω阻抗
  2. 参考平面完整,不能出现跨分割
  3. 走线不能走90°直角,且需进行良好的包地处理
  4. 差分对走线等长,尽量避免过孔如果必须使用过孔,则应在附近放置回流地过孔
  5. 尽量减少布线长度
  6. 远离边沿陡峭的信号或高开关速率器件
  7. USB数据线上的ESD防护器件的寄生电容不能超过22pF
  8. 若USB仅用于固件下载预留,不用于数据传输,设计时可放宽要求

二、USB差分阻抗控制

USB差分走线阻抗需控制90Ω,设计时需保持阻抗连续,阻抗控制方式与射频的单端50Ω类似,通过阻抗计算软件SI9000选择合适的差分阻抗模型,计算出差分走线的线宽线距,实现90Ω阻抗控制。

阻抗的不连续会导致信号发生反射和衰减、通信速率降低,控制好高速信号的走线阻抗,是布线成功的关键。

图1 USB布线示例

三、USB固件升级下载

此问题主要出现在ML307系列模组的固件升级由于ML307系列模组强制进入下载模式需要把BOOT引脚拉低到地,客户前期使用其他模组未注意兼容性,会将BOOT预留上拉至VDD_EXT从而导致固件下载失败

1.BOOT上拉问题

问题:用户将BOOT错误上拉到VDD_EXT引脚

解决方法:参考上述方法进行修改

2.VBUS问题

问题:用户使用了USB功能,却没接USB_DET

解决方法需将USB_DET接至VBUS。

图2 VBUS设计问题

  • 总结

在模组固件下载和模组调试的关键环节中,USB接口的使用频率极高。为了确保操作的便捷性和高效性,强烈建议在电路设计时明确将模组的USB接口引出,并严格遵循文档中的建议进行相关的电路设计,以确保接口的稳定性和兼容性。

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

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

相关文章

本地可以Run大模型吗?Llama3?安排!

➡️ 前言 本地可以跑大模型吗? ChatGPT发布之后,引起了AI领域剧烈震动,从2023年3月百度发布新一代大预言模型文心一言开始,大模型如雨后春笋般不断涌现,国内阿里巴巴的通义千问、华为的盘古大模型、科大讯飞的星火认知大模型、…

木材容易发霉怎么办除霉处理方法

木材存放不当就容易出现发霉情况,那么可通过那些方法将木材表面的霉斑除掉呢?经ihaoer防霉人士介绍处理木材发霉处理方法如下: 木材发霉的原因主要包括木材本身的营养物质、环境湿度、温度以及空气流动性等因素。木材中含有蛋白质、淀粉、油类…

CPR曲面重建代码

废话不说,直接上代码: #include "vtkAutoInit.h" #include "vtkPolyData.h" #include "vtkProbeFilter.h" #include "vtkParametricFunctionSource.h" #include "vtkParametricSpline.h" #include &…

基于Java微信小程序校园自助打印系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟感兴趣的可以先收藏起来,还…

【开源项目】智慧北京案例~超经典实景三维数字孪生智慧城市CIM/BIM数字孪生可视化项目——开源工程及源码!

飞渡科技数字孪生北京管理平台, 依托实景数字孪生底座,以城市感知网络为硬件基础,以城市大数据为核心资源,以数字孪生、云计算、人工智能为关键技术,实现城市产业规划、资产安全管理、城市能耗监控等一体化空间融合。 …

基于电商模式的性能测试(2) —— 使用Jmeter参数化功能+JSR223 PreProcessor+JSON Extractor完成注册登录的数据驱动

1、前置条件 此例使用的是GitHub上一个开源的电商项目mall,需要的可以去GitHub上下载部署,有详细的部署教程: GitHub地址:github.com/macrozheng/…部署教程:macrozheng.github.io/mall-learni… 2、场景抽离 首先要…

C#的无边框窗体项目模板 - 开源研究系列文章

继续整理和编写代码及博文。 这次将笔者自己整理的C#的无边框窗体项目的基本模板进行总结,得出了基于C#的.net framework的Winform的4个项目模板,这些模板具有基本的功能,即已经初步将代码写了,直接在其基础上添加业务代码即可&am…

java实现一个图的最短路径算法

import java.util.*; //java实现一个图的最短路径算法 public class Test_34 { // 定义一个常量INF,表示无穷大。private static final int INF Integer.MAX_VALUE; // 定义一个方法dijkstra,接受一个二维数组图和一个起始节点作为参数。public s…

七牛云 Miku 快直播,陪你一起看球!

足球,作为全球最受欢迎的运动之一,每一次大赛都是球迷心中的狂欢,每一场比赛都记录着足球历史的精彩。 2000 年,特雷泽盖的金球,照亮了法兰西的足球梦想。 2004 年,查理斯特亚斯的头槌破门,成就…

浅谈逻辑控制器之while控制器

浅谈逻辑控制器之while控制器 “While控制器”是一种高级控制结构,它允许用户基于特定条件来循环执行其下的子采样器或控制器,直至该条件不再满足。本文旨在详细介绍While控制器的功能、配置方法、使用场景以及实践示例,帮助测试工程师高效利…

工信部中小企业局一行莅临盘古信息调研指导

近日,中小企业数字化转型城市试点调研交流活动在广东东莞举行,工业和信息化部中小企业局副局长商超,广东工业和信息化厅二级巡视员张振祥,工业和信息化部中小企业局创业创新处处长李海涛,东莞市委常委、副市长刘光滨&a…

泵设备的监测控制和智慧运维

泵是一种输送流体或使流体增压的机械。它通过各种工作原理(如离心、柱塞等)将机械能转换为流体的动能或压力能,从而实现液体的输送、提升、循环等操作。 泵的一些具体应用场景: 1.智能水务:在城市供水管网中&#xff…

python turtle 002代码表白

代码:pythonturtle002表白资源-CSDN文库 # 作者V w1933423 import turtle import mathdef draw_love():# 创建turtle画笔t turtle.pen()t turtle# 提起画笔,移动到起始位置t.up()t.goto(0, 150)t.down()# 设置颜色并开始填充t.color(red)t.begin_fill…

​中国9大流域地图SHP数据

九大流域片区是指中国境内九个主要流域片区。 分别包括东南诸河区、内陆河区、松辽河流区、海河流域区、淮河流域区、珠江流域片、西南诸河片、长江流域片和黄河流域片等。 如果这九大流域数据对你有用,请在文末查看该数据的领取方法。 中国9大流域图 流域&…

jeecg启动微服务并注册到本地nacos

1、maven勾选环境和微服务模式,并刷新 2、pom文件修改nacos注册地址 3、本地启nacos gateway 和自己想要的cloud下面的模块pos sys 4、打断点测试接口,访问gateway端口和想要测试的地址

【数据结构】线性表之《队列》超详细实现

队列 一.队列的概念及结构二.顺序队列与链队列1.顺序队列2.链队列 三.链队列的实现1.创建队列2.初始化队列3.入队4.出队5.获取队头元素6.获取队尾元素7.队列的大小8.队列的判空9.清空队列10.销毁队列 四.队列的盲区五.模块化源代码1.Queue.h2.Queue.c3.test.c 六.栈和队列必做O…

unity-调用讯飞星火语音唤醒-新版windowsSDK

调用讯飞星火语音唤醒-新版windowsSDK 先贴一张在unity中 wins系统下成功调用新版的讯飞windowsSDK的运行截图 为什么要用讯飞的语音唤醒? 项目中需要在unity和win系统下进行语音唤醒开启语音对话,而语音唤醒比较成熟的方案大多都是在linux系统下的&…

kafka 生产者 API 实践总结

文章目录 前言创建 kafka 生产者同步与异步发送消息同步发送异步发送 生产者参数配置client.idacks消息传递时间 序列化器在Kafka中使用Avro记录 分区标头拦截器配额和节流 前言 kafka 对外提供的 API 主要有两类:生产者 API 和 消费者 API,本文将从Kaf…

Spring中事务的传播机制

一、前言 首先事务传播机制解决了什么问题 Spring 事务传播机制是包含多个事务的方法在相互调用时,事务是如何在这些方法间传播的。 事务的传播级别有 7 个,支持当前事务的:REQUIRED、SUPPORTS、MANDATORY; 不支持当前事务的&…

[Django学习]前端+后端两种方式处理图片流数据

方式1:数据库存放图片地址,图片存放在Django项目文件中 1.首先,我们现在models.py文件中定义模型来存放该图片数据,前端传来的数据都会存放在Django项目文件里的images文件夹下 from django.db import modelsclass Image(models.Model):title models.C…