一种基于STM32的USB接口数据通信方法研究
2021-04-28赵晓娜
山西电子技术 2021年2期
赵晓娜
(山西大众电子信息产业集团有限公司,山西 太原 030024)
0 引言
随着嵌入式系统的不断发展,通过单片机采集并发送数据到PC端供人们研究,已经成为目前热门的研究领域。单片机到PC之间数据的传输方式主要有并口传输、串口传输、I2C传输和USB传输等。大多数的数据传输方式具有连接复杂,速度慢等缺点,而USB传输有速度快,连接简单、扩展性相对强、支持热插拔等优势,也是目前使用最广泛且最方便的传输方式[1]。
本文主要是通过USB接口将上位机软件的数据指令发送给STM32,对其指示灯进行点亮。通过上位机软件发送数据到单片机,也是新的研究课题之一,具有很好的研究价值。
1 总体设计
USB一般有主设备和从设备之分,并且当主设备发起数据传输时,作为从设备只能被动地接收数据。本系统设计主要包含两部分,下位机STM32端USB数据接收和上位机端USB数据发送。上位机通过自定义协议发送两位字节数据给下位机,下位机对数据进行解析后将其指示灯进行点亮控制,两者相互配合实现了可靠、高速的数据传输。
2 上位机软件设计
2.1 设计流程
该系统上位机软件开发是在Windows操作系统下,通过VC6.0开发工具,采用MFC框架进行界面设计的。该设计中USB驱动程序的开发使用了LibUSB-Win32库函数。主要的USB驱动库函数如图1所示。

图1 USB驱动库函数
上位机软件的实质就是Windows应用程序,即通过界面的形式把与用户的交互式命令形象地展示出来。它是通过消息对话框窗口实现命令交互,该窗口可以接收和反馈用户的输入数据、进行多方位窗口拖动和窗口关闭操作,具体设计流程如图2所示[2]。……
登录APP查看全文
