elektronik-web.de


Auswertung Drehencoder

Von Pollin Electronic gab's (gibt es) fuer wenig Geld den Drehencoder Panasonic EVEQDBRL416B.
Nunja, in meiner IC-Kiste waberte noch ein ATMega8 herum. Diesen kurzerhand auf ein Stueck Loetstreifenraster aufgeloetet. Noch die ISP, einen Port fuer die Aussenwelt, drei LEDs und etwas drumherum dazu (Auf einen Schaltplan verzichte ich hier - anhand des aufgefuehrten Listings laesst sich das leicht nachvollziehen).
Je nach Drehrichtung wird nun die eine oder andere LED jeweils fuer einige Milllisekunden eingeschaltet. Ein Druck auf die Achse des Drehencoders (Enter) sorgt fuer das Aufleuchten der dritten LED.
Solch ein Encoder laesst sich also sehr leicht auswerten. Koennte somit auch ein adaequater Ersatz fuer ein 3x4 Tastenfeld sein.

Programmbeispiel in Bascom:


$regfile = "m8def.dat"
$crystal = 16000000
Config Portc = Output
Config Portd = Input

Dim B As Byte
Portd = 255

Do
 Portc = &B11111111
 B = Encoder(pind.1 , Pind.0 , Links , Rechts , 0)
 If Pind.2 = 0 Then
  Gosub Enter
 End If
 Waitms 5
Loop

End

Links:
 Portc = &B11110110
 Waitms 5
Return

Rechts:
 Portc = &B11101101
 Waitms 5
Return

Enter:
 Portc = &B11011011
 Waitms 5
Return