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

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

3天内不再提示

构建可靠USB应用:硬件设计要点与LuatOS开发技巧!

青山老竹农 来源:jf_82863998 作者:jf_82863998 2025-12-15 10:46 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

实现稳定可靠的USB通信,既依赖于严谨的硬件电路设计,也离不开高效的软件开发支持。本文将从电源管理信号完整性等硬件角度出发,结合LuatOS平台的API使用技巧,为开发者提供一站式USB开发指导。

本文以Air780EPM系列低功耗模组为例,分享USB接口的硬件设计要点以及LuatOS高效开发API,帮助开发者在设计中避开常见陷阱,快速构建稳定可靠的USB应用。

wKgZPGk79_-ANhUnAAPQ_d-gnow803.png

01. 模组管脚

Air780EPM系列模组与USB相关的管脚,如上方管脚图右侧浅绿色块所示:

VBUS:PIN61;

USB_DM:PIN60;

USB_DP:PIN59;

特别说明:管脚图中所示的USB_DN正确的写法应该是USB_DM,历史原因一直将错误写法延续到了现在。

USB_DM:USB Data Minus,USB数据负信号;

USB_DP:USB Data Positive,USB数据正信号。

02. 功能说明

Air780EPM系列模组支持如下USB功能:

支持USB Full speed:全速模式,最高支持12Mbps,即1.5MB/s;

支持USB High speed:高速模式,最高支持480Mbps,即40MB/s;

支持USB下载软件,Boot from USB;

支持USB RNDIS:搭配Windows/Linux实现快速上网;

仅支持USB Slave,不支持USB HOST。

03. 注意事项

与USB相关的操作,重点关注如下几个方面:

上电开机前将USB_BOOT(GPIO0)上拉至 VDD_EXT,模组将进入USB下载模式(Boot from USB);

模组内部用于USB部分供电的电源LDO33USB(3.3V输出),该LDO只为USB功能提供电源,模组管脚未引出;

低功耗模式pm.WORK_MODE,1和PSM+模式pm.WORK_MODE,3 下,会将LDO33USB关闭;

模组VBAT最低2.3V左右(实测最低可至 2.1V)时仍可工作,但因此时LDO33USB的输入(2.3V)已远低于输出(3.3V),所以USB已无法正常工作;

VBUS,在模组内部实际接的是WAKEUP1,USB_VBUS的5V经过分压后接到WAKEUP1,用于USB插入检测。


04. 硬件参考设计

USB接口相关硬件参考设计如下图示,横屏或点击放大查看。

wKgZPGk7-G2ASi22AAKvqhqEiu0652.png

▼ 相关注意事项 ▼

USB接口硬件设计需要特别注意如下几个方面:

1)阻抗匹配

USB接口的PCB设计中,差分信号线(USB_DP/USB_DM)的阻抗需控制在90Ω±10%(即81Ω~99),这是保证信号完整性的关键参数。

注意:阻抗不匹配将会导致信号反射、眼图闭合、误码率上升,甚至通信失败。

2)布线原则

差分对等长匹配:长度差控制在5mil以内,避免时序偏差和共模干扰;

减少换层过孔:每次换层加一对回流地过孔,维持信号回流路径连续性,降低阻抗不连续风险;

保持完整参考平面:避免跨分割,优先内层布线,包地处理减少串扰。

3)TVS保护

USB接口容易引入静电干扰,因此需要在电路上增加 TVS保护。

USB High speed差分数据线选择TVS的最关键参数是结电容容值,需要小于1pF;我们验证使用过的是芯禾微XESD124N-5V0。

VBUS电源上使用的TVS,我们使用过的是芯禾微XESD307D-5V0。

相关手册详见:

https://docs.openluat.com/air780epm/product/air780exxpins/#usb


05. 与USB相关的LuatOS API

LuatOS高度封装与灵活的API设计,简化了传统USB开发的繁琐流程。

▼ pm.USB ▼

API手册详见:

https://docs.openluat.com/osapi/core/pm/

常量含义:USB的供电使能;

数据类型:number;

常量取值:0;

适用:Air780EXX系列、Air700E系列、Air8000系列模组;

示例代码:

wKgZPGk7-NOACB9KAAA61qZPOPE135.png

