Skocz do zawartości
Komentator

Kurs STM32 F4 - #4 - Pierwszy projekt, GPIO, przerwania

Pomocna odpowiedź

(edytowany)

Cześć,

Mam problem przy kompilacji pierwszego programu. W konsoli po kliknięciu na builda wyświetla mi błąd "make: *** No rule to make target `clean'.  Stop.". Zdążyłem po necie już popatrzeć, że to potencjalnie może być problem z brakiem lub błędami w makefile'u. Coś ktoś wie jak to rozwiązać?

EDIT: Po rozwinięciu okna błędu do detali pojawia się jeszcze komunikat "Invalid thread access".

Edytowano przez PrimeSoul

Udostępnij ten post


Link to post
Share on other sites

@PrimeSoul dla formalności dopytam: korzystasz z tego samego środowiska i zestawu, który opisany jest w kursie? Próbujesz skompilować dokładnie taki sam przykład?

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Yup, dokładnie tego samego. Nawet system mam Win10, choć początkowo planowałem zrobić kurs na Ubuntu.

Dzisiaj w wolnej chwili spróbuję zrobić reinstalację wszystkiego, co wczoraj wgrywałem.

Informacja, jaka może być jeszcze przydatna, to fakt, że korzystałem z czystego Eclipse z dwoma plug-in'ami (System Workbench + CubeMX), zamiast gotowego, skonfigurowanego Eclipse'a ze strony ST. Dzisiaj zamierzam zrobić podejście już na gotowcu + Cube'a jako oddzielny program, może tym razem pójdzie bez problemów.

EDIT: Jak powiedziałem, tak zrobiłem. I tym razem działa. Szkoda, bo liczyłem na to, że będę miał jednego Eclipse'a skonfigurowanego zarówno pod STMy i AVRy, ale nie jest źle, można przeżyć.

EDIT2: Kolejny problem - po wgraniu pierwszego programu, następne wgrywania są ... puste. Mam namyśli, że gdy już wygeneruję plik *.hex (a generowałem ich mnóstwo), to potem wrzucam go do ST-linka i startuję programming. Czas wgrywania trwa 0s 0ms, a zachowanie STMa się nie zmienia, tzn. działa tak, jakby program nie został wczytany na mikrokontroler. "Erase chip" z ST-linka zadziałał i usunął poprzedni program, ale to też nie pomogło przy wgrywaniu nowego. Ktoś coś wie na ten temat?

EDIT3: Problem z edit 2 leży w CubeMXie. Przeczesałem komentarze wcześniejsze i zasugerowany nimi spróbowałem zrobić od nowa konfigurację sprzętową. Zadziałało od razu. No i każda edycja kodu daje radę do momentu, gdy próbuję zmienić cokolwiek w projekcie w CubeMXie. Jest na to jakaś recepta czy trzeba się z tym męczyć?

Edytowano przez PrimeSoul
  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites
20 godzin temu, PrimeSoul napisał:

EDIT3: Problem z edit 2 leży w CubeMXie. Przeczesałem komentarze wcześniejsze i zasugerowany nimi spróbowałem zrobić od nowa konfigurację sprzętową. Zadziałało od razu. No i każda edycja kodu daje radę do momentu, gdy próbuję zmienić cokolwiek w projekcie w CubeMXie. Jest na to jakaś recepta czy trzeba się z tym męczyć?

Tak jak wspomniałeś - jest to błąd w CubeMX. Błąd jest znany i miał być naprawiony, jak widać trwa to już długo. Nie ma żadnego rozwiązania, które pozwoliłoby obejść ten problem. Jedyna opcja to ręczne skopiowanie dobrego pliku ".ld". Na początku powinien mieć kilka kB, później jego rozmiar spada do 0B (i wtedy właśnie pojawiają się problemy). Można ręcznie nadpisywać ten plik (pierwotną, działającą wersję), wtedy całość powinna działać poprawnie.

Udostępnij ten post


Link to post
Share on other sites

Mam taki problem otóż po zmianie konfiguracji pinów w CubeMX i zgenerowaniu kodu, tracę kod napisany w mainie przy starszej konfiguracji. Jest taka możliwość żeby aktualizować tylko ustawienia hardware z Cuba ? Używam AC6 jako IDE.

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

 Po napisaniu pierwszego programu ( HAL_GPIO_WritePin(GPIOD, GPIO_PIN_15, GPIO_PIN_SET) ) i skompilowaniu wyskakują mi błędy jak poniżej. Kompletnie nie wiem co mam robić. To mój pierwszy raz mikrokontrolerami STM32 i zupełnie się w tym nie orientuję. W internecie nie znalazłem rozwiązania tego problemu. 

obraz.png

Edytowano przez MichalBien

Udostępnij ten post


Link to post
Share on other sites

Cześć,

Używam do kursu układu STH32f4-DISC1

Mam taki problem, że nie ważne jaki kod napiszę i jaką czynność chcę wykonać to włącza mi się jedynie reagująca na guzik RESET dioda VBUS. Wcześniej udało mi się raz włączyć diodę PG13 ale od tej pory jedyne co się dzieje to ta świecąca się dioda od złącza USB USER.

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Czy jak wgrywasz program, to za każdym razem w ST-Link masz tak dużo adresów jak na obrazku czy tylko jeden? Używasz Cuba jako oddzielny program czy nakładka na eclipse ?

 

stlink.png

Edytowano przez MichalBien

Udostępnij ten post


Link to post
Share on other sites

Witam

Podczas kompilowania wyskakują mi takie błędy nie wiem co z tym zrobić.

Z góry dziękuje za pomoc.

image.thumb.png.d7f3dc5be3625e73f56643227422381b.png

Udostępnij ten post


Link to post
Share on other sites

Cześć,

Jeśli ktoś ma problemy z kompilacją pierwszego programu za pomocą środowiska Workbench polecam zainstalowanie STM32CubeIDE.

Jest środowiskowo które łączy STMCubeMX i środowisko programistyczne oparte na Eclipse. Więc w zasadzie te same narzędzia, które autor proponował w kursie. U mnie zadziałało od strzała pewnie dla tego, że jest to jedno zintegrowane środowisko stworzone przez STMicroelectronic. Wydaje mi się, że cały kurs da się zrobić na podstawie tego narzędzia. Warstwa merytoryczna związana z samy programowaniem STM32F4 za pomocą HAL powinna być identyczna. Oprogramowanie jest darmowe

Link

Pozdrawiam

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...