hitn_cry
12.03.2007, 15:31
Hallo Leute,
da ich immer Probleme beim Tastenauslesen mit dem Rn control hatte,
habe ich mir überlegt ein kleines Tastenauslese Program zu schreiben und mir mal die Werte aunzusehen die bei gedrückter Taste anliegen.
Dies sieht nun so aus
$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600
Config Adc = Single , Prescaler = Auto
Config Pina.7 = Input
Porta.7 = 1
Dim I As Byte
Dim W As Word
Print "Tasten werden ausgelesen"
Print
Print
Do
Start Adc
W = Getadc(7)
If W < 1023 Then
Print "Ausgelesener Wert fuer gedrueckte Taste"
Print
Print "@@@@ " ; W ; " @@@@"
Print
End If
Waitms 100
Loop
End
Mein Problem so funktioniert das ganze jetzt, jedoch hatte ich vorher die waitms 100 am Ende nicht drin. Da warf er mir sobald ich eine Taste drücke erst den richtigen wert aus, und dann ununterbrochen 1023.
Hab durch Probieren halt mal diesen Wait gesetzt und jetzt gehts.
Aber würd gern wissen warum ? :-D
da ich immer Probleme beim Tastenauslesen mit dem Rn control hatte,
habe ich mir überlegt ein kleines Tastenauslese Program zu schreiben und mir mal die Werte aunzusehen die bei gedrückter Taste anliegen.
Dies sieht nun so aus
$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600
Config Adc = Single , Prescaler = Auto
Config Pina.7 = Input
Porta.7 = 1
Dim I As Byte
Dim W As Word
Print "Tasten werden ausgelesen"
Do
Start Adc
W = Getadc(7)
If W < 1023 Then
Print "Ausgelesener Wert fuer gedrueckte Taste"
Print "@@@@ " ; W ; " @@@@"
End If
Waitms 100
Loop
End
Mein Problem so funktioniert das ganze jetzt, jedoch hatte ich vorher die waitms 100 am Ende nicht drin. Da warf er mir sobald ich eine Taste drücke erst den richtigen wert aus, und dann ununterbrochen 1023.
Hab durch Probieren halt mal diesen Wait gesetzt und jetzt gehts.
Aber würd gern wissen warum ? :-D