0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

符合嵌入式设计的USB连接技术解决方案

电子设计 来源:郭婷 作者:电子设计 2019-01-28 08:42 次阅读

随着串口从台式机和笔记本电脑中消失,通用串行总线(USB)现在成为需要连接到PC的各种外围设备的通用接口,无论是作为开发平台还是商用产品。在这个由两部分组成的系列文章的第一部分中,我们快速介绍了USB接口标准及其在嵌入式系统中不断发展的作用。在这篇结论文章中,我们将仔细研究集成和独立USB解决方案之间的选择,以及检查MCU制造商为其USB连接添加的一些创新性曲线,以帮助您的产品在具有挑战性的应用中展开竞争。我们将总结一些设计技术,您可以使用这些技术使USB连接更符合嵌入式设计的要求。

决定何时集成

正如我们在第一部分中简要讨论的那样,有几个因素会影响是否最好与具有片上USB功能的MCU实现USB连接或使用单独的USB控制器。在许多需要简单USB连接的情况下,Atmel的ATmega8U,Microchip Technology的8位PIC18F13K50或Silicon Labs的C8051F系列等集成解决方案几乎是不费脑筋的。

在需要支持特定USB协议类的应用中,例如UART到USB或USB到SPI,选择变得更加细微。例如,如果项目涉及使用RS-232接口更新现有产品以支持USB,则使用单独的USB-UART桥接器,例如Microchip的MCP2200 Silicon Labs的CP2104或德州仪器的TUSB3410,可缩短开发周期并减少中断到制造业供应链。如果原始设计基于速度较慢,功能较弱的MCU,独立控制器也可能特别有用,它可能没有额外的处理能力(或存储空间)来支持协议/格式转换所涉及的附加任务。

应用优化的USB芯片有助于微调您的设计

曾几何时,设计带有一个或多个USB端口的嵌入式系统非常简单,因为大多数设备(及其各自的驱动软件)非常相似,所以除了遵循参考设计之外,设计师几乎无能为力。不再。位于许多现代MCU上的USB连接后面的芯片已经发展并进行了调整,以满足粗糙的嵌入式系统环境的需求。 MCU制造商现在提供各种支持USB的产品,这些产品具有各种级别的硬件加速,可满足各种应用的价格和性能目标。

也许最大的创新领域是MCU如何执行请求,确认,错误检查以及与USB协议相关的其他功能。在不经常使用MCU的USB接口或传输小块数据的应用中,使用软件执行协议的例行信令和握手,数据包检查和错误检测任务可能很好。但是,如果您的应用需要频繁和/或大型USB事务处理,则可能会对MCU的有限处理资源造成太大负担。

直到最近,唯一的解决方案是使用独立的USB外设控制器,如赛普拉斯半导体的CY7C63801或Microchip的USB3300-EZK。现在,一些制造商提供具有集成USB控制器内核和其他功能的MCU,可以处理几乎所有与USB相关的任务。

例如,Atmel的AVR XMEGA系列8/16位MCU具有全速USB控制器内核,除了卸载常规协议功能外,还使用Ping-Pong缓冲器来减少或消除重置发送丢弃的数据包(NACK)以实现更高效的传输。这种组合允许接口以USB全速率规范支持的最大11 Mbps(或有效数据速率高达8.72 Mbits/s)运行或接近,同时仅消耗CPU处理能力的7%。许多Atmel MCU还支持专有的多数据包传输模式,该模式使用硬件逻辑通过将大多数大容量存储设备使用的512字节数据块拆分为块传输协议支持的64字节数据包来提高USB块传输的效率。相同的机制还可以将传入的多数据包传输重新组合成更大的数据块,而无需任何CPU干预。

进一步推动硅食品链,Energy Micro在其基于EFM32 32位Cortex-M3的Gecko MCU系列的许多变体上提供了多种性能增强功能。大多数外围功能(包括串行通信和USB端口)的活动由单独的低功耗反射总线协调(图2)。除了防止数据传输消耗任何主系统总线的带宽之外,来自一个外设的事件和信号可以用作其他外设的输入信号或触发,并以这种方式确保时序关键操作和降低的软件开销。此外,内置3.3 V稳压器还允许用户通过USB链路提供的电源运行MCU。

符合嵌入式设计的USB连接技术解决方案

图2:Energy Micro的EFM32 MCU架构包括外围反射系统,这是一个独立的外围总线,允许智能外设(包括USB端口)执行数据传输,几乎不会干扰CPU或影响主处理器总线。 (由Energy Micro提供。)MCU制造商也在提供USB技术的改进,这对嵌入式和更传统的应用都有好处。例如,几个MCU现在提供片上定时电路,消除了与USB接口的定时时钟中传统使用的参考晶体(及其相关的无源元件)相关的成本和PCB面积。直到最近,基于晶体的定时源才能保持USB收发器每1 ms(±0.0005 ms)执行的帧起始信号交换所需的0.05%精度。 Silicon Labs向其C8051系列8位MCU推出了C8051F38x,C8051T62x和C8051T32x,其中包括一个片上时钟调谐电路,可从输入的USB数据包中恢复其时序信息。 2012年初,他们的“Precision 32”SiM3U1xx系列也推出了这一功能,这是32位处理器的业界首创。

