PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Encoder (IGR) auslesen??



focobot
19.09.2004, 19:59
hat schon mal jemand einen IGR mit Bascom ausgelesen? Ich möchte statt einer Tastatur nur ein solches IGR als Eingabedevice nutzen. Den Code für GnuC habe ich schon, wollte aber alles in Bascom programmieren.

24.09.2004, 12:14
'-------------------------------------------------------------------------------
' IGR.BAS
' File : IGR.BAS
' Autor : Michael Ehrhardt
' Version : 1.0
' CPU : AT90S2313
' Begin : 26.09.2002
' Update : 27.09.2002
' Einlesen des IGR's MB101B-100 MEGATRON Elektronik AG&Co.
'-------------------------------------------------------------------------------
Igr_a Alias Pind.2 ' IGR-Kanal A auf D2
Igr_b Alias Pind.3 ' IGR-Kanal B auf D3

Dim Count As Integer

Config Igr_a = Input ' Input für IGR-Kanal A (INT0)
Config Igr_b = Input ' Input für IGR-Kanal B

On Int0 Int0_int ' initialisiert den INT0 Interrupt
Config Int0 = Falling ' Interrupt auf fallende Flanke

'Portd.2 = 1 ' IGR-Kanal A auf High (Pull Up)
'Portd.3 = 1 ' IGR-Kanla B auf High (Pull Up)

Enable Interrupts ' gibt Interrupts generel frei
Enable Int0 ' gibt INT0 frei

Count = 0 ' Zähler = 0
Do
Print Count ' gibt Zähler seriell aus
Loop
End


' Interrupt Handler für Int0, ausgelöst durch fallende Flanke am IGR-Kanal A----
Int0_int:
Disable Int0 ' sperre INT0 während der Abarbeitung
If Igr_b = 1 Then Incr Count Else Decr Count
Delay ' 1000 µs warten zum Entprellen
Enable Int0 ' gibt INT0 wieder frei
Return ' Interruptreturn
' Ende Int0 --------------------------------------------------------------------

focobot
26.09.2004, 16:22
Dank schön, werds Montag gleich mal testen.