Hallo,
hab über die Feiertage meinen 485 Bus-Aktor überarbeitet und in meine Hausinstallation integriert, im Moment zur Steuerung der Terrassen und Außenbeleuchtung.
Es gibt jetzt 6x von einander unabhängige Comfort Zeitschaltungen (Ein - Aus wie Tasterschaltung), 2x Stromstoßschaltungen und eine Zentral Ein/Aus Steuerung.
Eine ausführliche Dokumentation des Projektes hab ich hier
http://juergen151.bplaced.net/
Mfg Jürgen
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







Zitieren
Lesezeichen