Skocz do zawartości

STM32 problem z przerwaniami


matelekt

Pomocna odpowiedź

Witam,

właśnie przerabia kurs STM32F1 ze strony forbot.pl, pracuje na płytce z układem stm32f103c8t6 i problem jaki napotkałem dotyczy przerwań, o tuż w przypadku naciśnięcia przycisku nie dochodzi do wywołania przerwania. Kodu nie zamieszczam bo nawet w przypadku gdy skopiuje go z kursu to nie działa. (kod ze strony: https://forbot.pl/blog/artykuly/programowanie/kurs-stm32-4-sterowanie-portami-gpio-w-praktyce-id5538)

Nie wiem czy to ma znaczenie ale podczas wgrywania pojawia mi się taki error:

Error: BUG: can't assert SRST

Info : STM32F100C8Tx.cpu: hardware has 6 breakpoints, 4 watchpoints

Error: TRST/SRST error

Mimo tego błędu obsługa wyjść wejść działa poprawnie.

Ktoś wie w czym może być problem?

Link do komentarza
Share on other sites

Witam.

Podczas kompilacji i wgrywania programu nie mam informacji o żadnym błędzie mimo to tak jak u kolegi wyżej przerwania nie działają nawet po bezpośrednim skopiowaniu programu z kursu (i przeróbce GPIO na STM32F103 c8t6). W akapicie "Więcej informacji o przerwaniach" jest odnośnik do pliku: "startup_stm32f10x_md.S", w którym znajdują się definicje wektorów przerwań. u mnie znalazłem ten plik pod nazwą: "startup_stm32.S" i w porównaniu z zaprezentowanym w kursie plikiem znajduje się tam tylko kilka definicji wektorów (m.in "SysTick_Handler" - ten przykład akurat działał 🙂 ) Reszta pół zamiast wektorów wypełniona jest zerami. Skopiowanie wektorów z pliku prezentowanego w kursie skutkuje zwróćeniem błędu podczas kompilacji dla każdej lini ("undefined reference to...")

Link do komentarza
Share on other sites

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

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.