Hallo Jungs mal ne kleine Frage : Ich habe eine maximale PWM Wert von 255, diese Wert soll auf dem LCD als 100% erscheinen wie rechne ich es aus ? Also brauche ich eine Ganzzahl. Wenn ich folgendes nehme R=255/2.5 dann klar bekomme ich ich krumme Werte ich würde gerne die zahlen runden aber wie ? Hintergrung bei einem RGB Fader möchte ich die helligkeit als Prozent Anzeige auf einem LCD Display darstellen... Der rest ist klar..
geht nicht Bsp : 178 * 100 = 17800 / 255 = 69,8 sollte aber 70 sein... 145 * 100 = 14500 / 255 = 56,8 sollte 57 sein
Hi Vorher aufrunden: ((178 * 100) +127)/ 255 MfG Spess
Kann ich es gleich so in Bascom einsetzen ? ( kann gerade nicht probieren) R_temp=((R*100=+127)/255 R ist PWM wert R-temp ist für die Anzeige PS: fehlt nicht ein Klammer ?
Thomas Kiss schrieb: > Kann ich es gleich so in Bascom einsetzen ? ( kann gerade nicht > probieren) > > R_temp=((R*100=+127)/255 Nein. BASCOM kann nicht mit derart 'komplexen' Ausdrücken umgehen. Aufbrechen in Einzelteile. > PS: fehlt nicht ein Klammer ? SChau mal auf deine Tastatur. Welche Zeichen liegt auf der Shift-Ebene direkt neben der Taste mit dem '='?
Dachte ich mir....aber ich kriegs glaube hin... Tja Tastatur , habe keine deutsche...
Thomas Kiss schrieb: > Dachte ich mir....aber ich kriegs glaube hin... > > Tja Tastatur , habe keine deutsche... Mein Fehler. Ich vergass. Ungar?
var=x/255 var=100*var var=ROUND(var) ginge wahrscheinlich auch
Karl schrieb: > var=x/255 > var=100*var > var=ROUND(var) > > ginge wahrscheinlich auch keine gute Idee. Erst Multiplizeren, dann Dividieren. Beim Dividieren gehen dir die Kommastellen verloren.
Wo ist der Hund begraben ? Ein Auszug aus dem Programm : Dim Sr As Long Sr = R_temp * 100 Sr = Sr / 255 Sr = Round(sr) Ich kriege folgende Fehlermeldung : Integer or Long expected for abs() PS: Gleiche Fehlermeldung ob ich Dim sr as Long oder Dim sr as Intger nehmen..verstehe ich nicht !!! Das Problem liegt an sr=Round(Sr)
So scheint es zu klappen : Werden 3 Stellen ausgegeben wie ich wollte Sr = R_temp * 100 Sr = Sr / 255 'LCD Ausgabe S1 = Str(sr) S1 = Format(s1 , "000") Locate 1 , 6 Lcd "R:" ; S1
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.