So Leute, das ist jetzt die Finale Version von mir. Jetzt funktioniert alles.
Bei Stromzufuhr ist alles aus.
Beim ersten und zweiten schalten blinkt es unterschiedlich.
Beim dritten schalten geht alles wieder aus.
So wollte ich das haben.

Jetzt ein paar Fragen zum Code.
Was bedeutet Dim - As Bit?
und Dim - As Integer?
und Xor?
Diese Begriffe sagen mir noch nichts.

Und wieso muss ich ca. ne halbe Sekunde den Taster drücken bis der Attiny13 reagiert?



Code:
$regfile = "attiny13.dat"
$crystal = 1200000
$hwstack = 10
$swstack = 10
$framesize = 10

Config Portb.1 = Output
Config Portb.2 = Output
Config Portb.3 = Output
Config Portb.4 = Output
Config Pinb.0 = Input

Dim Modus As Integer
Dim Anzahlmodi As Integer
Dim Taste_old As Bit
Dim Taste_new As Bit
Dim X As Bit

Modus = 1
Anzahlmodi = 3
Taste_new = 0

Do

   Taste_old = Taste_new
   Taste_new = Pinb.0

   X = Taste_old Xor Taste_new
   X = X And Taste_new

   If X = 1 Then Incr Modus

   If Modus > Anzahlmodi Then Modus = 1
   Select Case Modus
   Case 1
      Gosub Lichteffekt1
   Case 2
      Gosub Lichteffekt2
   Case 3
      Gosub Lichteffekt3

   End Select

Loop
End

Lichteffekt1:

Portb.1 = 0
Portb.2 = 0
Portb.3 = 0
Portb.4 = 0

Return

Lichteffekt2:

Portb.1 = 1
Portb.2 = 0
Portb.3 = 1
Portb.4 = 0
Waitms 100
Portb.3 = 0
Portb.4 = 1
Waitms 100
Portb.3 = 1
Portb.4 = 0
Waitms 100
Portb.1 = 0
Portb.2 = 1
Portb.3 = 0
Portb.4 = 1
Waitms 100
Portb.3 = 1
Portb.4 = 0
Waitms 100
Portb.3 = 0
Portb.4 = 1
Waitms 100

Return

Lichteffekt3:

Portb.1 = 1
Portb.2 = 1
Portb.3 = 1
Portb.4 = 1
Waitms 100
Portb.1 = 0
Portb.2 = 0
Portb.3 = 0
Portb.4 = 0
Waitms 100
Portb.1 = 1
Portb.2 = 1
Portb.3 = 1
Portb.4 = 1
Waitms 100
Portb.1 = 0
Portb.2 = 0
Portb.3 = 0
Portb.4 = 0
Waitms 100
Portb.1 = 1
Portb.2 = 1
Portb.3 = 1
Portb.4 = 1
Waitms 100
Portb.1 = 0
Portb.2 = 0
Portb.3 = 0
Portb.4 = 0
Waitms 100

Return