Vom Prinzip her schon.Zitat:
Zitat von Frank5
Versuchs mal wie folgt:
Formel: Vref*ADC*100/1024
und das Komma pauschal im Display einblenden (2 Nachkommastellen)
MfG, Hanni.
Druckbare Version
Vom Prinzip her schon.Zitat:
Zitat von Frank5
Versuchs mal wie folgt:
Formel: Vref*ADC*100/1024
und das Komma pauschal im Display einblenden (2 Nachkommastellen)
MfG, Hanni.
Dann probier mal FUSINGZitat:
Ich gebe in Programmers Notepad Format ein und F1 drücken aber nichts geht???
Welche Version hast du denn?
Ansonsten die Hilfe direkt aufrufen und nach den Befehlen suchen.
Kann sein, das ich mich jetzt verrechnet habe, aber wenn das Komma "per Hand" eingeblendet wird, dann ist nur noch eine Nachkommestelle da.
Und wenn die Ausgabe formatiert wird, hat es den Vorteil, das es immer eine bestimmte Anzahl von Zeichen sind.
Am Beispiel des ADCs-Werts.
Die erste Messung war 567.
Das wird auf dem Display angezeigt.
Die nächste Messung ist 12.
Auf dem Display steht jetzt aber 127.
Wen die Ausgabe formatiert ist spart man sich Zeit, weil das komplette Display oder die betreffenden Stellen nicht erst gelöscht werden müssen.
PS: Ich sehe grade, das es sich um C handelt. Sorry, ich war irgendwie bei BASCOM: Schon alleine durch die Beispielcodes. Wie es da geht weiss ich nicht. Aber da gibt es sicherlich auch passende Befehle.
Hallo
Ich habe das jetzt so gelöst
result = 5*ADC/1024;
result1= result+ADCH;
//_delay_ms(500);
LCD_Print(0,0,"WERT: %i,%i",result,result1);
_delay_ms(500);
Allerdings zeigt er mir wenn ich den ADC auf REF (5V) lege nur 4,7Volt an???
Rundungsfehler des Compilers?
PS: 5*ADC/1025 = ADC/204,8
Ich weiss ja nicht was der Compiler drauß macht, aber evtl wird der Code so kleiner und schneller? Aber evtl auch nicht wegen Kommazahlen?!
PSS: Du kannst ja mal probieren, was bei der Rechnung: 4,7*ADC/1024 passiert?
Oder allgemein mal die Spannung am ADC messen. Was für Widerstände hast du genommen?
Ich habe es mit einem 4,7 Kohm und einem LDR als Spannungsteiler geschaltet. Vref hat exact 4,93 Volt. Das komische ist wenn ich 4,7oder z.B.4,4 eingebe, ändert sich das Ergebnis nicht erst wenn ich unter 4 gehe ändert sich was. Als würde er die Kommazahl ignorieren???
Zitat:
Als würde er die Kommazahl ignorieren???
Das meinte ich ja. Müssen in C die Variablen auch definiert werden? Dann musst du mal schauen welche Komma verarbeiten.Zitat:
Aber evtl auch nicht wegen Kommazahlen?!
float variablen
...
float a;
...
bis zu einer stelle hinterm komma
mfG
Atreyu
Habe gier grade was gefunden, was dir helfen könnte ;)
http://www.mikrocontroller.net/forum...20.html#250558