Hi! Ich hab mir vor kurzem mal so einen Drehencoder kauft(oder wie auch immer sie genannt werden, ich mein die dinger die in der Regel 20-30 Einrastungen haben, womit man dann z.b. eine digitale lautstärkeregelung machen kann.) Nun hab ich endlich verstanden wie das mit dem Gray code geht, aber gleichzeitig ist ein neues Problem enstanden, ich hab irgendwo gelesen das die Dinger ähnlich wie eine mechanische Maus funktionieren. Also mit solch kleinen lichtschranken. Folglich muss in dem Ding ja eine Led drin sein und ich keine Ahnung wie ich das Ding nun anschliessen muss. Das Datenblatt von ALPS hat leider auch nur Infos wie Masse und Anschlüsse drinn. Wobei dann bei denn Anschlüssen einfach A, B, C steht. Ich hab also drei Anschlüsse, nun, muss da einer die Spannung für eine Led bekommen und an den anderen beiden hab ich dann die Ausgangssignale, oder wie geht das? Einen Schaltplan in dem das ganze drin ist konnte ich leider auch noch nicht finden :-( Hilfeeee :) mfg Nik
Es gibt optische Drehgeber, die funktionieren in der Tat wie eine Maus. Ich denke aber, du hast einen ganz normalen mechanischen Drehgeber. A und B sind wohl deine beiden Signale, die du an POrtpins anschließt und C wird "Common" sein. Den schließt du entweder gegen GND oder VCC, gegen diesen Pin werden A und B beim drehen geschaltet.
Hallo, du meinst sicher ein Drehpoti--> Ich habe die Auswertung so gemacht: Den Kontakt in der mitte habe ich auf Masse gelegt links und rechts jeweils an einen Interrupt (mit Pullup). Wenn ein Interrupt passiert schaut der MCU was als nächstes passiert somit habe ich die drehrichtung und die Pulse (Wenn A dann muss B folgen <--> Wenn B muss A folgen)
Mit Interrupt ist schlecht, da die Dinger prellen wie Sau. Besser im Timerinterrupt auswerten, siehe Codesammlung.
Cool danke, dann kann ich da ja anscheinend einfach mal 5 volt ohne Sorge reinlassen...:P Die Auswertung hab ich mir auch so in der Art überlegt, einfach etwa 100 mal in der sek. mit nem Timerinterrupt die Eingänge abzfragen, um dann auszuwerten. Vielen dank, dann kanns ja los gehen ;-)
in der Codesammlung ist ein langer Thread zum Thema 'Drehgeber auslesen', da sind auch mehrere Codebeispiele für den AVR zu finden.
hmm mist :( ich hab gerade mal durchgemessen(alle drei Möglichkeiten) und das Ding ist entweder futsch oder ich machs falsch. Also ich hab zum Testen einfach an einen der Anschlüsse mal 5volt gehängt und nacher ein bisschen gedreht und gemessen an welchen Anschlüssen ich dann was für signale bekomme. Und die sind einfach jedesmal entweder beide null oder beide eins. Und dies bei allen drei KOmbinationen. Nun hab ich da mit dem Gray code was falsch verstanden und immer zwei gray codes werden bei einem "click" ausgegeben oder wie? Dann wäre es ja logisch, dass ich immer zweimal 0 oder zweimal 1 habe... Ich habe aber eigentlich gedacht, das die 4 mit dem Gray code möglichen kombinationen alle nacheinander rauskommen, eine bei jeder Rastung und nicht zwei-hab ich da was flasch verstanden?
Nur zwischen den Rastungen sind die Signale 01 und 10 (AB). Was den Anschluss angeht ist A = Kanal A, B = Kanal B und C der Button (Druckknopf). Ob nun mit Toggle-Interrupt (Pin Change) oder mit Timer ist eigentlich egal allerdings sollte man in beiden Fällen Hard- oder Softwaretechnisch entprellen. MfG Andi
es ist tatsächlich meistens so dass der drehencoder je rastung zwei gray code schritte weiterhüpft.... gruss robin
Ich habe damit auch mahl rum gespielt und folgendes functioniert recht gut: Der regler hat 2 ausgangen, A und B. Beim drehen, wirt je nach drehrichtung erst A, dan B oder erst B dan A geschalted. Die einfachste lossung ist jetzt beide signalen, A und B uber 3k3 an 5volt zu schalten und mit 100nF an masse. Der mittlere anschlus der regler auch an masse. Jetzt EINER der beide (a oder b) an ein interupt anschlus, der in die lage ist einer potential anderung zu agieren. Der andere anschlus an ein normaler eingang. Beim Interupt beide signalen einlesen und uberprufen. Sinnt sie gleich (a=b) richting a, sinnt sie nicht gleich (a<>b) richting b. So einfach geht daß!! Durch die condensatoren hatte ich auch kein problem mit prellen! Viel erfolg, Fred
Hey vielend Dank Fred, ich habs nun auch mal so gemacht und im prinzip funktioniert das schon sehr gut, jedenfalls mit der einen drehrichtung ;) Ein Problem hab ich aber noch, ich hab einen EC-11B von ALPS, der anscheinend ein wenig anders funktioniert als alle anderen drehgeber :S Der schaltet pro schritt doch nur irgendwie einen Gray code weiter (nach datenblatt) Allerdings ist das dort nur beschrieben, so wie das signal aussieht kann ich mir leider nicht vorstellen. Aber vielleicht hat ja mal jemand von euch einen dieser exotischen Drehgeber erfolgreich in Betrieb genommen, und kann mir mitteilen wie das Ding funktioniert ?
Hallo Nik, Ich könnte mir daß mahl ansehen. Schicke mir doch mahl das datenblatt davon uber mail, oder ein link wo ich es mir ansehen kann. Denn ich verwendet habe stammt von Conrad. Andere sachen, andere lossungen. :-)
Hallo Forum! Falls jemand auch noch das Problem mit dem ALPS EC11B Encoder hat, hier die mit dem dig. Oszi gemessenen Spannungsverläufe (entsprechen NICHT dem Datenblatt!) Rechtsdrehung: A --__-- B --_--- Linksdrehung: A --__-- B ---_-- Dabei rasten A und B auf jeweils statisch 1 Schaltung war hierbei A und B mit PullUp, C auf GND MfG Tobi
@Tobi, das sieht sehr nach falschem Anschluß aus. Leg mal A auf GND und miß an B und C, dann sollte es stimmen. Peter
@Peter: Nein, das ist schon richtig so. Steht im Datenblatt und funktioniert hier bei mir auch einwandfrei.
@Michi ich meinte auch Tobi und der sagt ja: "entsprechen NICHT dem Datenblatt!" Peter
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.