c: MISRA2012
Jan Waclawek
konfera na efton.sk
Pátek Březen 26 14:45:51 CET 2021
[preposielam]
Dobry den,
>>>
const uint8_t tmpA = (uint8_t) 20.1F * 10.0F;
Nema to byt nahodou takto:
const uint8_t tmpA = (uint8_t) (20.1F * 10.0F); ?
Ja zatvorkujem a pisem konverzie priamo pri kazdom oprande a nemam s
tym ziadny problem a hlavne hned vidim, ze s akym typom pracujem. Je
to sice narocne na pisanie, ale zase hned clovek vidi... A hlavne teda
pri xc8 je to ziaduce.
>>>
Co se týče tohohle problému, jde o to , že mám knihovnu, kde se
vypočítávají hodnoty do registrů určující rychlost sériového portu (a
jinde i spoustu dalších konatatnt). Ta je závislá na taktu procesoru a
pár dalších nastavení. Vypočte se to při překladu a je to. A aby se to
počítalo při inicializaci procesoru v jádře je přeci totálně mimo.
Na netu jsem zatím taky nic nenašel.
Napiste si to ako symbolicke konstanty cez #define a mate pokoj. Raz
sa to nastavi a potom uz len pouzivate. Iba ze by ste chcel nieco
nastavovat v programe pri nejakej kalibracii, ale potom musite pocitat
v procesore tak ci tak. Aspon ja tomu takto rozumiem. Opravte ma
prosim, ak som mimo.
A.
Další informace o konferenci Hw-list