Skocz do zawartości

Kurs STM32L4 – #5 – taktowanie układu, RTC, watchdog, quiz


Pomocna odpowiedź

Kurs STM32L4 – #5 – taktowanie układu, RTC, watchdog, quiz

Mikrokontroler używany w naszym kursie STM32 może pracować z częstotliwością 80 MHz. Temat ten jest jednak dość rozległy i jedna wartość to zbyt mało, aby opisać możliwości tego układu. Pora, aby omówić dostępne źródła taktowania. Sprawdzimy, czym się różnią i jak wpływają na pracę układu. Wykorzystamy też watchdoga.

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.

Link to post
Share on other sites

Przypominamy: w komentarzach do kursów rozmawiamy wyłącznie na tematy związane z konkretnym kursem. Mile widziane są również informacje od osób, które korzystały wcześniej z naszych poradników. Wszystko po to, aby kursanci, którzy mają zamiar korzystać z tego kursu nie musieli "przedzierać" się przez dziesiątki postów na inne tematy. Tematy na pytanie, które nie są związane z kursem można zadawać na naszym forum o mikrokontrolerach.

Link to post
Share on other sites

Kolejny odcinek już dostępny! Tym razem zegary, czyli taktowanie układu - zachęcam do lektury i eksperymentowania, bo zagadnienia omówione w tym odcinku będą pojawiały się w wielu kolejnych lekcjach i przykładach 🙂

Link to post
Share on other sites

Przyznaję się... szybko przeczytałem, aby zrobić quiz jako pierwszy. Chyba trochę zbyt mocno się pospieszyłem, bo tylko 80%... Wracam do początku i jednak wykonam ćwiczenia z tej części :D Ale ogólnie jak zawsze świetna robota, bo odcinek wygląda super. Dzięki!

  • Lubię! 1
Link to post
Share on other sites
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

@Nore21 dzięki, miło słyszeć, że się podoba - 80% to całkiem dobry wynik, ale po praktyce na pewno byłoby 100%. Spróbuj później drugi raz, już dla własnej satysfakcji. Na marginesie dodam, że przez chwilę na stronie pokazywało się, że rozwiązałeś quiz... godzinę przed jego publikacją. Miałem w głowie chwilowe zaćmienie, ale później okazało się, że to błąd w naszej tabeli wyników (była ustawiona błędna strefa czasowa), ale już naprawione 😉

Link to post
Share on other sites

Po korekcie i odpowiednim formatowaniu artykuły wyglądają faktycznie dużo lepiej, czasem jestem wręcz zaskoczony, czytając ostateczną wersję. Duże brawa dla Redakcji.  No i należy się ogromny plus za wybór zdjęć, watchdog w okularach jest idealny. Chociaż zawsze trochę inaczej sobie wyobrażałem tego psa-wartownika 🙂

Link to post
Share on other sites

Głowa boli...

Jednak napisane bardzo precyzyjnie, da się zrozumieć co jest naisane😁.

Mnie tylko ciekawi kto to wszystko projektuje i buduje? Jak jest z najnowszymi prockami? Dalej to ogarniają ludzie czy już algorytmy? Co za bystrzaki piszą te biblioteki?

Pozdrawiam autorów. Dobra robota.

  • Lubię! 1
Link to post
Share on other sites

Jak chodzi o tematykę zegarów czasu rzeczywistego (RTC), to ich użycie bywa czasem o wiele trudniejsze niż się wydaje oraz może prowadzić do nieoczekiwanych błędów. Problem polega na tym, że czas do którego jesteśmy przyzwyczajeni, bywa "niemonotoniczny", czyli mogą się pojawiać pewne luki, albo wręcz cofnięcia. Zmiana czasu z letniego na zimowy i odwrotnie jest dobrym przykładem, ale każda korekta czyli wywołanie HAL_RTC_SetTime może powodować problemy. Wyobraźmy sobie, że zapisujemy w dzienniku (logu), polecenia wykonywane przez urządzenie. Taki log bywa bardzo istotny jeśli zdarzy się awaria i trzeba ustalić co było jej przyczyną. Ale jeśli możliwe są zmiany czasu, taki log będzie trudny do odczytania - to samo opisywał w tym wątku @Treker. Wyglądało jakby kolega @Nore21 rozwiązał quiz przed jego publikacją. Dlatego w niektórych projektach nigdy, albo nigdy poza pierwszym uruchomieniem urządzenia na etapie produkcji nie używa się funkcji ustawiającej RTC. Zamiast tego przechowywana jest różnica między wskazaniami sprzętowego RTC, a tym co jest prezentowane użytkownikowi. Takie rozwiązanie jest trudniejsze programowo i na pewno wykracza poza zakres naszego kursu, warto jednak pamiętać, że czas "rzeczywisty" bywa kapryśny.

  • Lubię! 1
