华强电子网

电子元器件
采购信息平台

扫码下载
手机洽洽

  • 华强电子网公众号

    电子元器件原材料

    采购信息平台

  • 华强电子网移动端

    生意随身带

    随时随地找货

  • 华强微电子公众号

    专注电子产业链

    坚持深度原创

  • 华强商城公众号

    一站式电子元器件

    采购平台

  • 芯八哥公众号

    半导体行业小灵通

基于STM32的USB OTG数据通信的实现

来源:互联网 作者:yangzh 浏览:8736

标签:

摘要: 基于STM32的USB OTG数据通信的实现实例介绍。

摘 要: 针对一般USB装置只能在PC机周围进行数据通信的限制,提出了基于USB OTG接口与STM32微控制器相结合的智能通信的设计方法。该方法是在基于Cortex内核的32 bit RAM芯片STM32F107上集成USB OTG接口上实现,它利用了STM32集成度高、成本低、功耗低、开发方便、性能可靠和USB OTG双角色特性等优点,解决了无PC机时USB从设备之间数据传送难的问题。并在金牛开发板上实现它与PC机以及U盘之间的通信,完成了USB嵌入式设备之间数据的传输。

关键词: USB OTG; STM32F107; U盘

移动数据的交换和存储, 是近年来IT行业的热点。随着USB技术的产生,USB技术已逐渐应用在移动数据领域中。目前使用的USB移动设备都只能通过PC机进行相互的文件和数据交换。随着USB技术的逐渐成熟,人们希望通过移动设备直接与USB外设通信, 使得USB能应用在没有PC的领域中。

USB OTG(On The Go)[1]可满足这些要求,即一个拥有OTG 功能的设备既可以扮演主机的角色操纵其他USB从设备,同时又可以担当从设备的角色接受主机的支配。例如,照相机可以直接连到USB打印机上打印数据。当今USB主机的嵌入式应用就成了USB领域新的研究焦点。该技术对于便携式设备、野外作业设备间的数据传输将是一个重要突破。基于Cortex-M3内核的STM32系列的ARM嵌入式处理器因其高的性价比而正被广泛应用。将USB与ARM相结合是进行数据采集、处理与传输的理想解决方案。本文重点讨论基于STM32的USB OTG的数据通信。

1 USB OTG规范

USB OTG规范是USB 2.0规范的补充,它完全遵守USB 2.0规范的外围设备。在USB OTG规范之下, 任意两个符合规范的USB产品都可以互相连接进行通信, 而不是必须通过PC机才能通信, 从而实现了各类USB产品完全脱离电脑进行数据传输的功能。

双重角色设备必须具备有限的主机能力,同时还需要一个OTG目标列表,即包括与之通信的设备信息、设备类型、制造商等。它支持会话请求协议SRP和主机交换协议HNP。SRP协议用于B设备向A设备请求开始USB会话, HNP协议用于USB会话过程中在A设备和B设备之间传递主机地位[2]。

2 STM32的USB OTG全速控制器

ST公司在基于ARM公司的Cortex-M3架构上研发出32 bit STM32处理器后,凭借其丰富的外围模块、高速指令执行速度、低功耗、低价格而备受市场青睐。2009年又推出了STM32F107互联型系列微控制器,它集成了USB OTG接口,配合了USB HOST和SPI功能,让微控制器可以读取USB大容量外存、MP3播放器、SD记忆卡等文件。STM32F107芯片内集成了USB OTG模块功能图如图1所示。

    基于STM32的USB OTG数据通信的实现

型号 厂商 价格
EPCOS 爱普科斯 /
STM32F103RCT6 ST ¥461.23
STM32F103C8T6 ST ¥84
STM32F103VET6 ST ¥426.57
STM32F103RET6 ST ¥780.82
STM8S003F3P6 ST ¥10.62
STM32F103VCT6 ST ¥275.84
STM32F103CBT6 ST ¥130.66
STM32F030C8T6 ST ¥18.11
N76E003AT20 NUVOTON ¥9.67