Hallo
Habe jetzt mal probiert (Ein Beispiel von c.Kühnel)
Code:
.
.
.
Declare Function Taste() As Byte
.
.
.
Do
Lcd Taste()
Loop
end
'------------------Function: Tasten von einer 4*3 Matrix auslesen----------------
' 3 Spalten auf Portd.5-7
' 4 Zeilen auf Portc.0-3
Config Portd = Output
Config Portc = Input
Portc = &B00001111
Function Taste() As Byte
Local Spalte As Byte
Local Zeile As Byte
Local Taste_x As Byte
Taste_x = 0
For Spalte = 1 To 3
Portd = &B11100000 ' Portd.5-7 auf High
If Spalte = 1 Then Reset Portd.5
If Spalte = 2 Then Reset Portd.6
If Spalte = 3 Then Reset Portd.7
For Zeile = 1 To 4
Select Case Zeile
Case 1 : Debounce Pinc.0 , 0 , Taste_auswerten , Sub
Case 2 : Debounce Pinc.1 , 0 , Taste_auswerten , Sub
Case 3 : Debounce Pinc.2 , 0 , Taste_auswerten , Sub
Case 4 : Debounce Pinc.3 , 0 , Taste_auswerten , Sub
End Select
Next Zeile
Next Spalte
Taste = Taste_x
End Function
Taste_auswerten:
Select Case Zeile
Case 1 : Taste_x = Spalte + 1
Case 2 : Taste_x = Spalte + 4
Case 3 : Taste_x = Spalte + 7
Case 4 : Taste_x = Spalte + 10
End Select
Return
Wollte nur Locale Variablen, geht aber nicht so. 
Wenn ich die Variablen: Taste_x, Zeile, Spalte mit Dim deklariere, schreit er nicht 
Es ist zum Mäuse melken
Lesezeichen