USB自定义HID设备实现-STM32】的更多相关文章

该文档使用USB固件库,在其基础上进行了自己的定制,完成了一个USB-HID设备,首先是usb_desc.c文件,里面存放了usb各种描述符的存在 #include "usb_desc.h" //usb标准设备描述符 const u8 DinkUsbDeviceDescriptor[DINK_USB_SIZ_DEVICE_DESC] = { USB_DEVICE_DESC_SIZE,             //bLength字段.设备描述符的长度为18(0x12)字节 USB_DEV…
首先在之前鼠标的基础上修改设备描述符 #include "usbdesc.h" //usb标准设备描述符 const U8 USB_DeviceDescriptor[] = { USB_DEVICE_DESC_SIZE,             //bLength字段.设备描述符的长度为18(0x12)字节 USB_DEVICE_DESCRIPTOR_TYPE,           //bDescriptorType字段.设备描述符的编号为0x01 WBVAL(0x0110),    …
硬件设计 该核心板的USB插口有两个,一个是用于USB Slave的,可以用来做HID设备,把模拟STM32模拟为U盘等:另一个是USB Host设备,可以对插上的U盘的数据进行读写. 图中J2是Micro-USB口,用于向整个板子供电,由于最大供电为500mA,所以板载资源耗电不能超过2.5W. 上图中J1是USB Host设备,它需要向Slave(如U盘)供电,USB_POW用于控制是否供电.当USB_POW为低,Q1导通,5V的电源(来自)供到S5V上,为Slave供电. 在调试USB-H…
原文:C# 访问USB(HID)设备 二话不说,直接给代码,如果您真想做这方面的东西,还是稍微研究下,没有现成的好类用,就需要自己了解其原理 //引用空间 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using S…
STM32 使用Cubemx 建一个USB(HID)设备下位机,实现数据收发  本文转载自 https://www.cnblogs.com/xingboy/p/9913963.html 这里我主要说一下如何做一个USB下位机,这里主要分3部分:1.建立工程:2.添加报文描述符:3.数据的传输.这里就不讲USB的理论知识了,有想要了解的自行百度一下就可以了. 建立工程:工程建立参考:https://www.cnblogs.com/libra13179/p/7193375.html 1.首先打开US…
这里我主要说一下如何做一个USB下位机,这里主要分3部分:1.建立工程:2.添加报文描述符:3.数据的传输.这里就不讲USB的理论知识了,有想要了解的自行百度一下就可以了. 建立工程:工程建立参考:https://www.cnblogs.com/libra13179/p/7193375.html 1.首先打开USB 2.接着把USB设置为下图HID模式 3.选择外部时钟 4.配置时钟树 5.配置USB设置 下面的USB设置就有点讲究了, 6.确认后,生成代码 添加报文描述符: 这里只是建立了一个…
1 .   所使用的典型 Windows API CreateFile ReadFile WriteFile 以下函数是 DDK 的内容: HidD_SetFeature HidD_GetFeature HidD_SetOutputReport HidD_GetInputReport 其中, CreateFile 用于打开设备: ReadFile . HidD_GetFeature . HidD_GetInputReport 用于设备到主机方向的数据通信: WriteFile . HidD_Se…
  前期准备: 一.硬件资源:STM32F103,USB-FS固件库. 链接: STM32 之 标准外设版USB驱动库详解(架构+文件+函数+使用说明+示例程序) https://blog.csdn.net/ZCShouCSDN/article/details/78936456?utm_source=blogxgwz1 二.调试软件:usbtrace3.0或者BusHound,用于看USB设备的信息.KEIL编译环境-用于开发. 后续相关工作: (1)用STM32CubeMX配置,具体实现其它的…
STM32 Customed HID开发流程 本文介绍的是STM32的cubeMX自定义HID的开发流程 cubeMX配置customed HID模式.更多详细配置壳查看代码CubeMX的配置文件. 修改usbd_custome_hid_if.c 里面的CUSTOM_HID_ReportDesc_FS[USBD_CUSTOM_HID_REPORT_DESC_SIZE] 数组.根据填入的数组内容修改宏USBD_CUSTOM_HID_REPORT_DESC_SIZE尺寸为34 __ALIGN_BEG…
近期一直在做Android USB Host 与USB Hid设备(STM32FXXX)的通信,遇到了很多问题.项目源码以及所遇到的其他问题可以见本博客其他相关文章,这里重点讲一下bulkTransfer()返回-1问题. 在百度上搜索,可以看到很多人也遇到了类似问题,按照“标准”例程写了代码,其他的步骤都没问题(getDeviceList().openDevice()等等),就是到了bulkTransfer()这一步总是返回小于0的值(-1).看网上的回复,解决方法也是各种各样,比如:检查端点…