Also es ist mir ja jetzt schon ein wenig peinlich aber warum funktioniert
dieses programm nicht?
Über einem Mäuseklavier gebe ich über 3 Pins die Vergleichsgröße Dip an.
En an Pin B4 eine 1 dann Pin B3 an.
Zähler von timer wird mit Dip Wert verglichen und schaltet bei erreichen des vorgegebenen wertes Pin B3 aus.
Die Schaltung macht was sie will. hängt der Eingang in der Luft flackert die LED Beleuchtung. Lege ich 5 Volt an bleibt sie an.
Lege ich 0 Volt an passiert mal garnichts oder sie geht aus.
Kann mir mal jemand das Brett vom Kopf schlagen ?
Code:
$regfile = "attiny13.dat"
$crystal = 4800000
Ddrb = &B11101000 'Pin PB4 Eingang Melder PB0-3 Eingang Dip Schalter Rest Ausgang
Dim Zaehler As Integer
Dim Dip As Integer 'Leider Nur 8 Bit Timer Bis 255 Ca 15 X Interrupt = 1 Sekunde '61630
On Timer0 Ontimer0 'verzweige bei Timer1 überlauf zu Isr_von_Timer0
Config Timer0 = Timer , Prescale = 64
Enable Timer0
Enable Interrupts 'schalte den Timer0 ein
'Timer0 = 0
Zaehler = 0
'---------------------------DIP Schalter Abfrage------------------------------
If Pinb.0 = 1 Then 'dipschalter 1
Dip = 3
End If
If Pinb.1 = 1 Then 'dip2
Dip = 10
End If
If Pinb.2 = 1 Then 'dip3
Dip = 10000
End If
'---------------------------DIP Schalter Abfrage------------------------------
Do
If Pinb.4 = 1 Then
Pinb.3 = 1
End If
'Wait 3
If Zaehler > Dip Then
Zaehler = 0
Pinb.3 = 0
' Wait 3
End If
Loop
Ontimer0: 'ISR von Timer1
Zaehler = Zaehler + 1
Return
Lesezeichen