- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 11 bis 20 von 30

Thema: Master Slave Verbindung mit AVR2313 und 485-Bustreibern ?

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #19
    Hallo,

    beim Anschluß eines zweiten Sensor-Moduls hab ich festgestellt das es nicht richtig läuft bzw. der Aktor-Controller stürzt nach kurzer Zeit ab.

    Nehme ich den zusätzlichen Sensor wieder weg vom Bus funktioniert wieder alles !

    Die Hardware hab ich schon sehr genau geprüft ist ok, ich glaube fast es ist ein Softwareproblem des Sensors, kann es sein das beim Anschluß des zweiten Sensors, beide nicht mehr richtig senden können ?

    Vielleicht hat jemand einen Tip woran es liegen könnte !

    Mfg Jürgen

    Code:
    'Sensor
    $regfile = "attiny2313.dat"
    $crystal = 3579545
    $baud = 4800
    Portb = &B11111111
    Portd = &B1100000                'PullUp
    
    $hwstack = 32
    $swstack = 10
    $framesize = 40
    
    Config Print = Portd.2 , Mode = Set
    Config Pind.2 = Output
    
    Config Debounce = 30
    
    Waitms 300
    
    
    Do
    Debounce Pinb.0 , 0 , Schalter1 , Sub
    Debounce Pinb.1 , 0 , Schalter2 , Sub
    Debounce Pinb.2 , 0 , Schalter3 , Sub
    Debounce Pinb.3 , 0 , Schalter4 , Sub
    Debounce Pinb.4 , 0 , Schalter5 , Sub
    Debounce Pinb.5 , 0 , Schalter6 , Sub
    Debounce Pinb.6 , 0 , Schalter7 , Sub
    Debounce Pinb.7 , 0 , Schalter8 , Sub
    Loop
    
    
    Schalter1:
    Print "!10";
    Return
    
    Schalter2:
    Print "!11";
    Return
    
    Schalter3:
    Print "!12";
    Return
    
    Schalter4:
    Print "!13";
    Return
    
    Schalter5:
    Print "!14";
    Return
    
    Schalter6:
    Print "!15";
    Return
    
    Schalter7:
    Print "!16";
    Return
    
    Schalter8:
    Print "!17";
    Return
    
    
    End


    Code:
    'Aktor
    $regfile = "attiny2313.dat"
    $crystal = 3579545
    $baud = 4800
    
    Dim A As String * 5
    Dim Z As String * 1
    Dim B As String * 5
    Dim C As Byte
    Dim B0 As Integer
    Dim B1 As Integer
    Dim B2 As Integer
    Dim B3 As Integer
    Dim B4 As Integer
    Dim B5 As Integer
    Dim B6 As Integer
    Dim B7 As Integer
    
    $hwstack = 32
    $swstack = 10
    $framesize = 40
    
    Config Serialin = Buffered , Size = 6
    Config Portb = Output
    
    Enable Interrupts
    
    Portd.2 = 0
    
    B0 = 6000
    B1 = 6000
    B2 = 32000
    B3 = 32000
    B6 = 2
    B7 = 2
    
    
    Do
    
    C = Ischarwaiting()
      If C = 1 Then
       C = Inkey()
       A = A + Chr(c)
    End If
    
    
    If Len(a) > 2 Then
    B = A
    Z = Mid(a , 1 , 1 )
    End If
    
    
    If Z = "!" Then
    B = Mid(a , 1 , 5)
    End If
    
                                          ' 6x von einander unabhängige Comfort Zeitschaltungen 2x Stromstoßschaltungen
                                          ' Achtung Zähler Integer nur bis 32700 
    
    If B = "!10" Then          'Comfort Zeitschaltung kurz  Ein - Aus wie Tasterschaltung
    If Portb.0 = 0 Then
    Set Portb.0
    B0 = 6000
    Else
    Reset Portb.0
    End If
    A = ""
    End If
    
    If B = "!11" Then          'Comfort Zeitschaltung kurz  Ein - Aus wie Tasterschaltung
    If Portb.1 = 0 Then
    Set Portb.1
    B1 = 6000
    Else
    Reset Portb.1
    End If
    A = ""
    End If
    
    If B = "!12" Then           'Comfort Zeitschaltung Lang  Ein - Aus wie Tasterschaltung
    If Portb.2 = 0 Then
    Set Portb.2
    B2 = 32000
    Else
    Reset Portb.2
    End If
    A = ""
    End If
    
    If B = "!13" Then           'Comfort Zeitschaltung Lang  Ein - Aus wie Tasterschaltung
    If Portb.3 = 0 Then
    Set Portb.3
    B3 = 32000
    Else
    Reset Portb.3
    End If
    A = ""
    End If
    
    If B = "!14" Then          'Stromstoßschaltung
    If Portb.4 = 0 Then
    Set Portb.4
    Else
    Reset Portb.4
    End If
    A = ""
    End If
    
    If B = "!15" Then        'Stromstoßschaltung
    If Portb.5 = 0 Then
    Set Portb.5
    Else
    Reset Portb.5
    End If
    A = ""
    End If
    
    If B = "!16" Then         'Comfort Zeitschaltung kurzer Impuls für externe Ansteuerung
    If Portb.6 = 0 Then
    Set Portb.6
    B6 = 2
    Else
    Reset Portb.6
    End If
    A = ""
    End If
    
    If B = "!17" Then         'Comfort Zeitschaltung kurzer Impuls für externe Ansteuerung
    If Portb.7 = 0 Then
    Set Portb.7
    B7 = 2
    Else
    Reset Portb.7
    End If
    A = ""
    End If
    
    If B = "!18" Then          'Funktion Zentral Ein
    Set Portb.0
    Set Portb.1
    Set Portb.2
    Set Portb.3
    Set Portb.4
    Set Portb.5
    Set Portb.6
    Set Portb.7
    A = ""
    End If
    
    If B = "!19" Then          'Funktion Zentral Aus
    Reset Portb.0
    Reset Portb.1
    Reset Portb.2
    Reset Portb.3
    Reset Portb.4
    Reset Portb.5
    Reset Portb.6
    Reset Portb.7
    A = ""
    End If
    
    
    Decr B0
    If B0 = 0 Then
    Reset Portb.0
    B0 = 6000
    End If
    
    Decr B1
    If B1 = 0 Then
    Reset Portb.1
    B1 = 6000
    End If
    
    Decr B2
    If B2 = 0 Then
    Reset Portb.2
    B2 = 32000
    End If
    
    Decr B3
    If B3 = 0 Then
    Reset Portb.3
    B3 = 32000
    End If
    
    
    
    Decr B6
    If B6 = 0 Then
    Reset Portb.6
    B6 = 2
    End If
    
    Decr B7
    If B7 = 0 Then
    Reset Portb.7
    B7 = 2
    End If
    
    
    
    
    Waitms 20          '10 bis max 20 ms
    
    Loop
    
    
    End
    [/code]
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 485-bus_avr_2313_sensor_aktor_-_stk200_seite_1.jpg  

Berechtigungen

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

12V Akku bauen