Skocz do zawartości

STM32 CubeMX USB driver - brak możliwości połączenia


Pomocna odpowiedź

Napisano (edytowany)

Hej,

próbowałem wgrać driver do komunikacji PC<->STM f103c8 przez usb. Projekt wygenerowałem w CubeMX (windows 7) zgodnie z tym poradnikiem:

Z tym wyjątkiem, że nie zmieniałem ustawień w pliku .cfg (w filmie 8:16). Przy kompilacji projektu natknąłem się na problem z tworzeniem pliku .hex zamiast .bin w folderze debug projektu. W tym celu w ustawieniach swojego IDE (Eclipse for STM32), w C/C++ Builder>Settings zakładka Build Steps, rubryka post build steps -> Command zamieniłem linijke:
arm-none-eabi-objcopy -O ihex "${BuildArtifactFileBaseName}.elf" "${BuildArtifactFileBaseName}.hex" && arm-none-eabi-size "${BuildArtifactFileName}"

na

arm-none-eabi-objcopy -O binary "${BuildArtifactFileBaseName}.elf" "${BuildArtifactFileBaseName}.bin"; arm-none-eabi-size "${BuildArtifactFileName}"
w celu otrzymania pliku .bin do wgrania na płytke.
Kod wgrałem przez ST-link utility. Po podłączeniu płytki do komputera przez kabel USB, w menedżerze pojawia mi się jedynie 'device unknown' (wgrywałem virtual com port driver zgodnie z zaleceniami poradnika na Forbot). Ponadto nie moge teraz zmienić programu na płytce ST Link utility nie może się z nią połączyć. Zastanawiam się czy nie jest to związane ze wspomnianymi wyżej ustawieniami w pliku .cfg ( widnieje tam parametr connect under reset, co by mi sugerowało, że to może być to).

Moje gorące pytanie do Was - co mogłem zrobić źle?

Edytowano przez arasu

Przestawienie jednej zworki na plytce z 00 na 10 pozwoliło na odzyskanie połączenia pomiędzy płytką i ST Link utility( wcześniej przy programowaniu nie musiałem ich przestawiać). Z kodem było wszystko w porządku, nie trzeba nic zmieniać w pliku .cfg, kod wygenerowany przez Cube Mx działa poprawnie. Po wgraniu kodu trzeba wrócić do ustawienia 00 na zworkach i podłączyć płytke przez USB, komputer wtedy rozpoznał płytke i zainstalował co trzeba. Teraz moge wysyłać komendy do płytki przez Putty po kablu USB 🙂

Temat do zamknięcia

  • Lubię! 1

@arasu dziękuję za podzielenie się rozwiązaniem! Na pewno pomoże to w przyszłości jakiejś innej osobie, która trafi tu podczas szukania rozwiązania swojego problemu. W takiej sytuacji nie ma nic bardziej irytującego od znalezienia tematu, w którym autor na końcu publikuje informację "Już działa" i nie dzieli się konkretnymi wskazówkami. Dobrze, że postąpiłeś inaczej 😉

Gość

Kiedy ktoś już kupił programator to chciałby móc z niego korzystać a bez usunięcia tego wpisu nie da się wygodnie debugować/programować. Myślę, że w niczym to nie zaszkodzi i nie trzeba się już później nad tym więcej zastanawiać a ponadto można wykorzystać gniazdo usb w projekcie.

Odnośnie jeszcze USB w BluePill. W klonach fabrycznie lutują za duże rezystory podciągające. U mnie było 10k  mimo, że na schemacie podano 4.7k. Przy dłuższym/byle jakim kablu do usb też może być z tym problem więc można samemu równolegle dać 2k do zasilania.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...