Atmel的XMEGA系列8/16位MCU还提供无晶体操作,Microchip将为其PIC16系列推出一系列新型微控制器(例如最近发布的“未来产品”8位PIC16F1459)精密内部振荡器或自动时钟调谐电路,可从输入的USB数据包中恢复其定时信息。

Power

在嵌入式系统中,USB收发器的功耗可占整体功率预算的很大一部分,因此了解控制它的因素非常重要。虽然图3中的公式最初是为Microchip的USB PIC单片机的数据表开发的,但它们提供了一种有用的方法来计算MCU嵌入式USB收发器使用的电流。从总体方程中的术语PZERO(逻辑“0”的百分比)和PIN(输入流量的百分比)的关系来看,很快就会发现功耗取决于应用,因为它根据数量和值而变化。传输的数据。

符合嵌入式设计的USB连接技术解决方案

符合嵌入式设计的USB连接技术解决方案

图3:USB收发器消耗的功率可以使用相对简单的公式计算,该公式描述了收发器的特性,它正在发送和接收的数据,以及它所连接的电缆的长度。 (由Microchip Technologies提供。)

在这些示例中需要注意的另一个有趣的事情是,IN流量为零的百分比会影响从总线吸取的电流量。许多设计人员使用逻辑“0”作为数据变量的默认值,但重要的是要注意,与使用“1s”相比,这实际上可以略微增加系统电流。另请注意,这只是IN流量的考虑因素,即从USB外设到USB主机的流量。

现在,许多类别的USB外设都使用USB作为需要100 mA或更低电流的应用的事实上的电源。对于需要低于500 mA的应用,决策变得更加困难,因为自供电集线器不太常见,许多设计人员仍然选择使用单独的总线电源。

对于要求超过500 mA的应用,USB规范包括电池充电规定,允许从系统中提取高达1.5A的电流。遗憾的是,由于支持电池充电规范的主机系统相对较少,外围设备制造商不愿意生产可以利用它的设备。您将看到这种电池充电规格适用于某些基于USB的手机或平板电脑充电器。电池充电规范包括一种廉价(虽然效率低)的方式来实现充电器电路,只需通过一个电阻(《200Ω)短接USB连接的D +和D-引线,这种技术在大多数廉价的基于USB的手机中都会遇到/平板电脑充电器。从信令的角度来看,为主机实现电池充电规范v1.2非常简单。所需要的只是0.5和0.7V之间的电压源,可以在该范围内提供250μA电流,但不会将1.5k上拉电压拉至2.2 V以下的3.0 V(图4)。此电压源应连接到D-并在分离设备时启用,并在设备连接时禁用。图4是一个简单的原理图,通过运算放大器二极管,两个电阻和一条控制线来实现这一目标。

符合嵌入式设计的USB连接技术解决方案

图4:一个简单的电路,允许USB主机使用其可选的高功率电池充电模式。 (由Microchip Technologies提供。)

在外设上实现BCv1.2规范要复杂一些。它需要两个这样的电压源电路,两个恒流吸收器,以及USB外设上的更多代码实现,但它仍然在普通嵌入式设计人员的掌握之中。然而,不愿制造商投资支持其主机系统中的高功率充电选项所需的额外单位成本,导致业内一些“鸡与蛋的僵局”。幸运的是,如果PC制造商和其他USB主机设备制造商决定提供能够支持平板电脑和与资源紧密集成的其他移动外围设备的更高功率要求的基于台式机的产品,这可能在未来几年内发生变化他们的主机系统。

USB功能通过与各种USB设备进行通信,以及在单根电缆中添加可提供高达500 mA电流的电源选项,为系统增加了便利性和灵活性。正如我们所指出的,通过添加集成MCU或独立USB解决方案,可以将USB通信设计到嵌入式系统中。将USB融入嵌入式设计的主要考虑因素包括USB交易的大小和频率,USB收发器的功耗以及是否涉及USB电池充电规范(v1.2)。我们提供并讨论了集成USB MCU和独立控制器的示例。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4981

    文章

    18281

    浏览量

    288382
  • usb
    usb
    +关注

    关注

    59

    文章

    7430

    浏览量

    258076
  • 电池
    +关注

    关注

    82

    文章

    9811

    浏览量

    123510
