Skocz do zawartości

Kurs STM32L4 – #3 – wejścia/wyjścia, czyli GPIO w praktyce


Pomocna odpowiedź

(edytowany)

@Treker Potwierdzam, konfiguracja ustawiona na Debug, debug level na maximum -g3 a ustawienia wyglądają identycznie jak w kursie. Nowy workspace tez nie przyniósł poprawy

Edytowano przez vadmae

@vadmae to jeszcze jeden pomysł - czy na pewno masz wybrany właściwy mikrokontroler w projekcie? Jeśli tak, a nadal nie działa to wyeksportuj swój projekt, sprawdzimy go 🙂 

(edytowany)

@vadmae pobrałem twój projekt i jak to mawiają informatycy "U mnie działa" 🙂 😞 

Zainstalowałem na nowo najnowszą wersję 1.10.1:

image.thumb.png.df921520c01e94c665cb0dc721d3eae3.png

Niestety był problem z aktualizacją z wersji 1.6 więc musiałem zainstalować na nowo.

Import projektu ok. Wgranie ok. Debuger zatrzymuje się na odpowiedniej pułapce:

image.thumb.png.c4356d9eb60393bc727696a77627978b.png

Możliwe, że antywirus coś psuje, ja mam avasta który wyrzuca ostrzeżenia na wszystkim JavaScript, Python, VSC, Pycharm, wszystko co w konsoli, Cuba też potrafi się przyczepić. Zrób wyjątek dla plików programu i workspace.

Edytowano przez Gieneq
  • Lubię! 1

@Gieneq

Korzystam z ESET32, wylaczylem całkowicie jego ochrone, plus wyłaczyłem windows defendera, nic to nie pomogło. Możliwe żebym miał zablokowane porty na routerze? Popołudniu spróboje dodać wyjątki, może coś gdzieś pominałem

@vadmae z routerem i portami internetowymi nie powinno to mieć nic wspólnego.

  • Z jakiego systemu operacyjnego korzystasz?
  • Czy instalowałeś jako administrator i korzystasz z PC jako administrator?
  • Jaka jest ścieżka do projektu?

@Elvis  Prosze 🙂

obraz.thumb.png.c1c16b7991f0ea6b8b9f8e3b72ed6907.pngobraz.thumb.png.bcf7cdda3cb351ec561ac36ef1d1a4ad.png

 

@Gieneq  Pododawałem wyjątki w zaporze windows i w esecie i dalej bez poprawy 😞 u mnie też zatrzymuje sie na odpowiedniej pułapce, jednak dodatkowo wyskakuje mi okno z błedem, a sama płytka nie reaguje

 

obraz.thumb.png.b7f2e1e6249e4d54357465f09b65b550.png

 

@Treker

1. Windows 10

2. Tak, wszystko robię w trybie admina

3. scieżka: E:\STMworkspace\pierwszy, przy pierwszym workspace, scieżke zostawiłem domyślną

 

Dodatkowo:

Debug console wyrzuca mi coś na czerwono:

obraz.thumb.png.ba8301a512dbd72c86ef104bb8fd9c5f.png

a sama consola przy debugowaniu wydaje sie nic nie robic

obraz.thumb.png.d41ed4f2ce41ad0fb97bbbec8947e797.png

Dziękuje wszystkim za pomoc, mam nadzieję, że uda się to wspólnie rozwiązać 🙂

Zaraz zaraz, na tym obrazku wszystko wygląda poprawnie:

obraz.png

Breakpoint jest jak powinien w pierwszej linii funkcji main(), kod w C jest poprawnie wyświetlany, a zakładka z adresem 0x800294c to nie błąd, chociaż adres jest faktycznie dziwny.

Zobacz, czy wykonywanie programu instrukcja, po instrukcji działa, jeśli tak, to chyba klasyczny "it's not bug, it's a feature"

  • Lubię! 1
(edytowany)

@Elvis

Gdy przeklikuje program, to wygląda to chyba normalnie, po pierwszym kroku wrzuca mnie tu:

obraz.thumb.png.cf6c2f6f1ed6633bf7085d24363f3051.png

Po kolejnym tu:

obraz.thumb.png.73d4cce5c6f85b9bd14bcd9d2c64c80b.png

a potem już skacze o rzeczach automatycznie wygenerowanych, jednak płytka w żaden sposób nie reaguje na ten kod. Nagrałem krótki film pokazujący co sie dzieje na płytce, zaczyna się od Breakpointu na HAL_Init(), po kliknięciu resume tak jakby odpalał kod migania dioda z 500ms delayem, nie reagując na przycisk. po naciśnięciu resetu dioda zaczyna migać bardzo szybko, a guzikiem B1 mogę "skakać" miedzy trybami tego migania, bardzo szybkim, średnim i wolnym

 

@amisztal0  Samo IDE mam zainstalowane na C

C:\ST\STM32CubeIDE_1.10.1\STM32CubeIDE\stm32cubeide.exe

Nowy workspace utworzyłem na dysku E bo pierwszy na dysku C nie działał

Edytowano przez vadmae

@vadmae Wygląda na to, że płytka wykonuje inny program niż projekt, który przesłałeś (pierwszy.zip). Więc pierwsze pytanie - skąd ten program pochodzi, przecież musiał być wgrany do pamięci flash? Pytanie więc, co działo się wcześniej z płytka Nucleo, której używasz? Czy to nowa płytka, czy może kupiona od kogoś, kto wcześniej jej używał? Chyba że sam wcześniej wgrałeś program z miganiem diodą?

Proponuję skasować zawartość flash programem STM32CubeProgrammer (https://www.st.com/en/development-tools/stm32cubeprog.html). Przy okazji warto sprawdzić, czy ktoś nie zablokował możliwości zapisu do pamięci flash.

 

  • Lubię! 1

@Elvis

 

Hmmm, to całkowicie nowa płytka kupiona w zestawie do tego kursu na botland.pl kilka dni temu. jedyne co na niej zrobilem to 2 pierwsze lekcje kursu aż zorientowalem sie, że cos jest nie tak. Jak sprawdzic blokade zapisu do flash ?

Trochę się pogubiłem - wcześniej wstawiłeś film z płytką Nucleo, która miga diodą i po naciśnięciu przycisku zmienia częstotliwość migania.

Czy płytka tak samo zachowywała się od pierwszego uruchomienia? O ile rozumiem pierwszy program z kursu to zapalanie diody po naciśnięciu przycisku, czyli dokładnie to co jest w pliku pierwszy.zip.

Nie rozumiem natomiast skąd w pamięci flash mikrokontrolera jest program, którego działanie jest na filmie... i wydaje mi się to mocno dziwne. Jeśli to nowa płytka to może konieczne będzie złożenie reklamacji u sprzedawcy.

(edytowany)

@Elvis

Pierwszym projektem ktory wrzuca sie na płytke jest miganie diodą z delay(500) i płytka dokładnie tak się zachowuje (co widac na poczatku filmu), dopiero przy drugim zadaniu, czyli modyfikacji aby dioda zapalała sie po nacisnieciu guzika, mogłem stwierdzić, że coś jest nie tak bo nie reagowała na przycisk. Dopiero wtedy zacząłem klikać reset itd i zauważyłem te "tryby migania". Zakładam, że pierwszy program tez sie nie wrzucił, ale płytka skądś ma na stałe wgrany inny kod ktory mnie zmylił bo częsciowo spełnia pierwsze zadanie (jeden z tych trybow miga mniej wiecej 2 razy na sekunde i pojawia sie on jako defaultowy.

 

EDIT:

Spróboje wykonać kroki powyżej i dam znać o rezultatach 🙂

 

 

Edytowano przez vadmae

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