Forum: Mikrocontroller und Digitale Elektronik AD-Wandler: Hex in Dezimal


von Tobias Vaupel (Gast)


Lesenswert?

Hallo,

ich habe einen 8 Kanal AD Wandler an meinen 8051 angeschlossen.
Dieser gibt mir die Daten seriell aus.
Ich speicher die Daten in einer Variable.
Aber der Wert steht da ja in HEX drin.
Kann mir jemand sagen wie ich den Wert in mV, also Dezimal, angebe?
Gibt es da ne Funktion oder so?

Als Ref. sind 5V da. Also müsste ich in 20mV Schritten messen können 
oder?

Wäre für jede Hilfe dankbar :)

Tobias

von Rolf Freitag (Gast)


Lesenswert?

Einfach hex in dezimal umrechnen; wo ist das Problem?
Welcher AD-Wert welche Spannung bedeutet hängt vom Modus des AD-Wandlers 
aber, aber das steht im Datenblatt.

von Tobias Vaupel (Gast)


Lesenswert?

Also, bis jetzt hab ich das so gelöst:

   x1 = wandel(0);
   x2 = x1 * 50 / 255;
   x4 = x2 * 100;

in x4 steht der Wert dann in mV. Das Problem ist aber, dass die 
Auflösung 100mV beträgt. Aber ich möchte eine Auflösung von 20mV haben.

Wo ist da der Fehler?

von Oliver K. (Gast)


Lesenswert?

Lineares Gleichungssystem: y = a*x+b

5000 mV = a*maxWandel +b
0 mV = a*0 +b | ==> b=0

a = 5000mV/maxWandel

----------------
x4 = 5000V/maxWandel * wandel(0)

In x4 steht der gemessene Wert in Millivolt

Grüße
Oliver

von Tobias Vaupel (Gast)


Lesenswert?

Hm, danke :)

maxWandel in V oder in mV? :)

Nachtrag:
Hab beides ausprobiert, aber irgendwie kommt da nicht das raus was ich 
möchte :(

von Tobias Vaupel (Gast)


Lesenswert?

Schon gut. Maxwandel = 8Bit :)

Also 255.

Jetzt funktioniert es...super :)

DANKE!

Tobias

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.