用msp430F5529通过usb-HID与PC通信,大多数境况下没有问题。[P]但是有时候在过程中会通信中断,表现为PC原来的HID设备(正常是一个HID设备)无法识别。只有重启电脑或者拔插USB线才能恢复。[/P][P]
[/P][P]追踪代码,发现USB_connectionState()的值由正常状态下的ST_ENUM_ACTIVE[/P][P]变为:ST_ENUM_IN_PROGRESS。[/P][P]
[/P][P]而导致ST_ENUM_IN_PROGRESS的重点是bEnumerationStatus =0.[/P][P]
[/P][P][P][b]if[/b] ((USBPWRCTL & USBBGVBV) && (USBCNF & PUR_EN) [COLOR=#2248dd] //这里都是正常的[/COLOR][/P][P] && ([COLOR=#dd2292]!(bEnumerationStatus == ENUMERATION_COMPLETE))[/COLOR])[/P][P] {[/P][P] [b]return[/b] ST_ENUM_IN_PROGRESS;[/P][P] }[/P][/P][P]
[/P][P]有谁由类似的经验吗?望指点迷津。[/P][P]
[/P] |