Hallo Leute, ich hab mich jetzt noch ein wenig mehr mit einer AD Wandlung beschäftigt. Ich fass das mal zusammen. AVR 4433 Prozessor. Ich lege an VREF 5V und an GND an. Damit bei 10bit Wandler -> 1024 Stufen -> 1 Stufe= 4,88mV Jetzt will ich das ganze an einem LCD ausgeben. Hierzu muss ich doch die beiden Register auslesen und die Anzahl(Stufen)mit 4,88mV multiplizieren und am LCD ausgeben. Ist das alles soweit richtig ? Meine Frage: Wie kann ich das gescheit multiplizieren und muss ich diese 4,88mV irgendwo schon speichern damit da immer nachgeschaut werden kann. Und wie zeigt man das dezimal am LCD an? Ich bin noch relativ neu in der Materie also sorry for that. Vielen Dank Grüße Gerd
Wenn Du eine Hochsprache nimmst (z.B. Basic oder C), dann gibts dort idR auch Fließkommazahlen (z.B. float) und Du kannst das ganz normal ausrechnen. Da gibts dann auch fertige Funktionen für die Ausgabe auf dem Display (z.B. sprintf in C).
Man kann aber auch - wenn es schneller sein soll und in Assembler programmiert - mit Ganzzahlen arbeiten, also mit 488, und den Dezimalpunkt selbst berücksichtigen - oder im WWW stöbern, da gibts FloatingPointLibraries für den AVR lg, Mario
Ich wollte das ganze schon in Assembler programmieren. @Mario Wie meinst du denn das mit selbst berücksichtigen? Da muss man dann zwei stellen von rechts selbst das komma einfügen? Grüße Gerd
Achja noch eine kleine Frage. Ist dann auch die 5V die kleinste zu messende spannung. Und wie müsste der AVR dann abgesichert werden gegen einen zu hohen Strom? Grüße Gerd
@Gerd: Warum willst Du in Assembler programmieren? Du hast 4KB Flash zur Verfügung, ist bei Dir der Speicher wirklich so knapp? Oder willst Du was dabei lernen? bye Markus
Ich wollte schon was lernen bei der ganzen Sache. In der Schule programmieren wir auch in Assembler und so schlecht find ich es eigentlich auch net. Grüße Gerd
HI Gerd Damit auch etwas als Messwert gilt sollte die Aref dann schon einigermaßen gut sein. ( ein LM 78XX tuts da nicht ) Ne Spannungsreferenz sollte da nicht fehlen. Es gib auch welche die auf so komische Spannungen wie 2,56 - 2,048V oder 1,024 V abgeglichen sind ( Na klingelt da was ??) Mit ner 2,56 V ref braucht man nur noch mal 4 nehmen und hat die Spannung in mV Komma setzen fertig. Da kann man ohne flieskomma arbeiten- kommt einem mit Assembler schon entgegen und hält den code knapp. Phagsae
Hi, die maximale Spannung die du ueber den AD Wandler messen kannst ist so gross wie Vref. Also Vref = 2,56 V dann darf die Spannungen die an dem AD Wandler liegen nicht 2.56 V ueberschreiten. Achja die Vref erzeugste am besten mit deiner von 5 Volt dazwischen ein LM136 (2,56V). Das ist eine Referenzspannungs Z-Diode mit Adjust Gate. Die Spannung ist ideal zum berechnen. Moechtest du ueber deiner Vref Spannungen mit deinem ADC messen, dann musste entweder ein Spannunngsteiler aus zwei Widerstaendungen errechnen. Einfache Verhaeltnisrechnung. Moechetst du es ein bischen besser machen nimmste dir ein OP und machst daraus ein Subtraierer. Wie im Datasheet angegeben sollte die Avcc Spg ueber ein Tiefpass aus L und C gewonnen werden. L = 100 uH und C = 100 nF. Das war so mal die Hardware Seite. Software kann ich dir leider nicht viel weiter helfen. Ich programmiere mit Basic. Mfg Torben
@Gerd: Ja, 2Stellen von rechts. Das ist so, als würdest du alles in Cent rechnen und dann ganz zum Schluß selbst in Euro umwandeln. Vorsicht (Mathematik Grundlagen) : 1.22 * 4.88 ergeben aber 4 Dezimalstellen. @Alle: Hab ich da was Mißverstanden? Dachte, der AVR hat eine Referenzspannungsquelle eingebaut?! PS: Referenzquellen: Bin da selbst hineingefallen weil ich zu wenig gedacht habe:) Z.B Conrad bietet im Katalog den ICL8039 mit *- 0.1% an. Nicht, daß da wer glaubt, die Spannung sein auf 0.1% genau, weil ein paar Zeilen weiter unten im Katalog eine andere Referenzquelle mit +-30ppm angeboten wird. Ich dachte, eine Quelle ist sehr genau, und die andere hat eine geringe Temperaturdrift. Falsch: beide Angaben beziehen sich auf die Temperaturdrift. der ICL8039 z.B. liefert 1.2 bis 1.3 Volt (etwa), im Mittel 1.23. Also Vorsicht, macht nicht den gleichen Fehler wie ich!! lg, Mario
Also erstmal vielen Dank an alle. Ich muss mir das alles erst einmal durch den Kopf gehen lassen,aber bei so schönem Wetter ist das garnicht so einfach ;) Also nochmal DANKE an alle Grüße Gerd
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.