zdravim ,
doted jsem delal na 8bitech, a nejak se stale nemuzu poprat s timhle armem , kde a jak se anstavuji IO brany, a jak se k nim zde pristupuje?
doted jsem vyuzival user_button ale hodili by se jeste aspon jedno ,
predem diky
Četl jsi datasheet ? Povolíš systémové hodiny pro každý 16bit I/O PORT který chceš použít, pak zkonfiguruješ jednotlivé bity toho portu - jestli je push_pull, rychlost, jestli bude připojen na periferii nebo nornální, vstup nebo vystup.
Nevím jak moc je to ještě aktuální, ale stáhni si z ST program MIcroXplorer, který udělá vše za tebe - nejen nastavení GPIO, ale všech periferiií - stačí pár kliků na přislušný pin a program ti pak vyplivne soubor .c , který si jenom překopíruješ - lépe zrovna dáš uložit do svého projektu.
Snad bude tato rada užitečnější, než “nastuduj si datasheet”
Ale vůbec nebude od věci , nastavit si třeba jen jediný pin a podívat se pak co že je k tomu vlastně všechno potřeba udělat.
A ještě detail - tenhle generátor kódu (MicroExplorer) by měl větší smysl kdyby se neopíral o ST knihovnu (jako to mají SiLabs pro svoje x51) ale psal rovnou do registrů…
A jak budeš hledat chybu v cizí knihovně kde plníš nějaké struktůry a voláš nějaké konfigurační funkce a využíváš někdy i dost košatá makra ? - já Ti řeknu - úplně stejně blbě nebo húře jako když plníš rovnou patřičné registry. Aby ten člověk pochopil co ten konfigurák vlastně vyrobil a jak funguje ta která periférie je podle mě lepší minimalistickéj způsob konfigurace než nabubřelá a někdy i dost krypticky napsaná knihovna. Jen můj názor. Na to si každej musí přijít sám co mu vyhovuje.
Setkal jsem se taky na internetu s názory že ST knihovna jim nevyhověla jak po stránce rychlosti tak v množství generovaného kódu…