收藏 人收藏

    评论

    相关推荐

    广和通携多款丰富的AIoT嵌入式解决方案亮相2024德国嵌入式

    4月9-11日,全球嵌入式盛会2024德国嵌入式展(embedded world 2024)在纽伦堡盛大举办。广和通以“提速互联,智向未来”为主题亮相3号馆-222展位,展示了多款丰富的AIoT嵌入式
    的头像 发表于 04-10 09:34 137次阅读

    嵌入式会越来越卷吗?

    ,甚至在我们意识不到的地方发挥作用。 然而,“卷”也可能意味着技术的不断创新和发展。嵌入式系统经历了长足的进步,从最初简单的设备到如今高度智能化的系统。人工智能、机器学习和物联网等领域的快速进步,正在催生
    发表于 03-18 16:41

    嵌入式工程师需要掌握哪些技术?

    嵌入式工程师需要掌握哪些技术? 嵌入式系统是当今科技领域中的重要组成部分,它们存在于我们生活的方方面面,从智能手机到汽车控制系统,从家电到医疗设备。因此,对于那些想要进入嵌入式行业的
    发表于 03-04 16:38

    嵌入式系统发展前景?

    应用领域。随着汽车电子化和智能化程度的不断提高,嵌入式系统将在汽车控制、安全系统、自动驾驶等方面发挥更为重要的作用。 工智能和机器学习技术的发展为嵌入式系统提供了新的发展机遇。嵌入式A
    发表于 02-22 14:09

    嵌入式学习步骤

    开发板上测试固件以及在实际设备上进行测试。 嵌入式系统的多样化发展,它将更为广泛地应用于各个领域,实现智能化、网络化、自动化的目标。同时,随着人工智能和机器学习技术的发展,嵌入式系统的智能化程度也将得到进一步提高,让我们的生活
    发表于 02-02 15:24

    到底要不要放弃嵌入式这条路?

    充满热情、符合你的职业规划预期,并且市场需求仍然稳定时,你才应该坚定地选择继续在嵌入式领域发展。 但如果你对其他领域更感兴趣,或者市场需求面临不确定性,那么探索其他技术领域也是一种值得考虑的选择。无论何种决定,都应该根据自己的兴
    发表于 12-07 10:43

    嵌入式硬件和软件哪个好?

    嵌入式硬件和软件哪个好? 嵌入式软硬件工程师哪个更有前途呢?一起来看看。 嵌入式是分为软硬件工程师的,首先我们先来看看嵌入式硬件工程师吧! 嵌入式
    发表于 12-05 15:17

    为什么嵌入式没有35岁危机?

    为什么嵌入式没有35岁危机? 在当今数字化时代,IT行业变化迅速,技术的更新迭代速度惊人。然而,有一个技术领域却能够在这个竞争激烈的行业中稳步前行,而且不受35岁危机所困扰,那就是嵌入式
    发表于 11-17 10:33

    嵌入式设计的连接解决方案

    电子发烧友网站提供《嵌入式设计的连接解决方案.pdf》资料免费下载
    发表于 11-16 15:36 0次下载
    <b class='flag-5'>嵌入式</b>设计的<b class='flag-5'>连接</b><b class='flag-5'>解决方案</b>

    什么是嵌入式Linux?

    仅仅是保底统计。) 目前,嵌入式开发人才需求大,而随着人工智能的崛起势必又将进一步推动嵌入式技术的发展,无论是从短期还是长期来看,嵌入式开发工程师的前途都是不可限量的。 说了这么多,
    发表于 10-11 13:47

    STM32-STM8嵌入式软件解决方案

    •围绕STM32和STM8的广泛软件生态系统 •您将找到符合您价格要求的解决方案,许可证和支持
    发表于 10-10 06:13

    嵌入式Linux系统的动态电源管理技术解决方案

    电子发烧友网站提供《嵌入式Linux系统的动态电源管理技术解决方案.pdf》资料免费下载
    发表于 10-09 15:54 1次下载
    <b class='flag-5'>嵌入式</b>Linux系统的动态电源管理<b class='flag-5'>技术</b><b class='flag-5'>解决方案</b>

    从事嵌入式工作有哪些优势?

    随着物联网和人工智能的发展,嵌入式技术越来越值钱,学嵌入式的人也越来越多,现在开始入行嵌入式。根据一些权威部门统计,我国目前嵌入式软件人才缺
    发表于 10-08 15:05

    嵌入式软件好还是硬件好?

    嵌入式软硬件工程师哪个更有前途呢?一起来看看。 嵌入式是分为软硬件工程师的,首先我们先来看看嵌入式硬件工程师吧! 嵌入式硬件开发工程师主要编写嵌入
    发表于 09-18 15:31

    Arm CoreLink™ SSE-200嵌入式子系统技术概述

    SSE-200子系统用于嵌入式驱动器系统架构和软件标准化,旨在提供包含前沿Cortex M和TrustZone技术的高性能计算子系统。 该解决方案由硬件、软件和软件工具组成,可实现物联网系统芯片
    发表于 08-28 06:30