Re: Programování STM32

Turbyho turbyho na gmail.com
Neděle Září 29 16:28:47 CEST 2019


Hlavne bych si rozchodli debuging treba jen pres gdb jelikoz je asi tisic duvodu proc to muze uz pri startu koncit na vyjjimku a to se s ledkou ci uartem dost blbe hleda.

Zaklad je zacit od fundamentu, jak uz tu padlo. Tedy kdyz uz cube, tak naklikat jen uplne zakladni interni hodiny a jeden pin a s tim zacit. Pozapinat vsechno mozne hned na zacatek je cesta do pekel. Uz jen ty hodiny jsou dost slozite a nemusi treba spravne startovat nejaky krystal a problem je na svete.

Kdyz to pobezi na interni hodiny, mohu zkusit zapnout externi a tak postupne pokracovat az rozchodim vsechny periferie. Nezaponenout take, ze nektere periferie startuji dele a nekdy je vhodne testovat a cekat nez nabehnou nez s nimi zacnu manipulovat. Viz treba rtc s externim krystalem kdy to muze nekdy trvat pomerne dlouho.

Traceswo funguje dobre i s openocd, jen je to uz trchu vyssi divci to poprve rozchodit :)

T

29. 9. 2019 v 15:59, Jan Waclawek <konfera na efton.sk>:

> Zakladny blinky zacnite s tym, ze pouzijete defaultne HSI hodiny ako
> systemove - t.j. ziadne HSE a ziadne PLL; nepouzijete ziadne prerusenie
> ani ziadnu funkciu typu HAL_Delay(). Napisete si vlastny loopdelay a
> blikate. Alebo bez delaya, ak mate osciloskop/LA na prislusnom pine.
> 
> Este lepsie je mat program co nerobi vobec nic (prazdna slucka v main()), a
> rovno v debuggeri si skusite manipulaciu s GPIO registrami podla RM. V
> principe treba zapnut hodiny prislusnemu GPIO v RCC; potom nastavit v
> registri GPIO_MODER mod GPIO Out (toto je v 'F1 ine ako inde a ja to
> neovladam a ani nechcem ovladat, ale nie je to nic co sa neda zvladnut po
> precitani si prislusnej kapitoly a popisu registra), no a potom sa uz len
> hra s registrom GPIO_ODR a sleduje blikanie. Dalsi krok je hrat sa s
> registrom GPIO_BSRR; no a potom si na to napisete program co to bude robit
> za Vas. 
> 
> Toto je podla mna najlepsi sposob ako zacat s mcu v dnesnej dobe. A to su
> zhodou okolnosti aj prve kroky k tomu aby ste neboli zavisly na klikatore
> a na nejakych "knizniciach". Ale na toto pochopitelne ma kazdy iny nazor.
> 
>> Ještì jsem se chtìl zeptat, jestli správnì chápu, tak ty programovací piny (SWD) SWDIO/SLCKL lze využívat nìjak jako debug uart?
>> Mohu do nìj z programu pøímo nìco posílat? V SYS jsem nastavil Debug: seriál wire. Spíše mi jde o to, jak do nìj nìco poslat z programu pokud to vùbec jde.
> 
> Ako pan kolega Buchta poznamenal, nie, je to treti pin, vola sa SWO.
> Neprezradili ste nam, ktory STM32 tentokrat pouzivate, ale ak je to stale
> ten STM32F103CBT6 co ste spominali v inych postoch, tak je to pin PB3
> (TRACESWO). Jeho pouzitie nie je prilis dobre popisane v RM, pretoze je to
> komponenta z procesora ktora je popisana v ARM dokumentoch (a tie su
> priserne). Nakoniec to nie je ziadny zazrak, ale ako pan kolega pise,
> pouzit UART je priamociarejsie, ak ste uz kamarat s periferiami STM32. V
> klikacich prostrediach niekedy byva predzuty tzv. semihosting, v ramci
> ktoreho je potom zaveseny alebo zavesitelny printf() na ten SWO; ale
> klikacie prostredia nie su moja parketa.
> 
> wek
> 
> 
> 
> ----- Original Message ---------------
> 
> Subject: RE: Programování STM32
>   From: <cizek.milan na seznam.cz>
>   Date: Sun, 29 Sep 2019 14:31:42 +0200
>     To: "'HW-news'" <hw-list na list.hw.cz>
> 
> Ahoj,
> 
> tak mam první program (vygenerováno z MX) + doplnìné knihovny a nìco málo
> dopsáno.
> Po nahrání pøes STLINK do STM32 mi to ale nedìlá vùbec nic, ani GPIO
> nereagují na on/off.
> HW je v poøádku, nìjaká základní vìc nám s ArdunoIDE fungovala, ale po
> pøechodu na CubeIDE zatím ne.
> Jsou tam oba ext. krystaly...v tom MX mam u RCC HSE+LSE "crystal/ceramic
> resonator", což by mìlo být ok.
> Spíš jestli v tom procesu programování nìkde nedìláme chybu, po nahrání
> zùstane STLINK blikat...
> Ale ani po odpojení a restartu procesoru nic. Breakpointy v projektu žádné
> nejsou.
> https://snipboard.io/nZREfW.jpg
> 
> Ještì jsem se chtìl zeptat, jestli správnì chápu, tak ty programovací piny
> (SWD) SWDIO/SLCKL lze využívat nìjak jako debug uart?
> Mohu do nìj z programu pøímo nìco posílat? V SYS jsem nastavil Debug:
> seriál wire. Spíše mi jde o to, jak do nìj nìco poslat z programu pokud to
> vùbec jde.
> Nikde ve vygenerovaném kódu nevidím nìco, pøes co bych na to mohl šahat
> (možná pøehlížím).
> 
> Mám dojem, ež až rozchodíme alespoò tu blikající ledku, tak už to pùjde
> lépe, ale zatím to drhne. :-)
> Jinak pull-up/down nikde nepoužívám, ale nezapínají je nikde v tutoriálech,
> tak tím by to také být nemìlo.
> 
> M.
> 
> 
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list