- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 25

Thema: Edit: Wie Wert in EEPROM speichern?

  1. #11
    Benutzer Stammmitglied
    Registriert seit
    03.02.2007
    Ort
    Bayern
    Beiträge
    85
    Anzeige

    Powerstation Test
    Funktioniert leider nicht! Brauche ich vll. sonst noch etwaige besondere Anweisung für Bascom damit der Wert gespeichert wird?

  2. #12
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.11.2008
    Ort
    Kapfenberg
    Beiträge
    628
    Zitat Zitat von Maxxtro
    Funktioniert leider nicht! Brauche ich vll. sonst noch etwaige besondere Anweisung für Bascom damit der Wert gespeichert wird?
    Passiert gar nichts? Oder kommt beim Kompilieren eine Fehlermeldung?

    Grüße
    Thomas

  3. #13
    Benutzer Stammmitglied
    Registriert seit
    03.02.2007
    Ort
    Bayern
    Beiträge
    85
    Neinein, das Programm lässt sich schon kompilieren! Es wird auch der Höchstwert angezeigt, aber nach dem ausschalten ist wieder alles weg

  4. #14
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.09.2005
    Beiträge
    276
    Dim Eram_bootzaehler As Eram Long ' Adr 02,03,04,05
    Dim Ram_bootzaehler As Long

    /---------------------------------------------------

    Ram_bootzaehler = Eram_bootzaehler
    Incr Ram_bootzaehler
    Eram_bootzaehler = Ram_bootzaehler

    /--------------------------------------------------

    Das geht sicher .
    Bei jedem Booten wird der Zaehler um eins hochgezählt.

    Gento

  5. #15
    Benutzer Stammmitglied
    Registriert seit
    03.02.2007
    Ort
    Bayern
    Beiträge
    85
    Und das hat WAS mit meiner Aufgabe, eine Variable zu speichern, zu tun?

    Soll ich den Teil einfach oben mit ins Programm kopieren? Was bewirkt das ganze?

  6. #16
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.11.2008
    Ort
    Kapfenberg
    Beiträge
    628
    @Maxxtro
    Er meint warscheinlich du sollst mal diesen Code versuchen und sehen obs klappt. Vielleicht ist ja auch das EEPROM defekt.

    Gruß
    Thomas

  7. #17
    Benutzer Stammmitglied
    Registriert seit
    03.02.2007
    Ort
    Bayern
    Beiträge
    85
    Funktioniert! Zählt bei jedem einschalten eins hoch!

  8. #18
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.11.2008
    Ort
    Kapfenberg
    Beiträge
    628
    Hmm. Zeig am Besten mal deinen kompletten nichtfunktionierenden Code.

    Gruß
    Thomas

  9. #19
    Benutzer Stammmitglied
    Registriert seit
    03.02.2007
    Ort
    Bayern
    Beiträge
    85
    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000
    
    
    ' LCD konfigurieren Port auf Ausgabe setzten und Pin's entsprechend zuordnen
    Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0
    Config Lcd = 16 * 4
    Config Lcdbus = 4
    Config Portd.0 = Output
    Portd.0 = 1
    Deflcdchar 1 , 8 , 20 , 8 , 32 , 32 , 32 , 32 , 32
    Cursor Off
    
    ' Pin für 1wire Schnittstelle festlegen, Schnittstelle wird von Bascom durch Software realisiert
    Config 1wire = Portd.7
    
    Dim Dsid(24) As Byte
    ' Die Adresse meines DS1820 die ich vorher ermittelt habe
    Dsid(1) = &H10 : Dsid(2) = &H99 : Dsid(3) = &H4E : Dsid(4) = &H71 : Dsid(5) = &H01 : Dsid(6) = &H08 : Dsid(7) = &H00 : Dsid(8) = &H6D
    '^= 1
    Dsid(9) = &H10 : Dsid(10) = &H3D : Dsid(11) = &H48 : Dsid(12) = &H71 : Dsid(13) = &H01 : Dsid(14) = &H08 : Dsid(15) = &H00 : Dsid(16) = &H71
    '^= 2
    Dsid(17) = &H10 : Dsid(18) = &H4D : Dsid(19) = &H47 : Dsid(20) = &H71 : Dsid(21) = &H01 : Dsid(22) = &H08 : Dsid(23) = &H00 : Dsid(24) = &H86
    '^= 3
    
    Dim Sc(9) As Byte
    Dim Sc2(9) As Byte
    Dim Sc3(9) As Byte
    Dim T As Byte
    Dim T2 As Byte
    Dim T3 As Byte
    Dim H As Byte
    Dim Flag As Bit
    
    
    Do
    
    
      Wait 1
    
      ' Alle angeschlossenen DS1820 zum Messen veranlassen
       1wreset
       1wwrite &HCC
       1wwrite &H44
       Waitms 750
       ' Den gewünschten Sensor auswählen
       1wverify Dsid(1)
       ' Kommando READ SCRATCHPAD
       1wwrite &HBE
       Sc(1) = 1wread(9)
       If Sc(9) = Crc8(sc(1) , 8) Then
          T = Sc(1)
          If Sc(2) > 0 Then
          T = 256 - T
          End If
          T = T / 2
          Locate 1 , 1
          Lcd "T:"
          If Sc(2) > 0 Then Lcd "-";
          Lcd T;
          If Sc(1).0 = 1 Then
          Lcd ".5" ; Chr(1) ; " / "
          Else
          Lcd ".0" ; Chr(1) ; " / "
          End If
          End If
       Waitms 1
    
    
    
       1wreset
       1wwrite &HCC
       1wwrite &H44
       Waitms 750
       ' Den gewünschten Sensor auswählen
       1wverify Dsid(9)
       ' Kommando READ SCRATCHPAD
       1wwrite &HBE
       Sc2(1) = 1wread(9)
       If Sc2(9) = Crc8(sc2(1) , 8) Then
          T2 = Sc2(1)
          If Sc2(2) > 0 Then
          T2 = 256 - T2
          End If
          T2 = T2 / 2
          Locate 1 , 11
          If Sc2(2) > 0 Then Lcd "-";
          Lcd T2 ;
          If Sc2(1).0 = 1 Then
             Lcd ".5" ; Chr(1)
          Else
             Lcd ".0" ; Chr(1)
          End If
         End If
       ' Ausgabe alle 0,75 Sekunden
       Waitms 1
    
    
    
    If T > H Then Set Flag
    If Flag = 1 Then
         H = T
         Writeeeprom H
         Reset Flag
    End If
    Locate 4 , 1
    Lcd H
    
    Loop
    End

  10. #20
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.09.2005
    Beiträge
    276
    Dim As Eram vermisse ich für's Eram beschreiben.

    Gento

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests