Skocz do zawartości
Komentator

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

Pomocna odpowiedź

html_mig_img
Stworzenie programu dla mikrokontrolera STM32, wymaga tylko kilkunastu kliknięć! W tej części kursu skonfigurujemy projekt wykorzystując do tego generator kodu CubeMX.Poznamy podstawowe funkcje do obsługi portów GPIO. Sprawdzimy też jak w praktyce wygląda obsługa przerwań zewnętrznych.

UWAGA, to tylko wstęp! Dalsza część artykułu dostępna jest na blogu.

Przeczytaj całość »

Poniżej znajdują się komentarze powiązane z tym wpisem.

Udostępnij ten post


Link to post
Share on other sites

Pierwsze pytanie: Jak skonfigurować eclipse aby bezpośrednio programował układ, a nie przez ST-Linka?

Udostępnij ten post


Link to post
Share on other sites

Witam,
Przy pierwszym generowaniu kodu w cube3d ściągane są dane do projektu, 310MB i zawsze zatrzymuje się przy 39,1MB. Sprawdzałem na róznych kompach i zawsze tak.

Udostępnij ten post


Link to post
Share on other sites

jkarczew, a sprawdzałeś korzystając z innej sieci? U mnie, podczas wczorajszego sprawdzania instrukcji przed publikacją artykułu, pobieranie nie sprawiło żadnego kłopotu.

Udostępnij ten post


Link to post
Share on other sites

Sprawdziłem na innej sieci ale było to samo. Ale można ten plik sciągnąć bezpośrednio ze strony stm i zainstalować wybierając nierozpakowany plik w help/install new libraries i kliknąć na from local i wskazać plik .zip.

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites
Pierwsze pytanie: Jak skonfigurować eclipse aby bezpośrednio programował układ, a nie przez ST-Linka?

Nie wiem czy dobrze zrozumiałem Twoje pytanie, ale to o czym mówisz nie jest możliwe (a przynajmniej ja nie wiem o żadnym przystępnym sposobie osiągnięcia tego).

Mikrokontrolery STM32 mogą być programowane na dwa sposoby: za pomocą programatora (to co robimy teraz), lub z wykorzystaniem bootloadera. Nie jest to kwestia konfiguracji środowiska programistycznego, ale napisania odpowiedniego programu startowego (bootloadera) i wprowadzenia mikrokontrolera w odpowiedni tryb. Zagadnienie bardziej złożone, które zostanie opisane w jednym z kolejnych artykułów.

Podsumowując: nie da się po prostu podłączyć mikrokontrolera bezpośrednio do komputera i zaprogramować "ot tak" z Eclipse bez użycia dodatkowego sprzętu, bootloadera czy zewnętrznego oprogramowania.

Udostępnij ten post


Link to post
Share on other sites

Jedno słowo, a wprowadziło nieporozumienie 😃

Chodziło mi o ST-Link Utility.

Zdecydowanie wygodniej byłoby uruchamiać programowanie z poziomu eclipse (przycisk Run albo Debug) zamiast używania osobnej aplikacji.

Da się to zrobić bo w kursie z bibliotekami STD jest to opisane ale przy projekcie z Cube metoda z tamtego kursu nie działa.

Udostępnij ten post


Link to post
Share on other sites
Jedno słowo, a wprowadziło nieporozumienie 😃

Chodziło mi o ST-Link Utility.

Zdecydowanie wygodniej byłoby uruchamiać programowanie z poziomu eclipse (przycisk Run albo Debug) zamiast używania osobnej aplikacji.

Da się to zrobić bo w kursie z bibliotekami STD jest to opisane ale przy projekcie z Cube metoda z tamtego kursu nie działa.

Ojej, no to faktycznie wprowadziłeś zamieszanie, bo nie dość że spytałeś nie o to co chciałeś, to jeszcze zapomniałeś dodać na końcu "Utility", przez co Twoje pytanie dotyczyło programowania procka BEZ programatora bezpośrednio z IDE.

Tak, z Eclipse jak najbardziej można wgrywać i debugować program na mikrokontroler z wykorzystaniem programatora ST-Link (bez użycia ST-Link Utilty). W jednym z najbliższych artykułów będzie do dokładnie opisane 🙂

[ Dodano: 27-04-2016, 21:20 ]

Sprawdziłem na innej sieci ale było to samo. Ale można ten plik sciągnąć bezpośrednio ze strony stm i zainstalować wybierając nierozpakowany plik w help/install new libraries i kliknąć na from local i wskazać plik .zip.

Dziwny problem, przetestowałem ten mechanizm na prawie 100 komputerach i akurat tego problemu nie spotkałem ani razu. Fajnie że znalazłeś obejście.

Jak to (podobno) mówią w CallCenter, "Przepraszam Pana bardzo, ale ja na prawdę muszę zadać to pytanie. Czy próbował Pan wyłączyć i włączyć ponownie? (W tym wypadku przeinstalować na nowo Cube'a?)"

