Asuro91
05.06.2010, 22:47
hi leute
ich hab mal wieder mit ner einfachen sache probleme. Ich hab mir ne Platine für en tacho den ich gerade bau geätzt und hab da jetzt drei taster bei denen ich die internen pull up widerstände nutze. Dann hab ich zum test ob alles geht eine einfach Abfrage geschrieben, in der immer wenn eine taste gedrückt is, mit schrift angezeigtl. Das problem ist das ohne das ich was drücke das display immer anzeigt das immer abwechselnt alle Tasten gedrückt werden obwohl ich noch nichts gemacht hab. Kann des an den internen widerständen liegen, dass der da nicht immer en richtigen Pegel hat??
danke schon mal für eure hilfe
$regfile = "m32def.dat" 'für Mega32
$crystal = 16000000 'für 16MHz Quarz
Config Pinc.5 = Input
Menue_taster_l Alias Pinc.5
Config Pina.7 = Input
Menue_taster_r Alias Pina.7
Config Pinc.6 = Input
Menue_taster_reset Alias Pinc.6
Menue_taster_l = 1
Menue_taster_r = 1
Menue_taster_reset = 1
Config Lcd = 20 * 4
Config Lcdpin = Pin , Db4 = Portc.1 , Db5 = Porta.3 , Db6 = Portc.2 , Db7 = Porta.4 , E = Porta.2 , Rs = Portc.0
Config Lcdbus = 4
Cls
Waitms 10
Initlcd
Waitms 10
Cls
Main:
Locate 1 , 1
Lcd "Hallo Dies Ist Ein Test"
Do
If Menue_taster_l = 0 Then
Waitms 10
If Menue_taster_l = 0 Then
Cls
Locate 4 , 1
Lcd "Menue taste l"
Wait 5
Cls
End If
End If
If Menue_taster_r = 0 Then
Waitms 10
If Menue_taster_r = 0 Then
Cls
Locate 4 , 1
Lcd " Menue taster r"
Wait 5
Cls
End If
End If
If Menue_taster_reset = 0 Then
Waitms 10
If Menue_taster_reset = 0 Then
Cls
Locate 4 , 1
Lcd "Menue taster Reset"
Wait 5
Cls
End If
End If
loop
End
ich hab mal wieder mit ner einfachen sache probleme. Ich hab mir ne Platine für en tacho den ich gerade bau geätzt und hab da jetzt drei taster bei denen ich die internen pull up widerstände nutze. Dann hab ich zum test ob alles geht eine einfach Abfrage geschrieben, in der immer wenn eine taste gedrückt is, mit schrift angezeigtl. Das problem ist das ohne das ich was drücke das display immer anzeigt das immer abwechselnt alle Tasten gedrückt werden obwohl ich noch nichts gemacht hab. Kann des an den internen widerständen liegen, dass der da nicht immer en richtigen Pegel hat??
danke schon mal für eure hilfe
$regfile = "m32def.dat" 'für Mega32
$crystal = 16000000 'für 16MHz Quarz
Config Pinc.5 = Input
Menue_taster_l Alias Pinc.5
Config Pina.7 = Input
Menue_taster_r Alias Pina.7
Config Pinc.6 = Input
Menue_taster_reset Alias Pinc.6
Menue_taster_l = 1
Menue_taster_r = 1
Menue_taster_reset = 1
Config Lcd = 20 * 4
Config Lcdpin = Pin , Db4 = Portc.1 , Db5 = Porta.3 , Db6 = Portc.2 , Db7 = Porta.4 , E = Porta.2 , Rs = Portc.0
Config Lcdbus = 4
Cls
Waitms 10
Initlcd
Waitms 10
Cls
Main:
Locate 1 , 1
Lcd "Hallo Dies Ist Ein Test"
Do
If Menue_taster_l = 0 Then
Waitms 10
If Menue_taster_l = 0 Then
Cls
Locate 4 , 1
Lcd "Menue taste l"
Wait 5
Cls
End If
End If
If Menue_taster_r = 0 Then
Waitms 10
If Menue_taster_r = 0 Then
Cls
Locate 4 , 1
Lcd " Menue taster r"
Wait 5
Cls
End If
End If
If Menue_taster_reset = 0 Then
Waitms 10
If Menue_taster_reset = 0 Then
Cls
Locate 4 , 1
Lcd "Menue taster Reset"
Wait 5
Cls
End If
End If
loop
End