2017-09-04 18 views
1

나는 잠시 동안 STM32F30x 시리즈와 함께 작업 한이 같은보고 파일 시스템을 사용하고 있습니다 :상위 레벨 라이브러리가 STM32F042에 불필요합니까?

inc/ 
---*.h 
lib/ 
---CMSIS/ 
---STM32F30x_StdPeriph_Driver/ 
------inc/ 
------scr/ 
---STM32_USB-FS-Device-Driver/ 
------inc/ 
------scr/ 
src/ 
---*.c 
usb/ 
---inc/ 
------ hw_config.h 
------ *.h 
---scr/ 
------ hw_config.c 
------ *.c 

지금은 STM32F042 작업을 전환하고있어 및 I 찾기가 전혀없는거야 내 설정이 같다 있도록 hw_config 및 USB 파일이있는 USB 라이브러리 :

inc/ 
---*.h 
lib/ 
---CMSIS/ 
---STM32F0xx_StdPeriph_Driver/ 
---STM32_USB-Device-Driver/ 
------inc/ 
------scr/ 
---STM32_USB-Device-Library/ 
------Class/ 
------Core/ 
src/ 
---*.c 

나는 항상이 USB/라이브러리가 USB 주변 장치를 사용할 필요라고 생각했습니다. STM32F042 시리즈는 더 이상 사실입니까? 또는 어떻게 든이 파일들을 내 자신의 버전으로 작성하는 방법을 알아 내야합니까? USB를 사용하는 STM32F042의 작동 예제를 찾을 수 없었기 때문에 어느 정도 손실이있었습니다.

+1

나는 그 라이브러리를 사용하지 않으므로 잘 알지 못한다. 이 제품은 잘 알고있는 것처럼 USB 인터페이스를 포함하고있다. 가족들간에 동일한 주변 장치를 재사용한다는 것은 드문 일이 아닙니다. 항상 이전 가정에서 빌린 완벽한 시간은 아닙니다. A의 시계/pll은 가족 B의 타이머와 Uarts와 섞여 있습니다. 그래서 처음에는 ST를 묻는 것이 좋습니다. 두 부분에 대한 데이터 시트를 살펴보고 usb 주변 장치 레지스터 사양이 매우 유사하는지 확인하십시오. 라이브러리 지원 및 일치하는 레지스터가있는 다른 stm32 장치가 있는지 확인하고 해당 코드를 빌려보십시오. –

+0

당신이이 라이브러리를 사용하는 데 익숙하다면, 당신 자신의 드라이버를 가지고 나가기를 원하는 USB 주변기기가 마지막입니다. 이 주변 장치의 인스턴스화를 지원하는 오픈 소스 또는 기타 라이브러리는 의심의 여지가 없습니다. 또한 ST가 라이브러리 지원을 제공하지 않을 가능성은 매우 낮습니다. –

+0

SPL은 수년간 죽었으며 STM에서 지원하지 않습니다. 대신 HAL을 사용하십시오. USB 및 이더넷은 주변 장치를 프로그래밍하기가 매우 어렵습니다. –

답변

3

반대로; ST는 당신이 그들의 even higher level library을 사용하기를 원합니다!

그러나 찾은 라이브러리는 해당 부분에 대해 STM32F042 product page에 명확하게 있습니다. Embedded Software 섹션으로 스크롤하거나 STM32F0x2xx USB FS 장치 라이브러리 (UM1717) 페이지를 검색하거나 직접 연결 STSW-STM32092을 사용하십시오. 예제가 포함되어 있습니다.

ST는 기존 소프트웨어 지원에서 STM32Cube으로 마이그레이션하는 것이 좋습니다. 개인적으로 나는 여러 가지 이유로 STM32Cube를 싫어한다 (나는 SPL 및 USB 라이브러리를 싫어한다). 불행히도 ST는 레거시 지원 버그에 대한 언급을 꺼리고 있으며 대부분의 버그는 USB 코드로되어있어 대부분의 다른 주변 장치보다 훨씬 복잡하지만 모든 것을 마이그레이션하는 것보다 기존 소프트웨어 설계에 훨씬 쉽게 통합 할 수 있습니다 큐브와 ST에 자신을 영원히 잠그는 것 (물론 그들의 목표는 틀림 없습니다).