ARM STM32 - program v RAM

Jakub Ladman ladmanj na volny.cz
Čtvrtek Leden 5 21:02:36 CET 2012


Openocd s eclipse funguje, ale bohuzel kazda verze openocd ma jiny format 
konfiguraku takze kdyz najdete navod pro jinou verzi, nez mate, nerozchodite 
to.

Eclipse potrebuje plugin Zylin http://opensource.zylin.com/embeddedcdt.html

Procesory maji HW brakpointy, ale nekdy jich je malo (treba jen jeden).
Ja mel ale problem s tim, ze jsem to opeocd a cip nemel spravne nastaveny a ty 
HW nefungovaly, ovsem ve stejnem okamziku mi fungovaly SW breakpointy, ale 
jen v ram.

Jakub Ladman

Dne Čt 5. ledna 2012 20:30:39 Jaroslav Buchta napsal(a):
> Rozchodil jsem Eclipse +CDT+J-Link, da se to rozchodit i s OpenOCD?
> Nazory jsem na to cetl ruzne, navod zadny... OpenOCD jsem loni zbastlil
> a jako na prikazovem radku to i fungovalo (teda pod Windows) ale s
> ovladacema to byl hardcore.
> A novejsi procesory maji vesme skutecne HW podporu ladeni, HW
> breakpointy se zapisuji do nejakych registru, ne?
> 
> Dne 5.1.2012 20:24, Jakub Ladman napsal(a):
> > Pres JTAG, nebo SWD (Single Wire Debug - specialita ST) jde ladit v ram
> > stejne jako ve flash.
> > 
> > Za sebe mohu rict, ze jsem mel vetsi problemy s krokovanim ve flash, nez
> > v ram (ktera mi nestacila velikosti).
> > 
> > Nepouzivam zadne "integrovane" prostredi.
> > Na linuxu mam standardni Eclipse CDT, toolchain od code sourcery  openocd
> > a ftdi ft2232 na JTAG a ST-LINK vestaveny v kitu STM32VL na SWD. Vse
> > imho dostupne i pro wokna.
> > 
> > Pro to STM jsem jeste nic nenapsal, jen jsem si krokoval nejaky example
> > od kitu.
> > 
> > Drive jsem psal pro LPC2xxx.
> > Nejsem zadny velky programator a nastavit spravne linkerscript jsem
> > zvladl jen s pomoci kamarada (ld skript určuje na které adresy linker
> > dává které sekce a to je to co rozhoduje jestli bude program v ram nebo
> > flash).
> > Na tom LPC byl prave problem v tom, ze debugger neumel data nahrat do
> > flash, a muselo se nejdriv naflashovat jinym toolem. Potom zase neslo
> > pouzit softwarove breakpointy (logicky - jsou relizovany docasnym
> > prepisem programu) a hardwarove jsem neumel nastavit, ale nakonec jsem
> > to vsechno rozchodil.
> > 
> > Kdo chce mit vsechno nastavene od vyrobce, nemuze jako ja trvat na linuxu
> > a na tom ze to bude zadarmo.
> > 
> > Jakub Ladman
> > 
> > Dne St 4. ledna 2012 23:42:03 Petr Labaj napsal(a):
> >> Potreboval bych prejit na nejakou platformu 32-bit MCU,
> >> ale uz jsem si asi jednou nabil usta, proto se zkusim
> >> zeptat znalych.
> >> 
> >> Potrebuji nejake MCU s minimalne 6 UARTy, ktere by
> >> umelo pracovat tak, ze program bude v RAM a nikoli
> >> ve Flash. Ve Flash by se nachazely jen nemenne knihovni
> >> funkce, ale vykonny program by byl v RAM, pri kazdem
> >> startu zarizeni by se dotahl zvenci.
> >> A aby bylo mozne i ladeni provadet ciste v RAM.
> >> Je jasne, ze tomu behu v RAM teoreticky vyhovi jakekoli
> >> 32-bit MCU, ale jde i o podporu ve vyvojovych prostredcich,
> >> abych pak nemusel vsechno nejak slozite lamat.
> >> 
> >> Kvuli velkemu poctu UARTu jsem chtel pouzit PIC32.
> >> Vubec me nenapado zjistovat predem podporu prace
> >> ciste v RAM. Kdyz jsem si osadil pokusnou desku
> >> a chystal se zacit ladit "Hallo LED", tak koukam, ze nikde
> >> neumim nakonfigurovat rezim, aby cele ladeni probihalo
> >> v RAM. Tak jsem vznesl dotaz sem a take zaktivizoval
> >> strejdu Googla. Vysledkem bylo, ze jsem nasel spoustu
> >> dotazu jak provadet ladeni ciste v RAM, ale zadnou odpoved.
> >> 
> >> Sice verim, ze bych to po podrobnem prostudovani a nejakem
> >> laborovani asi nejak zlomil, ale moje nadseni pro PIC32
> >> a vyvojove nastroje Microchipu znacne ochablo.
> >> 
> >> Uz drive se mi libily ARMy (hlavne od ST), ale starsi rada
> >> STM32F1xxx mela malo UARTu. Ted jsou ale k dispozici
> >> za slusne penize i novejsi rady STM32F2xx a STMF4xx,
> >> a ty mi po predbeznem prostudovani docela ucarovaly.
> >> 
> >> Takze ten dotaz na znale techto platforem: je primo nejakym
> >> bezne dostupnym vyvojovym prostredim podporovano ladeni
> >> aplikace pouze v RAM ? Myslim tak, aby se prelozeny kod
> >> nasypal programatorem primo do RAM (tedy nikoli do Flash,
> >> odkud by se po resetu teprve do RAM presunul) ?
> >> A je nejaka bezproblemova podpora pro vytvoreni programu,
> >> ktery bude komplet v RAM a bude moct nejak elegantne
> >> vyuzivat knihovni funkce, ulozene ve Flash ?
> >> 
> >> Jenom jeste zopakuji, ze vim, ze teoreticky to samozrejme
> >> je mozne na kterekoli platforme se spolecnym pametovym
> >> prostorem. Ale jde mi o to, jestli to dane vyvojove prostredi
> >> samo podporuje, abych nemusel na vsechno delat
> >> assemblerovske vohejbaky.
> >> 
> >> Diky.
> >> Petr Labaj
> >> 
> >> _______________________________________________
> >> HW-list mailing list  -  sponsored by www.HW.cz
> >> Hw-list na list.hw.cz
> >> http://list.hw.cz/mailman/listinfo/hw-list
> > 
> > _______________________________________________
> > HW-list mailing list  -  sponsored by www.HW.cz
> > Hw-list na list.hw.cz
> > http://list.hw.cz/mailman/listinfo/hw-list
> 
> _______________________________________________
> 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