2010-03-25 3 views
2

ColdFire 라인에서 프로그래밍 경험이있는 분이라면 누구든지 도와주세요!ColdFire MCF52259에서 USB 열거 오류가 발생했습니다.

저는 ColdFire MCF52259와 함께 CMX USB-Lite 스택을 사용하고 있습니다. 어떤 이유로, USB 풀다운 저항을 활성화하자마자 매우 첫 단계에서 USB 열거가 ​​실패합니다. 이것은 내가 뭘하는지입니다 : -

INT_ENB, OTG_INT_EN, ERR_ENB는 0x0으로 설정되어

INT_STAT, OTG_INT_STAT 및 ERR_STAT는 인터럽트 상태에서

을 (이것은 모든 인터럽트를 취소한다)에서 0xff로 설정 레지스터 비트 0 (마스크 전체)과 53이 0이되고 나머지는 1입니다.

INT_ENB에서 TOK_DNE, USB_RST 및 STALL 인터럽트가 활성화됩니다.

BDT 기본 주소가 설정됩니다.

MCF_USB_CTL는 0x1로에게

문제를 가지고 : 를 호스트 대신 내가 리셋의 끝없는 시리즈를 받고 있어요 예상 가져 오기 설명자 요청, (이 시점에서 내가 제어 엔드 포인트 0 가능) 제 1 리를 발행 한 후. TOK_DNE 인터럽트가 결코 트리거되지 않기 때문에 적어도 그것은 그렇게 보입니다.

내가 잘못하고있는 것이 있습니까?

+0

오 ******, ColdFire * as * ColdFusion *을 읽고 이것이 하나의 큰 WTF라고 생각했습니다; P – leppie

답변

1

OWN 비트를 1로 설정해야합니다. 그렇게하지 않으면 SIE가 BD를 제어하지 못하고 호스트가 장치를 계속 재설정합니다. 제어 엔드 포인트에 대해 BD를 설정 한 위치에 따라 OWN 비트를 1로 설정하십시오.

관련 문제