Forum: Mikrocontroller und Digitale Elektronik ADC Zweierkomplement Mittelwertbildung


von Thomas (Gast)


Lesenswert?

Ich habe einen 16Bit ADC, der das Ergebnis im Zweierkomplementformat an 
einen AVR liefert. Nun möchte ich ein paar Werte mitteln, 
Plausibilitätsüberprüfungen durchführen und das Ergebnis dann an den PC 
schicken. Wie mache ich nun die Mittelwertbildung im Zweierkomplement? 
Muss ich dazu zuerst in Binärdarstellung umrechnen?

von Purzel H. (hacky)


Lesenswert?

Was ist denn der Unterschied zwischen Binaer und Zweierkomplement ? Was 
ist der Unterschied zwischen Integer und Word ?

von Julian B. (julinho)


Lesenswert?

Negative Zahlen werden im Controller eh als zweier-kompl. dargestellt, 
wenn du deinem Compiler den richtigen Datentyp angibts, dann kommt da 
auch was vernünftiges bei raus.

von Thomas (Gast)


Lesenswert?

Wie gebe ich im gcc an das die Zahl im Zweierkomplement ist?
Mit binär meine ich und auch viele Datenblätter von ADCs die Darstellung 
mit Flagbit für negative Zahlen.

von Lehrmann M. (ubimbo)


Lesenswert?

Hex Oschi schrieb:
> Was ist denn der Unterschied zwischen Binaer und Zweierkomplement ?

ein riesiger:

http://de.wikipedia.org/wiki/Zweierkomplement
http://de.wikipedia.org/wiki/Dualsystem

Hex Oschi schrieb:
> Was
> ist der Unterschied zwischen Integer und Word ?

keiner

Thomas schrieb:
> Nun möchte ich ein paar Werte mitteln,
> Plausibilitätsüberprüfungen durchführen und das Ergebnis dann an den PC
> schicken.

Was für eine Programmiersprache?

Thomas schrieb:
> Muss ich dazu zuerst in Binärdarstellung umrechnen?

Müssen tust du garnichts - den AVR interessiert nicht welche Darstellung 
du gewählt hast. Stellt sich die Frage nach deinen 
Programmierkenntnissen ...

von user (Gast)


Lesenswert?

alle signed int datentypen (signed char, signed int, int8_t. int16_t 
usw) -> interne 2erkomplementdarstellung

von Julian B. (julinho)


Lesenswert?

Wenn du den Wert als int deklarierst (16bit mit Vorzeichen) dann sollte 
es klappen. Für den Mittelwert mußt du allerdings mindestens eine 32-bit 
variable nehmen, dabei mußt du aufpassen, daß du die Werte richtig 
"castest", damit dein Vorzeichen nicht verloren geht. Ansonsten einfach 
ausprobieren, dabei lernst du am meisten. Viel Erfolg!!!

von Purzel H. (hacky)


Lesenswert?

>>Hex Oschi schrieb:
>> Was
>> ist der Unterschied zwischen Integer und Word ?
>
>keiner

Natuerlich ist da Einer. Der Eine ist ohne Vorzeichen, der Andere ist 
Zweierkomplement.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.