Servus, hab den Multiplex auch mit eingebaut:
Code:
$regfile = "2313def.dat"
Dim Var1 As Byte
Dim Var2 As Word
Dim Freq As Word
Config Portb = Output
Config Portd = Output
Dim A As Byte
Dim S As String * 5
Dim X As Byte
Dim Pos As Byte
Dim Z As String * 1
Dim L As Byte
Dim W As Long
Config Timer0 = Timer , Prescale = 1024
Config Timer1 = Counter , Edge = Rising
Config Pinb.5 = Input
Portb.5 = 0
On Timer0 Test1
On Timer1 Test2
Enable Interrupts
Mess:
Timer0 = 126
Timer1 = 0
Start Timer0
Start Timer1
Do ' Anzeige Multiplex
S = Str(freq)
L = Len(s)
For A = 0 To 10
For X = 1 To L
S = Str(w)
Pos = L - X
Pos = Pos + 1
Z = Mid(s , Pos , 1)
If Z = "0" Then Portb = 63
If Z = "1" Then Portb = 34
If Z = "2" Then Portb = 94
If Z = "3" Then Portb = 118
If Z = "4" Then Portb = 99
If Z = "5" Then Portb = 117
If Z = "6" Then Portb = 125
If Z = "7" Then Portb = 38
If Z = "8" Then Portb = 127
If Z = "9" Then Portb = 119
If X = 1 Then Portd = 1
If X = 2 Then Portd = 2
If X = 3 Then Portd = 4
If X = 4 Then Portd = 8
If X = 5 Then Portd = 16
If L = 1 Then Waitus 99813
If L = 2 Then Waitus 49906
If L = 3 Then Waitus 33271
If L = 4 Then Waitus 24953
If L = 5 Then Waitus 19963
Next X
Next A
Loop
Test1:
Incr Var1
If Var1 = 38 Then
Freq = Timer1
Freq = Freq + Var2
Var1 = 0
Var2 = 0
Stop Timer0
Stop Timer1
Goto Mess 'soll nur bei Var1 = 38 zu Mess Springen, wenn man hier kein goto MESS setzten darf , wo/wie dann
End If
Return
Test2:
Var2 = Var2 + 256
Return
Gruß teslanikola
Lesezeichen