- SF800 Solar Speicher Tutorial         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 18 von 18

Thema: I²C Speicher, Uhr

  1. #11
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.07.2004
    Ort
    Regensburg
    Alter
    40
    Beiträge
    366
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Zitat Zitat von Xeus
    das funzt leider nicht, dann krieg ich nichts zurück!
    hier der aktuelle code

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.11.2004
    Beiträge
    1.693
    hier der aktuelle code
    Wo???

    Stimmt der rest denn so?
    Ist schwer zu sagen. Das Programm ist sehr unübersichtlich finde ich. Am besten lädst du die .BAS hoch. Dann sind evtl mehr bereit, den Code mal selbst laufen zu lassen.

  3. #13
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.07.2004
    Ort
    Regensburg
    Alter
    40
    Beiträge
    366
    Hier der Code.



    Ziel ist es:
    1)
    ein mc frägt sequenziell 12 geräte ab, sollte das 2.byte das er als antwort bekommt <>006 sein, soll er das datum,die zeit,dessen adresse und den status tabellarisch im 24c256 ablegen.
    2)
    ein zweiter mc liest nur die daten aus dem eeprom und gibt sie seriell an einen pc weiter.

    Problem:
    es scheint als würde es bei &H60 einen Adressenkonflikt gibt.
    lasse ich die adresse weg kommt im terminal nur 1:0 nicht ein mal der text Print "PCF8583 ..." zeigt er mir an.



    Komisch mit der clock.bas funzt es einwandfrei
    Code:
    'Mikrocontroller Setup
    $lib "mcsbyteint.lbx"
    $regfile = "m16def.dat"
    
    $crystal = 19999998
    $baud = 19200
    
    'Display Setup
    Config Lcdpin = Pin , Db4 = Porta.6 , Db5 = Porta.5 , Db6 = Porta.4 , Db7 = Porta.3 , E = Porta.7 , Rs = Porta.2       ' Natürlich so wie es wirklich angeschlossen ist (4-Bit-Modus)
    Config Lcd = 20 * 4
    
    
    Config Pind.2 = Input
    Config Pind.4 = Input
    
    
    'Variablen
    
    'Checksum Variablen
    Dim Crc_l As Integer
    Dim Crc_h As Integer
    Dim New As Byte
    Dim Tmp As Byte
    Dim Bcclo As Byte
    Dim Bcchi As Byte
    Dim X As String * 10
    Dim Crce As Word
    Dim Crcs As Word
    
    'Sende & Empfangs Variablen
    Dim Packets(10) As Byte
    Dim Packete(8) As Byte
    
    'WR Variablen
    Dim Wradr As Byte
    
    'Display & Line Variablen
    Dim Line1 As String * 20
    Dim Line2 As String * 20
    Dim Line3 As String * 20
    Dim Line4 As String * 20
    
    'Sendepaket Variablen
    Dim Adr As Byte
    Dim Command As Byte
    Dim Par1 As Byte
    Dim Par2 As Byte
    Dim Par3 As Byte
    Dim Par4 As Byte
    Dim Par5 As Byte
    Dim Par6 As Byte
    
    'Empfangspaket Variablen
    Dim State As Byte
    
    'Speicher Constanten
    Const Ff = &H0C                                             'Steuerzeichen Formfeed
    Const Lf = &H0A                                             'Steuerzeichen Linefeed
    Const Pu = &H2E                                             'Punkt
    Const Dp = &H3A                                             'Doppelpunkt
    Const Le = &H20                                             'Leerzeichen
    Const Ko = &H2C                                             'Komma
    Const Adre = &HA2                                           'Adresse EEPROM
    Dim Adrcount As Word                                        'Zähler Speicherplatz EEPROM
    
    
    
    'Paket Variablen
    Declare Sub Paketinit
    
    'Subroutines
    Declare Sub Sendewr
    Declare Sub Empfangewr
    Declare Sub Crc
    Declare Sub Lcdout
    Declare Sub Status
    Declare Sub Abfrageroutine
    
    'WR Statusabfragen
    Declare Sub Adr2
    Declare Sub Adr3
    Declare Sub Adr4
    Declare Sub Adr5
    Declare Sub Adr6
    Declare Sub Adr7
    Declare Sub Adr8
    Declare Sub Adr9
    Declare Sub Adr10
    Declare Sub Adr11
    Declare Sub Adr12
    Declare Sub Adr13
    
    'Speicher
    Declare Sub Speichern
    Declare Sub Auslesen
    
    'Clock
    Declare Sub Settime(byval S1 As Byte , Byval M1 As Byte , Byval H1 As Byte , Byval D1 As Byte , Byval Month1 As Byte)
    Declare Sub Gettime()
    
    'Declare variables
    Dim Tm1(5) As Byte At &H60
    Dim I As Byte , Temp As Byte
    
    'These are pointers to tm() for simple handling.
    Dim S As Byte At &H60 Overlay
    Dim M As Byte At &H61 Overlay
    Dim H As Byte At &H62 Overlay
    Dim D As Byte At &H63 Overlay
    Dim Month As Byte At &H64 Overlay
    
    
    'configure the used port pin for I2C
    Config I2cdelay = 5                                         ' default slow mode
    Config Sda = Portc.1
    Config Scl = Portc.0
    'power LED
    Portd.5 = 1
    
    'Setup Comports
    'Serial 1  Configuration
    Config Serialin = Buffered , Size = 8
    Config Serialout = Buffered , Size = 10
    Config Pinb.7 = Output
    
    
    
    
    'LCD init
    Initlcd
       Line1 = "control rel.1.0"
       Line2 = "      boot"
       Line3 = " "
       Line4 = ""
       Gosub Lcdout
    
    
       Locate 2 , 1
    
    'Hauptprogramm
     Call Settime(56 , 1 , 1 , 29 , 11)                         'set time
    
    Print Chr(27) ; "[2J";                                      'clear screen
    Print "PCF8583 Clock Sample"
    
    Do
    
      Call Gettime
      Print Chr(27) ; "[2;2f";
      Print Hex(h) ; ":" ; Hex(m) ; ":" ; Hex(s) ; " Err:" ; Err
       Wait 1
    If Pind.2 = 1 Then
    End If
    
      If Pind.4 = 1 Then
       Gosub Abfrageroutine
    
    
      End If
    
    Loop
    
    
    
     '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    'SUBs
    
    'Anfrage an WR stellen
    Sub Sendewr
       Gosub Crc
       Line2 = " Status  "
       Line3 = " sende Anfrage"
       Gosub Lcdout
       Printbin Packets(1) ; 10
    
    
    
    Return
    End Sub Sendewr
    
     ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    'Status vom WR empfangen
    Sub Empfangewr
       Inputbin Packete(1) , 8
       State = Packete(2)
       Gosub Status
    
    Return
    End Sub Empfangewr
    
     '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
     'Werte tabellarisch im EEPROM speichern
    Sub Speichern
    Gosub Gettime
    
     I2cstart
     I2cwbyte 10100000
     I2cwbyte &HA3                                              'Speicherstelle im EEPROM
     I2cwbyte &HA2
     I2cwbyte D                                                 'Tag
     I2cwbyte Pu
     I2cwbyte Month                                             'Monat
     I2cwbyte Le
     I2cwbyte H                                                 'Stunde
     I2cwbyte Dp
     I2cwbyte M                                                 'Minute
     I2cwbyte Dp
     I2cwbyte Adr                                               'Wechselrichteradresse
     I2cwbyte Ko
     I2cwbyte State                                             'Wechselrichter Status (2.Paketbyte)
     I2cwbyte Ff                                                'Cursor zurück auf Anfang
     I2cwbyte Lf                                                'und Zeilenvorschub
     I2cstop
    
     If Adrcount < &H7FEB Then Adrcount = Adrcount + 13 Else Adrcount = 0
    
    End Sub Speichern
    
    
    
    
    
    
     'Checksumme berechnen
    Sub Crc
    Bcclo = &HFF
    Bcchi = &HFF
    
     New = Packets(1)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
    
      New = Packets(2)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
      New = Packets(3)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
      New = Packets(4)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
      New = Packets(5)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
      New = Packets(6)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
      New = Packets(7)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
      New = Packets(8)
     New = New Xor Bcclo
     Tmp = New
     Shift Tmp , Left , 4
     New = Tmp Xor New
     Tmp = New
     Shift Tmp , Right , 5
     Bcclo = Bcchi
     Bcchi = New Xor Tmp
     Tmp = New
     Shift Tmp , Left , 3
     Bcclo = Bcclo Xor Tmp
     Shift Tmp , Right , 4
     Bcclo = Bcclo Xor Tmp
    
    
    Crc_l = Bcclo Xor &HFF
    Crc_h = Bcchi Xor &HFF
    
    
    
       Return
    End Sub Clc
    
     '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
     'LCD Ausgabe
    Sub Lcdout
       Cls
       Locate 1 , 1                                             '1. Zeile
       Lcd Line1
       Locate 2 , 1                                             '2. Zeile
       Lcd Line2
       Locate 3 , 1                                             '3. Zeile
       Lcd Line3
       Locate 4 , 1                                             '4. Zeile
       Lcd Line4
    
       Return
    End Sub Lcdout
    
     '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
     'Status Auswertung
    Sub Status
        If State = 006 Then
             Line3 = Str(adr) + " ok"
    
           Else
             Line3 = Str(adr) + " Fehler"
              Gosub Speichern
          End If
    
    Gosub Lcdout
    Return
    End Sub Status
    
    ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    'Abfrageroutine sequenziell
    
    Sub Abfrageroutine
    
    Command = 050
    
       Gosub Adr2
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr3
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr4
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr5
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr6
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr7
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr8
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr9
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr10
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr11
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr12
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Gosub Adr13
       Gosub Sendewr
       Gosub Empfangewr
       Wait 2
       Return
    End Sub Abfrageroutine
    
    
    'Paketinitialisierung
    Sub Paketinit
    'Init Packets
    Packets(1) = Adr                                            'Adr
    Packets(2) = Command                                        'command
    Packets(3) = Par1                                           'Par1
    Packets(4) = Par2                                           'Par2
    Packets(5) = Par3                                           'Par3
    Packets(6) = Par4                                           'Par4
    Packets(7) = Par5                                           'Par5
    Packets(8) = Par6                                           'Par6
    Packets(9) = Crc_l
    Packets(10) = Crc_h
    Return
    End Sub Paketinit
    
    
    'WR Subs Status
    Sub Adr2
    
    Adr = 002
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 037
    Crc_h = 135
    Gosub Paketinit
    Return
    End Sub Adr2
    
    Sub Adr3
    Adr = 003
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 154
    Crc_h = 006
    Gosub Paketinit
    Return
    End Sub Adr3
    
    Sub Adr4
    Adr = 004
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 148
    Crc_h = 154
    Gosub Paketinit
    Return
    End Sub Adr4
    
    Sub Adr5
    Adr = 005
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 043
    Crc_h = 027
    Gosub Paketinit
    Return
    End Sub Adr5
    
    Sub Adr6
    Adr = 006
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 251
    Crc_h = 145
    Gosub Paketinit
    Return
    End Sub Adr6
    
    Sub Adr7
    Adr = 007
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 068
    Crc_h = 016
    Gosub Paketinit
    Return
    End Sub Adr7
    
    Sub Adr8
    Adr = 008
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 246
    Crc_h = 161
    Gosub Paketinit
    Return
    End Sub Adr8
    
    Sub Adr9
    Adr = 009
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 073
    Crc_h = 032
    Gosub Paketinit
    Return
    End Sub Adr9
    
    Sub Adr10
    Adr = 010
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 153
    Crc_h = 170
    Gosub Paketinit
    Return
    End Sub Adr10
    
    Sub Adr11
    Adr = 011
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 038
    Crc_h = 043
    Gosub Paketinit
    Return
    End Sub Adr11
    
    Sub Adr12
    Adr = 012
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 040
    Crc_h = 183
    Gosub Paketinit
    Return
    End Sub Adr12
    
    Sub Adr13
    Adr = 013
    Command = Command
    Par1 = 000
    Par2 = 032
    Par3 = 032
    Par4 = 032
    Par5 = 032
    Par6 = 032
    Crc_l = 151
    Crc_h = 054
    Gosub Paketinit
    Return
    End Sub Adr13
    
    ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    Sub Gettime()
    
       'there are 2 ways to get the time. With low level I2C calls or with a high level call
       'first the high level call
        Tm1(1) = 2                                              ' point to second register
    
        I2creceive &HA0 , Tm1(1) , 1 , 5                        ' write the second address and get 5 bytes back
        'i2creceive will first write 1 byte from tm(1) which is 2, and then will read 5 bytes and store it onto tm(1)-tm(5)
    
    
        'and optional with low level calls
        'For I = 1 To 5
         '  Temp = I + 1
         '  I2cstart
         '  I2cwbyte &HA0                                        'write addres of PCF8583
         '  I2cwbyte Temp                                        'select register
         '  I2cstart                                             'repeated start
         '  I2cwbyte &HA1                                        'write address for reading info
         '  I2crbyte Tm(i) , Nack                                'read data
      '  Next
     '  I2cstop
    End Sub
    
    
    Sub Settime(s1 As Byte , M1 As Byte , H1 As Byte , D1 As Byte , Month1 As Byte)
        'values are stored as BCD values so convert the values first
    
                                         'seconds
        Tm1(2) = Makebcd(m1)                                    'minutes
        Tm1(3) = Makebcd(h1)                                    'hours
        Tm1(4) = Makebcd(d1)                                    'days
        Tm1(5) = Makebcd(month1)                                'months
    
    
        I2cstart                                                'generate start
        I2cwbyte &HA0                                           'write address
        I2cwbyte &H00                                           'select control register
        I2cwbyte &H08                                           'set year and day bit for masking
        I2cstart                                                'repeated start
        I2cwbyte &HA0                                           'write mode
        I2cwbyte 2                                              'select seconds Register
        For I = 1 To 5
          I2cwbyte Tm1(i)
        Next                                                    'write seconds
        I2cstop
    End Sub
    
    End
    
                                                        'end program

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.11.2004
    Beiträge
    1.693
    Dim Tm1(5) as Byte at &h60
    belegt die Adresse 60 (Hexadezimal) im Speicher fünf mal. Ich glaube wohl, das das so nicht geht.

    Ich komm grade von der Arbeit und hab jetzt echt kein Nerv mir den Code noch anzuschauen, Sorry.
    Falls ich morgen zeitig Feierabend habe schau ich mal drüber sofern keiner schneller war. Ich will aber auch niemanden abhalten den Code selbst zu testen.

  5. #15
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.04.2004
    Ort
    Gronau
    Beiträge
    155
    @Marco,

    >>belegt die Adresse 60 (Hexadezimal) im Speicher fünf mal.

    Nein, belegt den Speicher ab &H60 mit 5 Bytes in Folge. Mit den
    Overlay Dim's danach kann man auf diese 5 Bytes direkt zu-
    greifen (alternativzu Tm1(x)).

    Gruß: - Reinhard -

  6. #16
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.04.2004
    Ort
    Gronau
    Beiträge
    155
    @Xeus,

    Du kannst vermutlich die mit Tm1(5) deklarierten Bytes nicht ab
    Adresse &H60 ablegen, weil der Platz dafür nicht ausreichend ist.
    Ich bekomme da sofort 'nen Fehler beim Compilerlauf.

    Deklarier die mit &H200 und die Overlay-Dim's dann mit &H200,
    &H201 etc. Sollte dann mit den Var's funktionieren. Über den
    Rest des Codes kann ich nichts sagen.

    Schau auch mal mit den Button "Show Compile result" und dann
    unter Variable und Address bzgl. Speicherbelegung.

    HTH: - Reinhard -

  7. #17
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.07.2004
    Ort
    Regensburg
    Alter
    40
    Beiträge
    366
    Danke, habs hinbekommen. bin gerade dabei variablen mit zeit und datum in einem 24c256 abzusichern. der code folgt in kürze.

    danke,

    xeus

  8. #18
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.07.2004
    Ort
    Regensburg
    Alter
    40
    Beiträge
    366
    Hi,

    ich würde meine uhr gerne über den pc stellen, dazu will ich in delphi ein prog schreiben, dass mir die 5 werte sendet.

    der mc muss diese dann einlesen und als value für die zeitwerte setzen.
    der bisherige settime code

    Code:
    Sub Settime
     S = Makebcd(s)                                             'Sek
     M = Makebcd(m)                                             'Min
     H = Makebcd(h)                                             'Std
     D = Makebcd(d)                                             'Tag
     Month = Makebcd(month)                                     'Monat
    
     'Setzen der vorgebenen Werte
    
     I2cstart
     I2cwbyte &HA0                                              'Schreibmodus
     I2cwbyte 0                                                 'select control register
     I2cwbyte 8                                                 'set year and day bit for masking
     I2cstart
     I2cwbyte &HA0                                              'Schreibmodus
     I2cwbyte 2                                                 'Sekundenregister auswählen
     I2cwbyte S                                                 'Sek schreiben
     I2cwbyte M                                                 'min schreiben
     I2cwbyte H                                                 'std schreiben
     I2cwbyte D                                                 'tag schreiben
     I2cwbyte Month                                             'monat schreiben
     I2cstop
    End Sub Settime

Seite 2 von 2 ErsteErste 12

Berechtigungen

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

Solar Speicher und Akkus Tests