mereni frekvence s stm32

Jan Waclawek konfera na efton.sk
Čtvrtek Prosinec 5 22:55:46 CET 2019


>> ale priamym zapisom: TIM8->SR = ~TIM_SR_CC1IF;
> 
> s timto v preruseni to funguje dobre - pocet overflow se lisi o jednotku... musim promyslet co se tam delo predtim...

Tak to som rad, v podstate som nad tym prilis nerozmyslal, len som na Vas
hodil standardnu radu :-)

To RMW (t.j. &=) je zradne takto: nastane prerusenie od capture tesne pred
pretecenim, procesor nacita obsah SR registra, v ktorom je nastaveny bit
pre capture ale este nie bit pre update (=pretecenie), potom procesor
urobi & s maskou, cim vynuluje ten bit pre capture; no a ak v tom okamihu
nastane to pretecenie a hardware nastavi bit v registri pre update, tak
zapisom spat toho upraveneho obsahu ho okamzite vynulujete, a uz potom nie
je dovod na prerusenie, t.j. "stratite" jedno update prerusenie.

Pozrite si ten SR v RM - nie nahodou su jeho bity takeho typu, ze sa nuluju
zapisom nuly ale zapis jednicky nic nespravi.

---

Ten firmware je len ciastocne Vasa vina - ak by ST prestalo s saskovanim s
kniznicami a kuboidmi a venovali by zlomok tej energie, casu a penazi co
do toho vrazaju na slusnu dokumentaciu, appnoty a najma slusne priklady -
samozrejme bohato a zrozumitelne okomentovane (ano, Snippets, len by ich
bolo treba dotiahnut a rozsirit (VP a Edison a ostatni z ST.cz, ano viem
ako to bolo zadrhnute)) - a k tomu aku-taku verejnu podporu, tak by ste to
jednoducho z prikladu copypastli, trocha prefackali, a bolo by to dobre na
prvu ranu, a este by ste tomu aj rozumeli. Ked ich prevalcuju cinania, tak
potom bude uz pre nich neskoro. 

wek



Další informace o konferenci Hw-list