你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F407VE使用USB_HOST接上HID设备不能接收数据?

[复制链接]
anyonezhang 发布时间:2020-7-2 11:05
请教FAE,使用CUbeMX建立USB_HOST工程,已经能够识别鼠标和键盘,也能收到数据。但是接上电磁屏(HID设备,类似鼠标),不能接收数据是什么原因?& f  {6 p$ ~! K0 E8 t$ K
设备已经连接成功了如下:
1 N- V/ [6 ]+ o/ w9 F* c1 ZUSB Device Connected
' B8 L( x6 c4 \% z5 L0 aUSB Device Reset Completed
  I3 B0 B; s% @; z3 Z! cPID: 6dh
& r- J8 U, c& Y+ MVID: 256ch
1 C( f2 ?1 t4 OAddress (#1) assigned.! Q2 ]7 W, }' u! y5 [& g0 M: N; i
Manufacturer : GAOMON# P) }, v4 s8 ]% _) j/ o
Product : Gaomon Tablet
. c3 [( |/ L7 b5 x3 _7 fSerial Number :
7 Z- m4 D0 _3 tEnumeration done.- y( ?. W, E: L4 m* I! T" u
This device has only 1 configuration.
$ p- h5 K5 ]. f; xDefault configuration set.
: [: l# o6 n. v8 kDevice remote wakeup enabled
6 t6 H5 I! K/ M% |8 e5 T- E0 cSwitching to Interface (#0)
! J# z9 v- F1 O1 U: _2 [  f( b# V" WClass    : 3h9 k+ @6 G4 T4 j$ D9 O1 }
SubClass : 1h) v. }% H8 `' t' U( C/ ~! f* A6 k
Protocol : 2h
. t* }! K( m1 Z5 Y4 z  UMouse device found!
) F& f! J, g1 _. {. D2 nHID class started.
收藏 评论3 发布时间:2020-7-2 11:05

举报

3个回答
天臆弄人 回答时间:2020-7-2 13:55:06
改下端口就是了
anyonezhang 回答时间:2020-7-2 14:49:43
天臆弄人 发表于 2020-7-2 13:55
- ]9 X6 R' C6 ~; ]% U0 o改下端口就是了

" D6 t( A4 ?& T9 A( }' c1 Y十分感谢  能具体一点吗?在usbh_ioreq.c usbh_core.c usbh_ctlreq.c usbh_pipes.c usbh_hid.c的哪个文件里面改?
anyonezhang 回答时间:2020-7-4 13:37:45
获取的报告描述符如下: 3 L* O" t6 n5 h- U  l! `. |
bLength: 12h
% p) w3 x& ~8 C3 S$ G' U. rbDescriptorType: 1h
$ t+ o) F- `' AbcdUSB: 200h6 I0 [/ L  t2 F# R% O
bDeviceClass: 0h, M$ Y" y* f& q0 T2 S- j
bDeviceSubClass: 0h1 {' i4 w9 S5 A" ?9 `2 X0 c1 m/ K1 o
bDeviceProtocol: 0h
  h! |# g* N: U2 q# x  M! HbMaxPacketSize: 8h
0 a( N) \5 x  x! M1 G& \9 J3 P# qbDeviceClass: 0h
! `' x, H# `: E( ]4 O2 E* ^PID: 6dh
7 Z" D! [0 E. h& M: ^. U! U: q& xVID: 256ch
6 Z8 s! {" s: e/ r+ O- z' Z. @bcdDevice: 100h, v7 G; A3 J- g  `0 Z% I2 b. a
iManufacturer: 1h
9 X6 O0 B" i9 P; n; g( \  piProduct: 2h2 ~. q/ e2 O4 _: M2 ^3 M4 O
iSerialNumber: 3h2 j& ~* P. s5 y- U/ Q  V+ U
bNumConfigurations: 1h+ o) m! a: ^9 d1 i" n
Address (#1) assigned.# _: B8 @. ?6 a  z: M
bLength: 9h
$ ^, r+ T$ Z5 q7 p$ o' BbDescriptorType: 2h
3 T3 M2 V6 S9 j: VwTotalLength: 3bh
0 s4 e4 {7 v. vbDescriptorType: 2h( F( _( D0 Q8 {) l* h* [
bNumInterfaces: 2h
1 v; |% I. q6 g* P+ ^bConfigurationValue: 1h
1 Z9 C& s0 C- y6 IiConfiguration: 0h. O' p" y6 y* u' u1 Z4 n
bmAttributes: a0h; {3 {+ c7 r& d& i4 t
bMaxPower: f0h& @6 `- P+ {7 f; Q% _
Itf_Desc[0].bLength: 9h* s/ R) Y+ f2 i. ]1 }
Itf_Desc[0].bDescriptorType: 4h
+ c$ d# g& e, r9 q2 a( RItf_Desc[0].bInterfaceNumber: 0h( T6 K& c! O; y7 p3 [7 T) S/ ~( T
Itf_Desc[0].bAlternateSetting: 0h+ j+ s/ X, X; T' e* V4 [
Itf_Desc[0].bNumEndpoints: 1h
% w: N. V1 ?- E' GItf_Desc[0].bInterfaceClass: 3h2 k7 Q" d6 W! \
Itf_Desc[0].bInterfaceSubClass: 1h
& f8 a5 n" Q6 y$ kItf_Desc[0].bInterfaceProtocol: 2h* f  U: J: \5 U1 T* G$ ]
Itf_Desc[0].iInterface: 0h
  S& G3 u3 u/ E0 S* SItf_Desc[0].Ep_Desc.bLength: 7h# i* Y+ @: v% ~8 K  z1 q
Itf_Desc[0].Ep_Desc.bDescriptorType: 5h6 F! Z  p# ~- z, O) _
Itf_Desc[0].Ep_Desc.bEndpointAddress: 81h
. o; O2 n9 F" m- U6 [$ N0 P$ ~Itf_Desc[0].Ep_Desc.bmAttributes: 3h6 F  |/ `2 ^, ]7 V* s; Y3 t6 h) b5 G/ l
Itf_Desc[0].Ep_Desc.wMaxPacketSize: 40h6 T+ d( W" R: S' ?% E, W
Itf_Desc[0].Ep_Desc.bInterval: 2h
8 N3 \1 F$ h$ A; R+ Q2 E+ _8 e* }8 R5 ~8 b( o4 c# i: H$ h
Itf_Desc[1].bLength: 9h
/ Q4 d, f5 c  J' }9 F. y2 D$ R" LItf_Desc[1].bDescriptorType: 4h
2 \9 C8 p/ c* P" bItf_Desc[1].bInterfaceNumber: 1h
0 d4 R& L; F. k, U% ]% bItf_Desc[1].bAlternateSetting: 0h: q  j, [' k! Z" Y0 B
Itf_Desc[1].bNumEndpoints: 1h
" t, W0 \- o. |: k5 SItf_Desc[1].bInterfaceClass: 3h
2 x0 s2 I' u/ B: F8 ~+ W: d0 F' AItf_Desc[1].bInterfaceSubClass: 1h
9 ?* @# l7 }0 Q4 ?% E. b/ KItf_Desc[1].bInterfaceProtocol: 2h
8 B; ?0 N+ [$ V8 Q; L0 aItf_Desc[1].iInterface: 0h
) A; h' {& ?' ?/ R8 `* O+ _; XItf_Desc[1].Ep_Desc.bLength: 7h' r% s5 u" |; ]! ]( X) f1 M: F$ h9 |
Itf_Desc[1].Ep_Desc.bDescriptorType: 5h4 F6 L2 @( f  N2 w
Itf_Desc[1].Ep_Desc.bEndpointAddress: 82h( H/ i# ], j3 e  p; ~6 g
Itf_Desc[1].Ep_Desc.bmAttributes: 3h8 t4 c0 G5 m) ?# C# V0 v. k
Itf_Desc[1].Ep_Desc.wMaxPacketSize: 10h' v9 J/ Y" L. D  p' ?9 i2 a/ N
Itf_Desc[1].Ep_Desc.bInterval: 2h
( X+ a- h; d+ d+ L% `9 P& J- k, KManufacturer : GAOMON9 m$ i" a& Z: p' y) C# K
Product : Gaomon Tablet! }3 h" j, R6 |* ?
Serial Number :
+ R% f. L) x  u% d& Z" n5 u( OEnumeration done.% Y5 G8 i; j" W& M3 Z0 s$ |& M3 W9 L
This device has only 1 configuration.5 C7 D, k6 {3 {9 r+ d
Default configuration set.3 a! s' ^, }- Z
Device remote wakeup enabled( d" K# T. [0 N' C, U' T' o4 z& e& b) b8 K
interface;0; t5 ], L( V5 i4 S8 T
Switching to Interface (#0)2 ^) b5 \5 a0 y8 H: k
Class    : 3h: p4 b$ i! }# H: m' H
SubClass : 1h7 X! F& K8 r7 q/ _
Protocol : 2h; l: B' N' @; m! Q- i! y. \( `1 N
Mouse device found!
% H) {- |& B' d' M) m  ~8 i9 u& aHID class started.' ~, d% ], o/ i% Y+ O1 W
HID_Handle->HID_Desc.bLength:9h' P9 n5 H; ~" ~# v* m: l7 ?
HID_Handle->HID_Desc.bDescriptorType:21h( a/ s- r3 {/ n0 w) z
HID_Handle->HID_Desc.bcdHID:111h
  u) K- L" B5 L0 r( nHID_Handle->HID_Desc.bCountryCode:0h
) M  e" A: [& P1 {' nHID_Handle->HID_Desc.bNumDescriptors:1h
* I& M! H! `: i8 KHID_Handle->HID_Desc.bReportDescriptorType:22h0 h3 a4 C  ~+ \; i0 w: i; o
HID_Handle->HID_Desc.wItemLength:12h
2 ~0 n* U# p  Z1 b! a4 v( O# [报告描述符如下:# ~5 F. s) b/ ]
0x06 0x00 0xff
& p. O$ {% ~9 s' ^# E0x09 0x01   _6 l+ M! p) @: e' d( w; U' G
0xa1 0x01 4 V/ s; f4 A3 @" b- M# C
0x85 0x08
0 }; v' q6 w! @( F" Q# w( C! I0x75 0x58 8 @4 g6 L0 q& g  \% K
0x95 0x01 $ t! o# ?; V+ G
0x09 0x01 8 F* E5 {/ x, b4 F1 M% d/ B
0x81 0x02 ) q; \' o# v5 B# _/ Y. `3 X3 N7 ^
0xc0 0xff
) b, v! ~# i2 ^/ R* L) D* M# y
' g0 k& b7 a! N: }! C
2 i; z: c0 f1 E' J+ ~2、函数  status = USBH_HID_GetReport(phost, 0x01U, 0U, HID_Handle->pData, (uint8_t)HID_Handle->length);  返回的一直是USBH_BUSY; Z- N6 d4 }! u- {
' e! w0 P4 r. h1 a6 z+ F: ^
3、设备有两个接口描述符,STM32的USB_LIb不支持两个接口的设备?
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版