문제

USB 장치 용 CDC 드라이버를 개발하고 있으며 문제를 발견했습니다. Windows Side에서 사용하는 드라이버는 Clear Endpoint 기능을 일종의 Flish 메커니즘으로 사용하거나 데이터를 올바르게 얻습니다. 그것은 내가 그것을 작동시킬 수 없기 때문에 많은 trobule을 유발합니다. 데이터 토글은 동의하지 않으며 중요한 데이터 전송이 누락되었으며, 명확한 데이터 전환으로 인해 해당 엔드 포인과 관련된 인터럽트를 얻지 못합니다. USB 표준에서 지적한대로 세트 인터페이스 및 명확한 기능에서 데이터 토글을 0으로 재설정합니다. 내가해야 할 때 더 많은 상황이 있습니까? 또는 잘못된 오류 처리 방법이 유효하지 않은 데이터 전환 방법이 있습니까?

분석 해주셔서 감사합니다. 나는 USB 분석기를 얻었지만 지금은 잘하지 못했습니다. 내가 수집 할 수있는 것에서 일어나고 있다고 생각합니다. 응답 엔드 포인트에 대해 명확한 기능 (수행해야 할) 이후 HardVare에서 DatatoGgle 비트를 설정했습니다. 일부 데이터를 보내면 PC에서 리스팅됩니다. USB 분석기 가이 양식을 알고 있으며 포트 모니터로 VCOM 드라이버를 추적했습니다. 그런 다음 모든 것이 구성되면 일부 데이터를 기다립니다 (장치 열거 등), 초기 질문은 Anwsered이지만 다음 질문은 PC 쪽이 다시 질문을하는 명확한 엔드 포인트 장기 후에는 그렇지 않습니다. 이로 인해 UBS는 Corsenging Endpoint에 대한 UBS 인터럽트를 트리거해야하지만 다시 발생하는 경우가 발생합니다. 다시 한 번 명확한 엔드 포인트 기능과 동일한 패키지가 있으며 이번에는 응답을받습니다. 요청 된 트랜퍼와 누락 된 인터럽트를 계산했으며 비율은 정확히 2 : 1이므로 데이터 토글링이 절반으로 잘못 설정되었다고 생각하지만, 종말점 기능을 얻을 때마다 데이터 토글을 설정하면 어떻게 될 수 있습니까?

나는 문제를 명확하게 언급했으면 좋겠다. Harvare 측에서 나는 유일한 선수가 내가 설정하는 비트라고 생각한다. "엔드 포인트 데이터 토글을 0으로 재설정하기 위해이 비트에 1을 쓰십시오." 알았어 (희망적으로) 나는 명확한 엔드 포인트 츠치를 해결했다고 생각합니다. 다른 오류는 다른 것들로 인해 발생했으며 누적 문제는 잡기가 어려웠습니다.


좋아, 나는 얼마 전에이 문제를 해결했다. 이제 나는 원인이 무엇인지 기억조차하지 않지만 ususally와 마찬가지로 - 그것은 다른 것이었다. Anwser에 묶인 모든 분들께 감사드립니다.

도움이 되었습니까?

해결책

일부 버전의 usbser.sys에서는 정확한 배수의 64 바이트를 전송 한 후 Windows가 파이프를 올바르게 플러시하지 않습니다. 이것이 당신이보고있는 동작인지 여부에 대한 질문에서 정확히 명확하지 않지만 USB 분석기는 이것이 사실인지 판단하는 데 도움이됩니다. XP SP2를 사용하는 경우 SP3로 업그레이드하십시오.

다른 팁

사용하는 것이 좋습니다 USB 스누피 (소프트웨어 USB 분석기) 잘못하고있는 일을 이해하기 위해. 예산이 있으면 우리와 같은 하드웨어 USB 분석기를 더 잘 받았습니다. 레 크로이 또는 Ellisys. 또는 CDC 드라이버 용 Google 만 사용할 수있는 상용 CDC 드라이버를 구입하십시오. 문제 설명은 매우 일반적이며 직접 해결할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top