guuuut... ich denke so müsste das gehen^^

Code:
' Ich versuch mich hier mal an einer Anzeige für meine Solaranlage (inselbetrieb)
' also mit Batterie/wechselrichter ect.
'
' Angezeigt werden sollen Modulspannung und Strom, die daraus resultierende Leistung und
' der Batteriestrom sowie der Laststrom und die daraus resultierende Leistung.
' Zudem noch die Leistung, die gerade entnommen oder gepuffert wird. Also die Differenz
' zwischen ein- und ausgehender Leistung.
'
' Felix Herzberger 2008
'
'


$regfile = "m8def.dat"
$crystal = 1000000


Config Adc = Free , Prescaler = Auto

Start Adc

Dim A1 As Word


Do
A1 = Getadc(0)                                              ' Die Spannung kommt am ADC Port 1 rein.

A1 = A1 * 5000                                              ' Referenz: 5V
A1 = A1 / 1024                                              ' Jetzt haben wird die Spannung, die am Port anliegt in mA

A1 = A1 / 0.001                                             ' der Shunt hat den Wert 0,001 Ohm, A1 ist nun der fliessende Strom in mA

Loop

Dim A2 As Word


Do
A2 = Getadc(1)

A2 = A2 * 5000
A2 = A2 / 1024

A2 = A2 / 0.001

Loop

Dim V1 As Word


Do
V1 = Getadc(2)

V1 = V1 * 5000
V1 = V1 / 1024

V1 = V1 * 5

Loop

Dim V2 As Word


Do
V2 = Getadc(3)

V2 = V2 * 5000
V2 = V2 / 1024

V2 = V2 * 5

Loop

Dim P1 As Word


Do
P1 = V1 * A1

Loop

Dim P2 As Word


Do
P2 = V2 * V1

Loop

Dim D1 As Word


Do
D1 = P1 - P2

Loop


' Ausgerechnet sind die Werte nun und werden auf dem Display dargestellt



Config Lcd = 20 * 2
Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4

Do

Cls                                                         'loesche das LCD Display
Locate 1 , 1                                                'Cursor auf 1 Zeile, 1 Spalte
Lcd "Solaranlage"                                           'String auf Display anzeigen

Waitms 3000

Cls

Waitms 10

Locate 1 , 1
Lcd "Modulspannung:"
Locate 2 , 1
Lcd "V"
Locate 2 , 3
Lcd V1

Waitms 3000

Cls

Waitms 10

Locate 1 , 1
Lcd "Modulstrom:"
Locate 2 , 1
Lcd "A"
Locate 2 , 3
Lcd A1

Waitms 3000

Cls

Waitms 10

Locate 1 , 1
Lcd "Modulleistung:"
Locate 2 , 1
Lcd "W"
Locate 2 , 3
Lcd P1

Waitms 3000

Cls

Waitms 10

Locate 1 , 1
Lcd "Batt. Spannung:"
Locate 2 , 1
Lcd "V"
Locate 2 , 3
Lcd V1

Waitms 3000

Cls

Waitms 10

Locate 1 , 1
Lcd "Laststrom:"
Locate 2 , 1
Lcd "A"
Locate 2 , 3
Lcd A2

Waitms 3000

Cls

Waitms 10

Locate 1 , 1
Lcd "Lastleistung:"
Locate 2 , 1
Lcd "W"
Locate 2 , 3
Lcd P2

Waitms 3000

Cls

Locate 1 , 1
Lcd "Leistungsdifferenz"
Locate 2 , 1
Lcd "P"
Locate 2 , 3
Lcd D1

Waitms 3000

Loop

End