Ich habe nun mal ein Code, der funktioniert. Aber selbst persönlich finde ich die Lösung nicht so gut. Vll habt ihr ja andere bessere Ideen:
z.B man viel nun nicht 0,5sek sondern auf 0,2sec Ein/AUS... Dann müsste man mit meinm Prog alles wieder anpassen.

Code:
$eeprom
$eepromhex
$regfile = "m32def.dat"                                     ' Prozessortyp ATmega32
$crystal = 16000000                                         ' Taktrate
$hwstack = 32
$swstack = 10
$framesize = 40
$baud = 4800


Config Portb.2 = Output
Led1 Alias Portb.2
Config Portb.3 = Output
Led2 Alias Portb.3


Config Lcd = 20 * 2
 Config Lcdpin = Pin , Db4 = Porta.0 , Db5 = Porta.1 , Db6 = Porta.2 , Db7 = Porta.3 , E = Porta.5 , Rs = Porta.4
  Cls
  Cursor Off


Config Timer0 = Timer , Prescale = 64
On Timer0 Timer_irq
Const Timervorgabe = 6
Enable Timer0
Enable Interrupts



Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc

Dim W As Word
Dim Taktzaehler As Integer
Dim 05takt As Bit
Dim 10takt As Bit
Dim 20takt As Bit
Dim Merker1 As Bit
Dim Merker2 As Bit




Do

W = Getadc(7)

Locate 2 , 15
Lcd W ; " "
Waitms 200

If W >= 400 Then
Merker1 = 1
Else
Merker1 = 0
End If

If W <= 400 Then
Merker2 = 1
Else
Merker2 = 0
End If





Loop

Timer_irq:
  Timer0 = Timervorgabe

  If Taktzaehler >= 4000 Then
  Taktzaehler = 0
  End If

  Taktzaehler = Taktzaehler + 1


  If Taktzaehler >= 0 And Taktzaehler <= 500 Then
     05takt = 1
     10takt = 1
  End If

  If Taktzaehler >= 500 And Taktzaehler <= 1000 Then
     05takt = 0
     10takt = 1
  End If

  If Taktzaehler >= 1000 And Taktzaehler <= 1500 Then
     05takt = 1
     10takt = 0
  End If

  If Taktzaehler >= 1500 And Taktzaehler <= 2000 Then
     05takt = 0
     10takt = 0
  End If


If 05takt = 1 And Merker1 = 1 Then
Led2 = 0
Else
Led2 = 1
End If

If 10takt = 1 And Merker2 = 1 Then
Led1 = 0
Else
Led1 = 1
End If

Return
End