|
Gepost op zondag 19 Juli 2009 15:35:18 |
 |
Ik heb je titel even aangepast.
Een rotary encoder geeft 2 signalen af die 90? in fase verschoven zijn tegenover elkaar. Elke puls geeft een hoekverdraaiing weer. Als eerst A hoog wordt en dan B is het rechtsom. Wordt eerst B hoog en dan A dan is het linksom. (dit ter voorbeeld, kan ook andersom zijn natuurlijk)
Voor meer info zie:
http://en.wikipedia.org/wiki/Rotary_encoder />
PS: Je had je titel volledig in hoofdletters staan. Ik heb deze terug in kleine letters gezet. Gelieve hier de volgende keer even op te letten. |
Met vriendelijke groet, Stynus ||| www.elektronicastynus.be |
|
Gepost op zondag 19 Juli 2009 16:08:56 |
 |
ok stynus eventjes kijken hoe het juist werkt en hoe ik dit in een 628 kan defineren zal moeten een stukje schrijven waar op het moment de rotary verdraaid word het progr gestopt word en eerst naar de up en down instructies zal gaan dank je voor de uitleg en link.... grtzz Alain |
|
|
Gepost op zondag 19 Juli 2009 17:53:00 |
 |
moet dit in picbasic zijn
Code |
'****************************************************************
'* Name : rotary encoder.BAS *
'* Author : R Hendriks *
'* Notice : Copyright (c) 2008 www.rhendriks.nl *
'* : All Rights Reserved *
'* Date : 13-12-2008 *
'* Version : 1.0 *
'* Notes : rotery encoder *
'* : *
'****************************************************************
DEVICE 16F628A
CONFIG INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF,MCLRE_OFF
On_interrupt rotary
SYMBOL INTF = INTCON.1 ' RB0 External Interrupt Flag
SYMBOL INTE = INTCON.4 ' RB0 External Interrupt Enable
SYMBOL GIE = INTCON.7 ' Global Interrupt Enable
SYMBOL led = PORTA.0
DIM teller AS BYTE
ALL_DIGITAL true
teller=0
DELAYMS 500
CLS
LOW led
GOTO over_irq
rotary:
IF PORTB.0 = 1 THEN
IF PORTB.1 = 1 THEN
DEC teller
ELSE
INC teller
ENDIF
TOGGLE led
ENDIF
INTF=0
CONTEXT RESTORE
over_irq:
GIE=0
INTE=1
GIE=1
loop:
DELAYMS 100
PRINT AT 1,1, DEC teller," "
GOTO loop
END
|
rotary met pull-ups 10k naar plus
middelste poot naar massa
als hij niet werkt dan de ingangen omwisselen |
|
|
Gepost op zondag 26 Juli 2009 10:37:52 |
 |
dat werkt inderdaad mooi op men lcd'tje met die encoder die ik heb testboard is easypic3 en pic 16f627 werkt perfect nu kijken om die juiste poorten te dfineren in men basic prg en dan een routine als ik draai dat het prg stopt en naar de encoder kijkt wat ie doet thksss |
|
|
Gepost op zondag 26 Juli 2009 11:07:32 |
 |
Dat doet dit programma eigenlijk al . De rotary encoder zit op de interrupt ingang (je kan die dus niet op een andere pin aansluiten!). Als je draait genereer je interrupt en gaat je microcontroller van het gewone programma naar rotary springen en als dat progje weer is afgelopen terug naar het hoofdprogramma waar het eerst bezig wat. |
Met vriendelijke groet, Stynus ||| www.elektronicastynus.be |
|
|
|
|