Skocz do zawartości

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


Komentator

Pomocna odpowiedź

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

@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
Link do komentarza
Share on other sites

@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?
Link do komentarza
Share on other sites

@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ć 🙂

Link do komentarza
Share on other sites

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
Link do komentarza
Share on other sites

@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
Link do komentarza
Share on other sites

@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
Link do komentarza
Share on other sites

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.

Link do komentarza
Share on other sites

@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
Link do komentarza
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!

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

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.