Pretypovani s posunem v Mikroe

RV vicek.radek@cpost.cz
Pátek Září 25 13:15:15 CEST 2009


Zdravim,

narazil jsem na takovou blbost a nejak nevim jak si overit kde je 
problem. Pisu sem abych ze sebe nedelal mezinarodniho blbce na foru 
Mikroe. ;-)

Uz nekolikrat jsem pouzil nasledujici vec kdy ponizim rozliseni AD z 10b 
na 8b:

var pot: word;
pot:=word( Adc_Read(0) shr 2);

s tim ze z AD dostanu 10b zarovnany doprava a v pot mi zustane 8 hotnich 
bitu.

Ted jsem chtel udelat toto:

var pot: byte;
pot:=byte( Adc_Read(0) shr 2);

s tim, ze vysledek by mel byt tentyz jen vysledna promena je typu byte.

Jenze jak jsem zjistil tak v pot mam dolnich 8 bitu a nechapu proc. Kdyz 
si to odladim v debugeru a vlozim misto hodnoty AD konstantu tak to 
probehne tak jako v prvnim pripade.
Vubec me nenapada v cem je problem a zjistil jsme to az u kamarada, 
kteremu jsem delal ten GM udelator kdyz mi volal, ze ma to nastaveni 
urovne na draze potenciometru 3x kolem dokola.

-- 
Radek Vicek





Další informace o konferenci Hw-list