Ich kenne mich wirklich nicht allzu gut mit Bascom und Programmierung allgemein aus, vielleicht könnt ihr nochmal drüber schauen ob alles gut aussieht. funktionieren tuts
siehts gut aus?
Code:
$regfile = "M8def.dat"
$crystal = 16000000
$baud = 9600
Config Portc = Output ' Kompletter C Port Output
Config Pinb.0 = Input ' Eingang 1
Config Pinb.1 = Input ' Eingang 2
Portb.0 = 0
Portb.1 = 1
Dim W As Word
Dim A As Integer
Dim B As Integer
Dim C As Integer
Do
Config Timer1 = Timer , Prescale = 64
A = 0 ' A = 1/4 Sekunden
B = 0 ' B = ganze Sekunden 1 - 9
C = 0 ' C = 10er Zahlen
W = Timer1
Timer1 = 62500
If Pinb.0 = 1 Then
Sound Portb.0 , 200 , 500 ' Startknopf
Print "Start"
Enable Interrupts
Enable Timer1 ' Timer: GO
' angeblich jetzt alle 0,25s
On Timer1 Isr_timer1
Do
Loop
Isr_timer1:
'Print "interrupt!" ; W
A = A + 1
If A = 4 Then
B = B + 1
A = 0
End If
If B = 10 Then
C = C + 1
B = 0
End If
Print C ; B ; " Sekunden"
End If
' Stoppknopf
If Pinb.1 = 0 Then ' Timer STOPP
Stop Timer1
Sound Portb.0 , 200 , 500
Waitms 10
Sound Portb.0 , 200 , 500
If A = 1 Then
Print "Das waren " ; C ; B ; "," ; "25 Sekunden"
End If
If A = 2 Then
Print "Das waren " ; C ; B ; "," ; "5 Sekunden"
End If
If A = 3 Then
Print "Das waren " ; C ; B ; "," ; "75 Sekunden"
End If
If A = 0 Then
Print "Das waren " ; C ; B ; "," ; A ; " Sekunden"
End If
End If
Return
Loop
Lesezeichen