Udostępnij ten post


Link to post
Share on other sites
Dziwny problem, przetestowałem ten mechanizm na prawie 100 komputerach i akurat tego problemu nie spotkałem ani razu. Fajnie że znalazłeś obejście.

Jak to (podobno) mówią w CallCenter, "Przepraszam Pana bardzo, ale ja na prawdę muszę zadać to pytanie. Czy próbował Pan wyłączyć i włączyć ponownie? (W tym wypadku przeinstalować na nowo Cube'a?)"

Czasami są problemy których inni nie doświadczają, ale bardzo rzadko trafia na mnie 🙂 tym razem trafiło. A zawsze się dziwie jak ludzie opisują problemy które im się przytrafiają w trakcie prostej instalacji, myśle sobie "to chyba niemożliwe- u mnie było dobrze" 🙂.

Chyba wiem dlaczego- plik jest już w trakcie ściągania rozpakowywany i instalowany i tu mógł zawieść winrar. Odinstalować nie próbowałem bo problem był na dwóch kompach dokładnie taki sam.

Udostępnij ten post


Link to post
Share on other sites

Witam,

Po generacji kodu w Cube i zaimportowaniu go do Eclipe mam od razu 3 błędy. Załączam zrzut ekranu. Czy ktoś miał podobny problem? Jak go rozwiązać? Jedynym sposobem który do tej pory znalazłem jest wpisanie wartości na sztywno (SysTick_IRQn: -1, EXTI4_15_IRQn: 7).

Udostępnij ten post


Link to post
Share on other sites

U mnie to samo z błędem

Symbol 'SysTick_IRQn' could not be resolved main.c /01_GPIO/Src line 129

ale o dziwo program da się skompilować i po wgraniu do procka działa.

Gdy wcisnę Ctrl+ lewy p. myszy na 'SysTick_IRQn' to pojawia się poniższa ramka.

Ale dlaczego mamy błąd i jak się go pozbyć??

Udostępnij ten post


Link to post
Share on other sites
U mnie to samo z błędem

Symbol 'SysTick_IRQn' could not be resolved main.c /01_GPIO/Src line 129

Proponuje w Cube w "Project settings" Toolchain/IDE i wyborze SW4STM32 ODZNACZYĆ opcje "generate under root".

Udostępnij ten post


Link to post
Share on other sites
Czasami są problemy których inni nie doświadczają, ale bardzo rzadko trafia na mnie 🙂 tym razem trafiło. A zawsze się dziwie jak ludzie opisują problemy które im się przytrafiają w trakcie prostej instalacji, myśle sobie "to chyba niemożliwe- u mnie było dobrze" 🙂.

Chyba wiem dlaczego- plik jest już w trakcie ściągania rozpakowywany i instalowany i tu mógł zawieść winrar. Odinstalować nie próbowałem bo problem był na dwóch kompach dokładnie taki sam.

Miałam ten sam problem, 39.1MB i stop, odinstalowanie Cube'a nic nie dało, ale sposób z samodzielną instalacją pliku .zip zadziałał 🙂 Dzięki!

Udostępnij ten post


Link to post
Share on other sites

Co zrobić, żeby pod 'młotkiem' działała opcja Release? Ustawiam preset dla release z predefiniowanych dla AC6 ale mam błędy (to dla płytki discovery, dla gołego uC jest to samo):

19:08:04 **** Incremental Build of configuration rel_1 for project disco_1 ****
make all 
'Building file: C:/work_swstm/disco_1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c'
'Invoking: MCU GCC Compiler'
C:\work_swstm\disco_1\SW4STM32\disco_1\rel_1
arm-none-eabi-gcc -mthumb -mfloat-abi=soft -O3 -Wall -fmessage-length=0 -ffunction-sections -c -MMD -MP -MF"Drivers/STM32F4xx_HAL_Driver/stm32f4xx_hal.d" -MT"Drivers/STM32F4xx_HAL_Driver/stm32f4xx_hal.o" -o "Drivers/STM32F4xx_HAL_Driver/stm32f4xx_hal.o" "C:/work_swstm/disco_1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c"
C:/work_swstm/disco_1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:54:27: fatal error: stm32f4xx_hal.h: No such file or directory
compilation terminated.
make: *** [Drivers/STM32F4xx_HAL_Driver/stm32f4xx_hal.o] Error 1

19:08:05 Build Finished (took 343ms)

Udostępnij ten post


Link to post
Share on other sites

Witam.

Mnie przy pierwszej części

(zaświecenie diody) pojawia się błąd w linijce

HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);

jak zakomentuję to dalej leci ok i kompiluje się.

Problem znika kiedy przechodzę do części związanej z przerwaniami.

Mam wrażenie, że w pierwszej części jakiegoś kroku konfiguracyjnego brakuje,
który ustawi ten SysTick w NVIC.

Pozdrawiam

Zuk

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ść
Napisz odpowiedź...

×   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...