Re: STM32F427 nefukèní HAL_Delay()
Jan Waclawek
konfera na efton.sk
Neděle Duben 7 15:55:00 CEST 2024
Nemali by ste nekriticky verit vsetkemu, co najdete na webe.
Ten #define USER_VECT_TAB_ADDRESS nerobi nic ine nez sposobi nastavenie
registra SCB_VTOR. U 'F4 pre normalny beh normalnej aplikacie, ktora je na
zaciatku FLASH, to urcite nie je potrebne ('L4 je uplne ina vec; navyse
nie je 'L4 ako 'L4). Je v tom nieco ine - ako to tam aj niekto z ST pisal,
napriklad pouzitie bootloadera.
Pouzivate bootloader (ci uz systemovy alebo svoj)? Ak nie, mate spravne
zapojeny pin BOOT0?
> Je tam pravděpodobně i další chyba, používám HSI, ale pro SysTick si to
> nastaví jako zdroj hodin HSE 0x01 bity CLKSOURCE
SysTick ma zdroj hodin bud identicky so systemovymi hodinami, alebo to iste
deleno 8 (to je uloha toho SysTick_CTRL.CLKSOURCE). V SysTicku neexistuje
moznost si vybrat *zdroj* systemovych hodin (t.j. HSI/HSE/PLL), to sa deje
este predtym v RCC_CFGR.SW, vid diagram hodin v kapitole RCC v RM0090.
wek
----- Original Message ---------------
Zdravím,
tak po dlouhém zkoumání i googlení jsem zjistil, že se jedná o chybu,
která je známá už 2 roky viz:
https://github.com/STMicroelectronics/STM32CubeF4/issues/113
stačilo v *system_stm32f4xx.c* odkomentovat *#define
USER_VECT_TAB_ADDRESS *potom vše běží jak má... podle popisu se to týká
všech L4 i F4 procesorů ikdyž mě to na F446 v nucleu běželo...
Je tam pravděpodobně i další chyba, používám HSI, ale pro SysTick si to
nastaví jako zdroj hodin HSE 0x01 bity CLKSOURCE, ale krystal mám osazen
a asi běží, zatím jsem to více nezkoumal...
Asi pro příště udělám u ST několik černých puntíků, pokud za 2 roky
nedokázali opravit takto zásadní chybu, tak to o něčem vypovídá...
Jen pro zajímavost jsem si chtěl včera nainstalovat
https://www.st.com/en/development-tools/st-link-server.html, bohužel ani
jedna z verzí se mi celkem na 3 PC nenainstalovala, jen si to řeklo o
admin práva a potom nic. Takže vzdálený debug nevyzkouším, jedině to
zkusit rozjet na Raspberry a Linuxu, když Win verze nejde ani
nainstalovat...
Tak děkuji všem za rady.
Libor
Dne 05.04.2024 v 16:36 Josef Kopal napsal(a):
> Zdravím,
>
> je nadefinovany systimer v projektu ?
>
> Pepa
>
> On Fri, Apr 5, 2024, 16:25 Libor <xlibor na tiscali.cz> wrote:
>
> *.c
> C++ nepoužívám.
> Libor
> Dne 05.04.2024 v 15:21 Kaliciak, Richard napsal(a):
> > Dobry den,
> >
> > a zdrojovy kod ma priponu *.c alebo *.cpp?
> > V pripade CPP to volanie treba zabalit do
> >
> > extern "C" void SysTick_Handler()
> > {
> > RkSysTick::tick();
> > }
> >
> >
> > Richard Kaliciak
> >
> > Am 05.04.2024 um 15:03 schrieb Jan Waclawek:
> > ...
> >>
> >>> SystinckHandler() a v něm se volá HAL_IncTick(), jak píšete v
> dalším
> >>> mailu.
> >>
> >> Ak sa ta funkcia naozaj vola SystinckHandler() tak to je problem.
> >> Musi sa
> >> volat presne tak, ako je uvedena v startup kode, s najvacsou
> >> pravdepodobnostou
> >> void SysTick_Handler(void)
> >>
> >>
> >>
> >> wek
> >>
Další informace o konferenci Hw-list