Skocz do zawartości

Kurs STM32L4 – #8 – liczniki sprzętowe (PWM, enkoder)


Pomocna odpowiedź

@pirx1988 Gratuluję spostrzegawczości! Faktycznie wygląda to na pomyłkę i VDD powinno być 5V zamiast 3.3V.

Nie mam teraz jak przetestować układu, ale bardzo możliwe że przy 3.3V całość będzie i tak działać. Napięcie Vf=3.5V jest mierzone dla prądu 25mA, który jest dość duży jak na współczesne diody. Przy 3.3V popłynie mniejszy prąd i możliwe że to wystarczy do poprawnego działania.

Jednak dobrane rezystory (1k, 330R) wskazują wyraźnie na napięcie 5V (i prądy na poziomie kilku mA), więc pewnie takie połączenie było używane podczas testowania układu, a w treści pojawił się błąd.

Bardzo dziękuję za uwagi i jeszcze raz gratuluję spostrzegawczości 🙂

  • Pomogłeś! 1
  • 3 miesiące później...

Nie rozumiem tego: "Jeśli zmniejszymy ją 100 razy, czyli ustawimy na 79, uzyskamy częstotliwość 100 Hz. Nie będziemy wówczas widzieli migania diod, zobaczymy natomiast, że świecą one z różną jasnością."

Jak dzielimy 80 MHz przez 8000, to uzyskujemy 10kHz, więc jak dzielimy przez 80 (tj prescaler z 7999 na 79), to uzyskujemy 1 MHz, czyż nie?

Z innej beki, czy w zamiast exp() nie byłoby poprawniej expf()? Ta druga działa na floatach. Ewentualnie możemy całość obliczyć na double w funkcji i zwrócić double z calc_pwm().

Dnia 17.01.2026 o 18:31, lpk napisał:

Jak dzielimy 80 MHz przez 8000, to uzyskujemy 10kHz, więc jak dzielimy przez 80 (tj prescaler z 7999 na 79), to uzyskujemy 1 MHz, czyż nie?

@lpk wydaje mi się, że w swoich kalkulacjach pominąłeś jeszcze podział przez ARR (9999+1)?

  • 1 miesiąc później...
Dnia 22.01.2026 o 20:29, Treker napisał:

@lpk wydaje mi się, że w swoich kalkulacjach pominąłeś jeszcze podział przez ARR (9999+1)?

Racja, to ma sens. Opis trochę mylący, bo pominął już ARR z wcześniejszego wzoru, stąd moje zakręcenie 🙂 

  • Lubię! 1

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