AD Wandlung interrupt

Gast #2038669
Lesenswert?

Hi

>wie bestimme ich den wert = 0x03C0.
>Nach welche Kriterien bestimme ich diesn Wert.

$3C0 = 0b1111000000

Das bedeutet, das nur die oberen 4 Bit des Ergebnisses verwendet werden. 
Bei mehr Bits:

0b1111100000 = $3E0
0b1111110000 = $3F0
0b1111111000 = $3F8
0b1111111100 = $3FC
0b1111111110 = $3FE

MfG Spess
Gast #2038693
Lesenswert?

also was die zahl in hex und bin ist des ist mir klar.
Mir stellt sich die Frage warum ich 0x03C0 verwende
und dann noch nach links 6 mal verschiebe.
Das ist mein problem. Woher weis ich dass ich die 0x03C0
verwenden muss.

MfG

Hans
Gast #2038709
Lesenswert?

> Woher weis ich dass ich die 0x03C0 verwenden muss.

Müssen ist relativ und ohne Speck kann man nur raten. Ich vermute mal 
dass der (unbenannte) ADC eine Auflösung von 10 Bit hat und der 
Programmierer obigen Kunstwerks eine Auflösung von 4Bit will - im 
viertniedrigsten Nibbel der (undeklarierten) Zielvariable.

HTH
Gast #2038720
Lesenswert?

Hi

>Mir stellt sich die Frage warum ich 0x03C0 verwende

Die Frage solltest du beantworten können (wenn es dein Code ist).

>und dann noch nach links 6 mal verschiebe.
>Das ist mein problem. Woher weis ich dass ich die 0x03C0
>verwenden muss.

Das ADC-Ergebnis deines unbekannten Controllers ist offensichtlich 
12-Bittig.

Mit ADC & $3C0 bleiben nur die oberen 4 Bit übrig.

<< 6 schiebt die 4 Bit um 6 Stellen nach links. Damit wären sie die 
oberen 4 Stellen eines Bytes.

Wie ist cc23 deklariert?

MfG Spess

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren