Hallo
Ich habe hier ein Programm was an einem ADC Eingang vom Mega32 die Spannung misst und an einem zweiten die Spannung die an einem Widerstand abfällt um daraus den Strom zu berechnen.
Allerdings zeigt das LCD mir die Werte jeweils zwei mal an und ich weiß nicht wieso.
Hier ist der Code
Und hier ein Foto um das Problem zu zeigen.Code:$regfile = "m32def.dat" $crystal = 16000000 Config Adc = Single , Prescaler = Auto , Reference = Internal Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 Config Lcdbus = 4 Start Adc Declare Sub _spannungsmessung() Declare Sub _strommessung() Declare Sub _spannungsanzeige() Declare Sub _stromanzeige() Const Ref = 5 / 1023 Dim Spannung As Single Dim Strom As Single Dim Volt As Single Dim Ampere As Single Main: Do Initlcd Cls Call _spannungsmessung Call _spannungsanzeige Call _strommessung Call _stromanzeige Loop End Sub _spannungsmessung Local W As Word W = Getadc(0.) Spannung = W * Ref Spannung = Spannung * 1 Volt = Spannung End Sub Sub _strommessung Local S As Word S = Getadc(1.) Strom = S * Ref Strom = Strom / 100 Ampere = Strom End Sub Sub _spannungsanzeige() Locate 1 , 1 Lcd "Spannung :" Locate 1 , 13 Lcd Spannung End Sub Sub _stromanzeige() Locate 2 , 1 Lcd "Strom :" Locate 2 , 13 Lcd Ampere End Sub
http://img684.imageshack.us/img684/6269/bilddk.jpg
Was ich meine ist das z.B. 2x der Spannungswert angezeigt wird.







Zitieren

Lesezeichen