본문 바로가기
임베디드.일렉트로닉스

SILabs. Simplicity Studio USB library EndPoint 설정 관련 버그 및 해결책.

by i.got.it 2016. 3. 15.

 

개요 - 오류증상.

 

실리콘 랩사의 Simplicity Studio(버전3, 2016년 3월 15일 시점 최신버전) 의 Configurator 의 USB Library 로 생성된 코드 설정이 정확하지 않은 버그가 있고 이를 해결하는법 정리.

 

오류증상.

확인된 오류 상황.

타겟칩 : EFM8 UB1 으로 하여  Simplicity Studio 의 Configurator에서 제공되는 USB 라이브러리를 활성화 하고 endpoint  를 사용함으로  설정하였음에도 자동생성된 펌웨어 코드에서는 해당 endpoint 가 비활성화되어있는 오류가 있다.

본 오류는 타겟칩 무관하게 즉, EFM32에서 USB Library 사용시에도 발생 한다.

 

오류상세.

아래처럼 Simplicity Studio 의 Configurator 에서 USB Library를 선택하고 EP1 OUT, EP1 IN 을 모두 enable 시켰다.

 

위와같이 endpoint 설정하고 자동생성시킨 코드 중에 emf8_usbd.c 를 보면 활성화 되어있어야 할 EP1IN 과 EP1OUT 이 비활성화되어있다. 전체 코드가 동일하게 이런 식으로 되어있다.

 

 

 

 

 

 

해결책.

 

 상기 오류를 해결하기 위해서는 프로젝트 설정에서  inclue 경로를 아래 붉은 박스처럼 수동으로 추가하면 된다. 파란색 박스에서 보이듯이 우리가 지정한 EP1IN 과 EP1OUT 부분이 enable 된다.

 

endpoint 정상화는 위 1개의 include 경로만 추가한 것으로도 해결되나, 안전하게 아래처럼 추가 2개의 USB Library 관련경로도 추가하자. 

 

 

 

 

 

///715.

 

 

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5