▼ mobile.CONF_USB_ETHERNET

API手册详见:

https://docs.openluat.com/osapi/core/mobile/

常量含义:蜂窝网络模块的USB以太网卡控制;

数据类型:number;

常量取值:11;

取值范围:0x01:开启RNDIS功能;0x03:开启RNDIS功能,使用NAT模式(基站分配ip);0x05:开启ECM功能;0x07:开启ECM功能,使用NAT模式(基站分配ip)。

注意事项:控制设备的USB以太网卡功能,通过位操作来控制不同的功能;仅在开启前可以修改;bit2:协议选择(1ECM协议,0RNDIS协议);必须在飞行模式下设置才能生效。

适用:Air780EXX系列和Air8000系列模组。

示例代码:

wKgZO2k7-QKASj9iAAB6EqJTIKM042.png

uart.VUART_0 ▼

API手册详见:

https://docs.openluat.com/osapi/core/uart/

常量含义:USB虚拟串口;

数据类型:number;

常量取值:32;

适用:Air780EXX系列和Air8000系列模组。

示例代码:

wKgZPGk7-TGATy7xAAAipeLSX4U083.png

今天的内容就分享到这里了~

审核编辑 黄宇

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

    关注

    60

    文章

    8489

    浏览量

    286694
  • LuatOS
    +关注

    关注

    0

    文章

    180

    浏览量

    2767
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    PC 端 LuatOS 模拟器使用教程:AirUI 免硬件调试

    近期,基于 AirUI 的 DIY 空气质量分析仪等应用场景讨论较多,社群中有用户咨询在无实体开发板的条件下,能否进行 AirUI 相关开发与调试。 本文说明:可通过 LuatOS 模拟器在无
    的头像 发表于 04-14 12:22 191次阅读
    PC 端 <b class='flag-5'>LuatOS</b> 模拟器使用教程:AirUI 免<b class='flag-5'>硬件</b>调试

    LuatOS:485 总线硬件设计要点与 exmodbus 库开发实战

    在工业物联网通信开发中,485 总线与 Modbus 协议的组合应用十分常见。本文以合宙 Air780EHV 系列模组为实例,围绕 LuatOS 开发环境,详解 485 总线的硬件设计
    的头像 发表于 03-19 17:57 294次阅读
    <b class='flag-5'>LuatOS</b>:485 总线<b class='flag-5'>硬件</b>设计<b class='flag-5'>要点</b>与 exmodbus 库<b class='flag-5'>开发</b>实战

    LuatOS 框架的嵌入式系统架构设计原理

    LuatOS 重新定义了嵌入式系统的开发范式——将 Lua 脚本作为主程序语言,构建起完整的系统架构。其设计原理围绕“脚本主导、C 层支撑”展开,通过在固件中嵌入 Lua 解释器,将硬件
    的头像 发表于 02-03 15:57 326次阅读
    <b class='flag-5'>LuatOS</b> 框架的嵌入式系统架构设计原理

    LuatOS平台下BLE蓝牙开发从入门到实践

    在资源受限的无线终端设备中,如何实现高效、稳定的BLE通信是开发关键。LuatOS凭借其低内存占用、高可扩展性与脚本化开发优势,成为众多开发构建
    的头像 发表于 02-02 16:32 8403次阅读
    <b class='flag-5'>LuatOS</b>平台下BLE蓝牙<b class='flag-5'>开发</b>从入门到实践

    基于LuatOS的MQTT物联网通信全解

    构建物联网终端设备时,通信协议的选择直接决定系统的稳定性与扩展性。LuatOS通过内置MQTT客户端支持,使开发者能以极少代码实现设备上云。本文将从协议原理到代码实现,全面解析基于LuatO
    的头像 发表于 01-29 19:42 419次阅读
    基于<b class='flag-5'>LuatOS</b>的MQTT物联网通信全解

    轻松掌握——LuatOS socket基础知识和应用开发

    对于刚接触LuatOS开发的工程师而言,实现设备联网往往是第一个重要目标,而Socket编程正是实现这一目标的核心技术路径。本文以循序渐进的方式,带领读者从最基础的Socket概念入手,逐步掌握在
    的头像 发表于 01-28 20:07 497次阅读
    轻松掌握——<b class='flag-5'>LuatOS</b>  socket基础知识和应用<b class='flag-5'>开发</b>

    LuatOS框架的使用(上)

    在资源受限的物联网终端设备中,如何实现快速开发与稳定运行是关键挑战。LuatOS框架通过将Lua语言与底层硬件抽象层深度融合,提供了一套简洁高效的开发范式。本文将围绕
    的头像 发表于 01-27 19:38 483次阅读
    <b class='flag-5'>LuatOS</b>框架的使用(上)

    别让USB拖后腿!硬件参考设计+软件开发API,都帮你整理好了

    本文以Air780EPM系列低功耗模组为例,分享USB接口的硬件设计要点以及LuatOS高效开发API,帮助
    的头像 发表于 01-05 20:40 457次阅读
    别让<b class='flag-5'>USB</b>拖后腿!<b class='flag-5'>硬件</b>参考设计+软件<b class='flag-5'>开发</b>API,都帮你整理好了

    ADC模数转换实战:硬件设计与软件开发要点指南!

    ADC硬件设计与软件开发的关键要点,为开发者提供ADC转换的实战指导。 本文将分享硬件参考设计及Luat
    的头像 发表于 12-16 13:25 647次阅读
    ADC模数转换实战:<b class='flag-5'>硬件</b>设计与软件<b class='flag-5'>开发</b><b class='flag-5'>要点</b>指南!

    USB设计操作指南:硬件关键与LuatOS API开发技巧!

    本文以Air780EPM系列低功耗模组为实例,分享USB接口硬件设计的要点以及LuatOS高效开发API的助力作用。旨在指导
    的头像 发表于 11-11 18:29 412次阅读
    <b class='flag-5'>USB</b>设计操作指南:<b class='flag-5'>硬件</b>关键与<b class='flag-5'>LuatOS</b> API<b class='flag-5'>开发</b>技巧!

    USB设计全程攻略:硬件关键点与LuatOS API开发指南!

    本文将分享USB接口硬件设计的关键要点,并探讨LuatOS高效开发API的运用。期望助力开发者在
    的头像 发表于 11-11 18:29 491次阅读
    <b class='flag-5'>USB</b>设计全程攻略:<b class='flag-5'>硬件</b>关键点与<b class='flag-5'>LuatOS</b> API<b class='flag-5'>开发</b>指南!

    嵌入式开发新选择:LuatOS脚本框架入门教程

    LuatOS正成为嵌入式开发的新趋势!本教程带你从基础入手,全面了解其基于Lua的脚本开发模式与轻量级运行框架。 一、LuatOS 编程起步 1.1 底层固件怎么启动
    的头像 发表于 09-26 17:34 862次阅读
    嵌入式<b class='flag-5'>开发</b>新选择:<b class='flag-5'>LuatOS</b>脚本框架入门教程

    无需硬件LuatOS模拟器释放开发无限可能

    LuatOS PC模拟器以创新技术打破硬件限制,开发者无需购置专用设备,仅凭PC即可完成全流程开发。高效模拟内核确保运行稳定性,让创意不受硬件
    的头像 发表于 09-18 13:57 722次阅读
    无需<b class='flag-5'>硬件</b>,<b class='flag-5'>LuatOS</b>模拟器释放<b class='flag-5'>开发</b>无限可能

    告别硬件负担,LuatOS模拟器重塑开发成本与效率

     LuatOS PC模拟器以“零硬件依赖”为核心优势,显著降低开发成本与时间消耗。开发者无需为设备兼容性发愁,即可在模拟环境中高效完成项目开发
    的头像 发表于 09-15 17:18 941次阅读
    告别<b class='flag-5'>硬件</b>负担,<b class='flag-5'>LuatOS</b>模拟器重塑<b class='flag-5'>开发</b>成本与效率

    解锁CAN接口开发高效路径!五个核心要点一次讲透

    高效开发CAN接口,关键在于把握协议基础、硬件适配、错误管理、性能优化与调试五大核心要点。下面将逐一剖析每个环节的技术细节与实践方法,助力开发者快速突破难点,实现
    的头像 发表于 06-23 16:08 1634次阅读
    解锁CAN接口<b class='flag-5'>开发</b>高效路径!五个核心<b class='flag-5'>要点</b>一次讲透