mirco99
01.11.2008, 18:57
Habe ein problem mit meinem Array und der LCD Anzeige.
Ich muss meinen Stromwert zB. 2,455 A in eine Pixelposition umrechnen.
Kann jemand mal über die Dimensionierung der Variablen schauen und die Machbarkeit meiner Berechnung bei Bascom? Mein Taschenrechner machts richtig.
Der Stromwert muss mal 7,5 gerechnet werden um in meinem Diagramm an der richtigen Stelle zu sein. Achja o Ampere ist bei mir bei der Pixelzeile 52. Den Wert habe ich dann mit mal minus 1 wieder positiv gedreht. da mein diagramm ja nicht auf dem kopf stehen soll. :-)
Das Diagramm Fängt bei Pixel 8 an. Deshalb schreibe ich auch erst bei Zeiger 8 in das Array.
Wenn noch nichts in das Array geschrieben worden ist, lese ich dann Nullen aus?
Die Pixel werden leider am oberen Rand des Displays angezeigt und auch nur jedes 2. Das Display oder der Atmega 168 stürzt ab.
Pixelzeiger = 8 'beim programmstart vor do
Dim Pixelpuffer(127) As Byte
Dim Pixelzeiger As Byte
Dim Pixelschreibzeiger As Byte
Dim Pixel As Single
Dim Pixel1 As byte
'Wird jede sekunde abgefragt
'----------------------------------Diagramm Pixelwerte speichern------------
Pixelzeiger = Pixelzeiger + 1
If Pixelzeiger => 127 Then
Pixelzeiger = 8
end if
Pixel = Strom * 7.5
Pixel = 52 - Pixel 'pixelposition 0 A
Pixel = Pixel1 ' single in byte umwandeln
Pixelpuffer(pixelzeiger) = Pixel1
End If
'auslesen auf Display
For Pixelschreibzeiger = 8 To 127
Pset Pixelschreibzeiger , Pixelpuffer(pixelschreibzeiger) , 1
Next
Ich muss meinen Stromwert zB. 2,455 A in eine Pixelposition umrechnen.
Kann jemand mal über die Dimensionierung der Variablen schauen und die Machbarkeit meiner Berechnung bei Bascom? Mein Taschenrechner machts richtig.
Der Stromwert muss mal 7,5 gerechnet werden um in meinem Diagramm an der richtigen Stelle zu sein. Achja o Ampere ist bei mir bei der Pixelzeile 52. Den Wert habe ich dann mit mal minus 1 wieder positiv gedreht. da mein diagramm ja nicht auf dem kopf stehen soll. :-)
Das Diagramm Fängt bei Pixel 8 an. Deshalb schreibe ich auch erst bei Zeiger 8 in das Array.
Wenn noch nichts in das Array geschrieben worden ist, lese ich dann Nullen aus?
Die Pixel werden leider am oberen Rand des Displays angezeigt und auch nur jedes 2. Das Display oder der Atmega 168 stürzt ab.
Pixelzeiger = 8 'beim programmstart vor do
Dim Pixelpuffer(127) As Byte
Dim Pixelzeiger As Byte
Dim Pixelschreibzeiger As Byte
Dim Pixel As Single
Dim Pixel1 As byte
'Wird jede sekunde abgefragt
'----------------------------------Diagramm Pixelwerte speichern------------
Pixelzeiger = Pixelzeiger + 1
If Pixelzeiger => 127 Then
Pixelzeiger = 8
end if
Pixel = Strom * 7.5
Pixel = 52 - Pixel 'pixelposition 0 A
Pixel = Pixel1 ' single in byte umwandeln
Pixelpuffer(pixelzeiger) = Pixel1
End If
'auslesen auf Display
For Pixelschreibzeiger = 8 To 127
Pset Pixelschreibzeiger , Pixelpuffer(pixelschreibzeiger) , 1
Next