Link to post
Share on other sites

@Elvis a jak to jest maksymalnymi częstotliwościami działania mikrokontrolera? Czy w przypadku tego typu układów też można je podkręcać powyżej parametrów podawanych przez producenta? Są do tego jakieś mechanizmy? Nie mam zamiaru tego robić, ale pytam tylko z czystej ciekawości, bo zmiana częstotliwości taktowania od razu kojarzy się (pewnie nie tylko mi) z podkręcaniem procesorów w PC. Pytanie potraktuj ogólnie, niekoniecznie w kontekście opisywanych tu STM32L4 ;)

  • Lubię! 1
Link to post
Share on other sites

@Nore21 W przypadku mikrokontrolerów prawie zawsze można "podkręcać" ich częstotliwość. Tutaj mamy właściwie wszystko pod kontrolą, więc jeśli ustawimy wyższe częstotliwości niż podaje producent to będziemy takie mieli. Nie próbowałem tego robić w CubeMX i możliwe, że to narzędzie nam nie pozwoli, ale już w wygenerowanym kodzie możemy spokojnie pozmieniać liczby... Tylko że lepiej tego nie robić. Niektórzy oczywiście są zwolennikami "podkręcania" wszystkiego co wpadnie im w ręce, podobno są nawet poradniki w internecie, gdzie układy są taktowane wyższą częstotliwością niż należy. Taki układ prawie na pewno będzie działał - przyznam, że widziałem układy pracujące nawet z 2x wyższą częstotliwością niż zalecana przez producenta. Problem jest natomiast stabilność takiego rozwiązania. To że jedna sztuka działa u nas na biurku nie znaczy, że ta sama sztuka będzie działała przy siarczystym mrozie, albo podczas skrajnych upałów. Jeszcze gorzej będzie, jeśli takie "podkręcone" rozwiązanie zaczniemy produkować seryjnie. Wówczas może się okazać, że spory procent urządzeń nie działa nawet w temperaturze pokojowej. Producent podaje maksymalną częstotliwość taktowania jako wartość, dla której (prawie) wszystkie sztuki będą pracowały poprawnie w pełny zakresie od -40 do +85 stopni C. Jeśli potrzebujemy więcej mocy obliczeniowej, lepiej po prostu wybrać inny model.

  • Lubię! 2
Link to post
Share on other sites

@Elvis super, bardzo dziękuję!

Czyli jak rozumiem teoretycznie można by było pójść też w drugą stronę i próbować taktować układ z ekstremalnie niskiej częstotliwości?

1 godzinę temu, Elvis napisał:

Dlatego układy przeznaczone np. do zastosowań związanych z płatnościami za pomocą kart, mają specjalne układy monitorujące częstotliwość pracy i kasujące klucze kryptograficzne po wykryciu jakichkolwiek zakłóceń.

Wow, jestem pod wrażeniem tego rozwiązania... oraz Twojej wiedzy. Super, że można uczyć się od takiej osoby 🙂

  • Lubię! 1
Link to post
Share on other sites

@Nore21 Jak najbardziej, częstotliwość taktowania powinno się dobierać do konkretnych potrzeb. Trochę więcej będzie o tym w kolejnej części, gdzie pokażemy jaki wpływ ma taktowanie na pobór energii.

  • Lubię! 1
Link to post
Share on other sites

@Elvis mam takie laickie pytanie co do tego fragmentu kursu:

Cytat

Pierwszy kod korzystający z zegara RTC może wyglądać tak jak poniżej (jest to zawartość pętli while). Tworzymy dwie zmienne, zapisujemy do nich aktualną datę i czas [...]

czy umieszcznie RTC_TimeTypeDef time; i RTC_DateTypeDef date; nie sprawi ze zmienne te beda tworzone na nowo za kazdym razem jak petla zacznie sie od nowa? co wtedy z poprzednimi wersjami? nie doprowadzi to problemow z pamiecia?

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!

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.