Was hält ihr von diesen Programm? Geht das überhupt?(is für Arduino)
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int Lesep = 0;
int Wert;
int Volt;
void setup() {
lcd.begin(16, 2);
}
void loop() {
lcd.print("LCD Voltmeter ");
lcd.print(" ");
delay(1000);
lcd.print("*****made by*****");
lcd.print("*Florian Daßler*");
delay(1000);
while(1)
{
lcd.clear();
Wert = analogRead(Lesep);
lcd.print("Spannung an Pin");
Volt = Wert/1024*5;
lcd.print(Volt);
lcd.print("Volt");
delay(100);
}
}
Fragen und verbesserungen hier hin:
Ich vermute es kommt immer 0 heraus. Wert/1024 ergibt bei Integer 0, auch wenn der Wert nachträglich mit 5 multipliziert wird.
> Ich vermute es kommt immer 0 heraus. > > > > Wert/1024 ergibt bei Integer 0, auch wenn der Wert nachträglich mit 5 > > multipliziert wird. Wie lösen ? Mit noch ner Float zwichenvariable?
>> Ich vermute es kommt immer 0 heraus. > >> > >> > >> > >> Wert/1024 ergibt bei Integer 0, auch wenn der Wert nachträglich mit 5 > >> > >> multipliziert wird. > > Wie lösen ? > > Mit noch ner Float zwichenvariable? Entschuldigung hab scheiß geschrieben. also float Volt?
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int Lesep = 0;
int Wert;
float Volt;
void setup() {
lcd.begin(16, 2);
}
void loop() {
lcd.print("LCD Voltmeter ");
lcd.print(" ");
delay(1000);
lcd.print("*****made by*****");
lcd.print("*Florian Daßler*");
delay(1000);
while(1)
{
lcd.clear();
Wert = analogRead(Lesep);
lcd.print("Spannung an Pin");
Volt = Wert/1024*5;
lcd.print(Volt);
lcd.print("Volt");
delay(100);
}
}
so,oder?
Nich blöd fragen sondern lesen, da gibs hiern Tutorial zu. http://www.mikrocontroller.net/articles/AVR-Tutorial:_ADC http://www.mikrocontroller.net/articles/Festkommaarithmetik
Volt = (int) (((long) Wert * 5000L) / 1023L ); //in mV lcd.print ( Volt % 1000); lcd.print ( "." ); lcd.print ( Volt/1000); lcd.print ( " Volt");
Max_123 schrieb: > lcd.print ( Volt % 1000); > lcd.print ( "." ); > lcd.print ( Volt/1000); > lcd.print ( " Volt"); auch wenn der Beitrag alt ist kann ich das nicht so stehen lassen: anstatt bei 3056 3.056 auszugeben wird 56.3 ausgeben. Selbst wenn man das vertauscht ist es falsch, das wird nämlich zu 3.56
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.