fonak Lipiec 9, 2021 Udostępnij Lipiec 9, 2021 Witam, Fantastyczny kurs, nauczyłem się bardzo wiele. Kurs jest bardzo dobrze napisany i porusza zagadnienia które ciężko znaleźć w innych kursach dostępnych w Internecie. Zastanawiam się czy jest możliwa kontynuacja kursu która dotyczy kolejnych nieco bardziej zaawansowanych lub nowych peryferiów w rodzinie STM32F/STM32H/STM32G takich jak: CORDIC, FMAC, DFSDM, BDMA, MDMA, DMA2D, QuadSPI czy FSMC. W Internecie brakuje także dobrych kursów dotyczących debugowania czy szerszego wykorzystania CMSIS DSP. 1
Treker (Damian Szymański) Lipiec 11, 2021 Udostępnij Lipiec 11, 2021 @fonak witam na forum! Dziękuję za miłe słowa i docenienie tego kursu. Pozostała nam publikacja jeszcze jednej części (o 1-wire), ale faktycznie kurs powoli się kończy i można zacząć myśleć o jego kontynuacji - będziemy na pewno rozpytywać kursantów w wiadomościach prywatnych (lub publicznie), czy faktycznie są oni zainteresowani taką tematyką. Mamy kilka koncepcji na ewentualną kontynuację kursu, bo zagadnienie to jest tak rozległe, że pomysłów jest mnóstwo. Zobaczymy co da się zrobić, ale jeśli pojawiłaby się kontynuacja kursu to raczej dotyczyłaby dalej rodziny L4 - bo nawet na zestawie do tego kursu można wykonać jeszcze dziesiątki różnych ćwiczeń, które będą omawiały kolejne aspekty pracy z tymi mikrokontrolerami
Popularny post Treker (Damian Szymański) Sierpień 23, 2021 Popularny post Udostępnij Sierpień 23, 2021 W imieniu swoim i @Elvis bardzo dziękuję za miłą niespodziankę Dla osób, które nie były wtajemniczone: spore grono użytkowników forum "zmówiło" się za naszymi plecami, aby przygotować dla nas niezwykłe statuetki, które ostatecznie wykonał @Gieneq. Bardzo się cieszymy, że kurs STM32L4 Wam się spodobał, dziękujemy za ten upominek - to baaaardzo miłe! Tutaj zdjęcia tego co zastałem na swoim biurku po urlopie: @SOYER, @FlyingDutch, @Frantick, @Dominikzz, @Bhoy67, @ethanak, @H1M4W4R1, @Matthew11, @Leroy, @Leoneq, @Autorobotyk, @bjrk, @Toomas, @BartekJ, @_LM_, @Gieneq, @Sabre, @xanes, @Emerid, @Ceneusz, @wn2001 - bardzo dziękujemy Doceniamy również wszystkie inne pozytywne głosy, które docierają do nas od innych czytelników. Tworząc ten kurs STM32L4 ustawiliśmy sobie wysoko poprzeczkę, ale jestem przekonany, że za jakiś czas podniesiemy ją jeszcze wyżej 7
Popularny post Elvis Sierpień 27, 2021 Popularny post Udostępnij Sierpień 27, 2021 Przed chwilą kurier dostarczył moją statuetkę, pozwólcie więc że również bardzo podziękuję za przemiłą niespodziankę Statuetka na żywo wygląda o wiele lepiej niż na zdjęciu, wyrazy uznania za pomysł i jakość wykonania projektu. A przy okazji, czy gdzieś na forum dostępny jest może opis i schematem tego układu? Przyznam, że jestem bardzo ciekaw jak sterowania diodami RGB bez użycia mikrokontrolera. 4
Popularny post Gieneq Sierpień 27, 2021 Popularny post Udostępnij Sierpień 27, 2021 @Elvis cieszę się, że prezent się spodobał 11 godzin temu, Elvis napisał: A przy okazji, czy gdzieś na forum dostępny jest może opis i schematem tego układu? W sumie nie myślałem o opisywaniu tego projektu, bo sam sposób sterowania jest dość prosty, ale w sumie... może kogoś zainspiruje Na końcu artykułu jest zamieszczony pdf ze schematem: 3 1
Dinosaurus Kwiecień 21, 2023 Udostępnij Kwiecień 21, 2023 (edytowany) Nie wiem czy dobrze umieściłem. Jeśli nie proszę o przeniesienie. Kurs jest naprawdę świetny, Kupiłem sobie książkę z kursem bo nie lubię czytać z ekranu. Jestem już w połowie ale wydaje mi się że czegoś brakuje. Bardzo dobrze jest pokazana wstępna konfiguracja STM-a ale nigdzie nie zauważyłem możliwości zmiany ustawień w trakcie wykonywania programu co jest często niezbędna. W PDF-ie opisującym bibliotekę HAL znalazłem funkcje uruchomienia modułu czy jego zatrzymania np. HAL_TIM_Base_Start oraz HAL_TIM_Base_Stop i wiele podobnych ale np. zmiany prescalera już nie. To samo z przerwaniami. Czasem niezbędne jest wyłączenie przerwań albo np. zmiany zbocza. Czy aby to zrobić trzeba się odwoływać do rejestrów. W STM jestem początkujący ale programuję mikrokontrolery od lat, co prawda tylko amatorsko. Być może można to zrobić wywołując ponownie funkcję Init modułu uprzednio ustawiając zmienne np. tim3.Init.prescaler (to udało mi się znaleźć w odniesieniu do peryferiów) ale jeśli chodzi o przerwania już nie. A może ja po prostu czegoś nie wiem. Będę wdzięczny za oświecenie w tej materii. Pozdrawiam wszystkich a szczególnie autorów. Edytowano Kwiecień 22, 2023 przez Dinosaurus
Treker (Damian Szymański) Kwiecień 23, 2023 Udostępnij Kwiecień 23, 2023 @Dinosaurus witam na forum Miło słyszeć, że kurs Ci się podoba! Jeśli chodzi o zmianę konfiguracji peryferiów podczas pracy programu to oczywiście jest to możliwe. Za pomocą narzędzia graficznego Cube w łatwy sposób wyklikujemy konfigurację peryferiów. Jak już pewnie zauważyłeś ten konfigurator po prostu generuje zwykły kod, który bazuje na bibliotece HAL do STM32L4. Jeśli chcesz zmienić konfigurację jakiegoś modułu to najprościej również posłużyć się biblioteką HAL i wywołać od nowa inicjalizację danego modułu lub zmienić jakieś jedno ustawienie (dużo zależy od konkretnego przypadku). Skąd wiedzieć co i jak wywołać? Drogi są (przynajmniej dwie): Droga tradycyjna: jako programista znasz świetnie dokumentację bibliotek HAL, więc po prostu wiesz co należy wywołać (lub przynajmniej wiesz jak to znaleźć w dokumentacji). Droga łatwiejsza: wyklikujesz zmiany w działaniu danego peryferium w jakimś dodatkowym projekcie Cube, podglądasz jaki kod został wygenerowany i kopiujesz odpowiedni fragment do swojego projektu. Dla jednych takie zmiany "w locie" będą konieczne, dla innych nie. Jednak to powyższe to taka skrótowa, ogólna porada, bo dużo może tutaj zależeć od konkretnego przypadku. Oczywiście można odpuścić też HAL i działać bezpośrednio na rejestrach, ale kurs dotyczy HAL, więc uznajmy, że to jest droga, której tutaj się trzymamy. Jeśli masz jakieś konkretne pytanie to najlepiej załóż temat na naszym forum o mikrokontrolerach - łatwiej będzie pomóc. 1
Dinosaurus Kwiecień 23, 2023 Udostępnij Kwiecień 23, 2023 Witam ! Dziękuję Treker za szybką odpowiedź. Wypróbowałem drugi pomysł - działa. Wzorując się na wpisach jakie zostawił program Cube można też o wiele łatwiej odnaleźć odpowiedni fragment w dokumentacji HAL. W sumie mam to co potrzebne. Jeszcze raz dzięki i pozdrawiam. 1
Treker (Damian Szymański) Kwiecień 24, 2023 Udostępnij Kwiecień 24, 2023 @Dinosaurus cieszę się, że pomogło Są osoby, które używają Cube głównie do tego, a później przenoszą kody do osobnych projektów bazujących na HAL (bez Cube).
Tymoteus Styczeń 7, 2024 Udostępnij Styczeń 7, 2024 Witam wszystkich serdecznie. Słuchajcie ludziska, moja płytka ma prawdopodobnie problem z zasilaniem. Tzn. próbowałem podłączać kilka kabli do niej. W jednym przypadku komputer nie widział płytki, choć płytka była zasilona, w drugim nawet mogłem włączyć debugger ale w pojawiała się po chwili w konslii informacja: Target is not responding, retrying... , a dioda LD2 wbudowana w mikrokontroler miała problem z działaniem(w zależności od położenia płytki sygnał się urywał lub pojawiał). W reszcie przypadków podobnie + łatwo się odłączała od komputera płytka. Stąd wniosek, że prawdopodobnie gniazdo jest uszkodzone. Szkoda, bo przerobiłem zaledwie trzy części kursu, a potem zrobiłem sobie ze względu na robotę przerwę i chciałbym teraz wrócić. Moje pytanie brzmi czy mogę w jakiś inny sposób podłączyć płytkę do komputera w celu wgrywania jej programu. Ewentualnie czy mogę gdzieś oddać ją do naprawy(ewentualnie mogę spróbować na własną ręke przylutować gniazdo ale nie wiem czy to nie jest zbyt ryzykowne). Proszę o jakąś radę:) Pozdrawiam serdecznie, robicie świetną robotę:)
Treker (Damian Szymański) Styczeń 8, 2024 Udostępnij Styczeń 8, 2024 @Tymoteus dość dziwny objaw, nie kojarzę takiego uszkodzenia Wykluczmy najpierw kwestie programowe. Pamiętasz jaki program ostatnio wgrywałeś na płytkę, co dokładnie miał robić? Jeśli złącze jest uszkodzone to może przy włączonym przewodzenie płytka spadła i coś się uszkodziło? Dziwne, aby działająca płytka nagle przestała działać ze względu na jakieś uszkodzenie sprzętowe.
Tymoteus Styczeń 9, 2024 Udostępnij Styczeń 9, 2024 @Treker Kod jest prościutki, z początku tego kursu. Jego zadaniem jest miganie wbudowanej diody: /* USER CODE BEGIN WHILE */ while (1) { if(HAL_GPIO_ReadPin(USER_BUTTON_GPIO_Port, USER_BUTTON_Pin) == GPIO_PIN_RESET){ HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_SET); } else{ HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_RESET); } /* USER CODE END WHILE */
Treker (Damian Szymański) Styczeń 9, 2024 Udostępnij Styczeń 9, 2024 @Tymoteus szansa, na zablokowanie płytki takim kodem jest raczej zerowa. W takim razie pozostaje kwestia uszkodzenia mechanicznego, jeśli wykluczasz uszkodzenie po swojej stronie i uważasz, że złącze było wadliwe to zgłoś sprawę do sprzedawcy (czyli zapewne do Botlandu). Nic tutaj raczej innego nie wymyślimy
Tymoteus Styczeń 9, 2024 Udostępnij Styczeń 9, 2024 @Treker A programowanie jakimiś innym złączami nie byłoby możliwe?
Treker (Damian Szymański) Styczeń 9, 2024 Udostępnij Styczeń 9, 2024 @Tymoteus można wgrać program przez UART itd., ale dostęp do sprawnego programatora i tak będzie potrzebny (do debugowania). Nie uda Ci się wykonać ćwiczeń z kursu na płytce, w której uszkodzone zostało złącze USB.
Pomocna odpowiedź
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ę »