-
Data: 2022-07-26 10:09:47
Temat: Re: STM32 i HAL -- pierwsze podejście, pierwsze pytania
Od: "Grzegorz Niemirowski" <g...@g...net> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Arnold Ziffel <a...@h...invalid> napisał(a):
> Hmm, nie mam nic takiego.
> https://ibb.co/MBsK0f7
To może być kwestia ustawień opcji generowania kodu. Zobacz sobie folder
rezpozytorium Cube:
C:\Users\Arnold\STM32Cube\Repository\STM32Cube_FW_F4
_V1.27.0\Drivers\STM32F4xx_HAL_Driver\Src
Miganie LED-em low level:
http://grzegorz.net/stm32/src/LED_blink_LL.txt
> A można mieszać jedno z drugim, czy HAL trzyma jakiś swój stan, który się
> rozjedzie, gdy zacznę mu pisać po rejestrach?
HAL prawie nic nie trzyma z wyjątkiem zmiennej uwTick od liczenia ticków 1
ms oraz aktualnego taktowania rdzenia w zmiennej SystemCoreClock. Do tego w
strukturach peryferiów trzyma sobie np. lock. Ogólnie można mieszać. Ja np.
w aktualnym projekcie używam HAL-a ale jak chciałem ustawić wartość PWM, to
napisałem zwyczajnie:
TIM1->CCR4 = value;
zamiast:
__HAL_TIM_SET_COMPARE(&tim1, TIM_CHANNEL_4, value);
> Hmm, chyba mentalnie umieściłem HAL wyżej, niż faktycznie jest.
> Ja zwykle piszę sobie różne pomocnicze funkcje i np. moja funkcja "set
> LED" ma zapalić diodę, a jak ta dioda jest podłączona i jaki stan trzeba
> wystawić, to jest już zmartwienie tej funkcji. HAL widziałem mniej więcej
> na tym poziomie.
Tutaj nie ma czegoś takiego. HAL ma po prostu ukrywać rejestry i dawać
przenośność kodu. Dla mnie główna wartość leży w gotowych sterownikach
peryferiów, np. jest gotowa funkcja HAL_I2C_Mem_Read().
> I za każdym razem po przegenerowaniu kodu odpalasz astyle lub coś takiego?
Ja akurat używam Cube jako dodatkowe narzędzie. Wypluwa mi kod w innym
miejscu i przeklejam interesujące fragmenty do projektu.
> Hm, ciekawe. To co dokładnie dzieje się podczas wgrywania wsadu przez
> ST-Link? Peryferia działają, ale program się zatrzymuje i I/O (o ile nie
> jest sprzętowo kontrolowane np. przez timer z PWM) zatrzymuje się w takim
> stanie, w jakim było?
Tutaj mogło mi się pomylić. Sprawdziłem teraz na STM32CubeProgrammer i tam
kliknięcie Connect powoduje wyłączenie PWM niezależnie od wyboru jednego z
trzech trybów resetu. Natomiast jeśli w Eclipse zatrzymam program, to PWM
działa dalej.
--
Grzegorz Niemirowski
https://www.grzegorz.net/
Następne wpisy z tego wątku
- 26.07.22 11:48 jacek pozniak
- 26.07.22 12:01 MKi
- 26.07.22 12:03 MKi
- 26.07.22 13:48 stary grzyb
- 26.07.22 17:13 Arnold Ziffel
Najnowsze wątki z tej grupy
- Niby uziom ale nie
- Położyłem dwa telefony obok siebie
- Przekaźnik na szynę DIN (?)
- Taśma LED
- Jak odróżnić myjki wibrujące od ultradźwiękowych.
- Ledy na wyłączniku czasowym błyskają
- Re: Kompensacja mocy biernej przy 230VAC
- Re: Kompensacja mocy biernej przy 230VAC
- RCD wybija
- Re: Kompensacja mocy biernej przy 230VAC
- Łożysko ślizgowe - jaki olej
- Re: Kompensacja mocy biernej przy 230VAC
- Re: Kompensacja mocy biernej przy 230VAC
- Współczesny falomierz
- Zasilacz 7V na szynę DIN
Najnowsze wątki
- 2025-04-10 Niby uziom ale nie
- 2025-04-10 Samsung A12 - po co 4 obiektywy ?
- 2025-04-10 Pendrive - czy to rzeczywiście Sony ?
- 2025-04-10 Warszawa => Junior Digital Project Manager <=
- 2025-04-10 Warszawa => Junior Digital Project Manager <=
- 2025-04-09 [przegląd prasy] - raport mniejszosci
- 2025-04-09 [przegląd prasy] - wypadek autobusu w Warszwie - wyrok (prawomocny)
- 2025-04-09 [przegląd prasy] - przejścia na drogach rowerowych
- 2025-04-09 Czy blokowanie sali obrad Sejmu przez PO-opozycje pod rządami PiS już się przedawniło? [mecenas Giertych dołki kopie?]
- 2025-04-09 Koniec produkcji Leapmotor T03
- 2025-04-09 Pruszków => Specjalista ds. public relations <=
- 2025-04-09 Rzeszów => International Freight Forwarder <=
- 2025-04-09 Ryga => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i Kad
- 2025-04-09 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-04-09 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f