Hi Sven,
welche Drehgeber ?? Es gibt mehr als nur einen Typ.
Tachogenerator, Schlitzscheibe, Codescheibe ??
seriel oder parallele Datenausgabe ??
Wie Nummer 5 schon sagte : 'Brauche Input'
Klaus
Wer kann mir sagen wie ich diese drehgeber auswerte ist glaube ich der Gray code...
Ich habe noch einen IRQ und 3 Ports am atmel zur verfügung...
Am liebsten wäre mir aber eine Diskrete Lösung wo ich den Drehgeber anschließe und ich 3 digitale ausgänge habe (Rechts Links Drücken)
Habe so eine schaltung schon mal gesehen weiß aber leider nicht mehr wo...
Gruß Sven
Hi Sven,
welche Drehgeber ?? Es gibt mehr als nur einen Typ.
Tachogenerator, Schlitzscheibe, Codescheibe ??
seriel oder parallele Datenausgabe ??
Wie Nummer 5 schon sagte : 'Brauche Input'
Klaus
Eine verrückte Idee ist besser als keine
Den hier ...
http://de.farnell.com/jsp/endecaSear...=3282235&N=401
hoffe mal das der link geht ansonsten
Bestellnummer 3282235 bei www.farnell.de
# mechanischer Low-Cost encoder
# 2 oder 4 bit Grey-code
# 2 bit, Kanal L eilt Kanal R um 90 voraus, CW Rotation
# 4 bit Ausgang, absolut
Habe den 2 Bit Gray Typ auf dem schreibtisch liegen.
Ich glaube ich habe es hinbekommen ... kann das nur gerade nicht testen ...
hier mal der Code
So also meine Frage hat sich erledigt es funktioniert bestens ... Suche aber trotzdem noch eine reine hardware version (Ohne CPU) fals jemand lust hat den code zu verbesser kann er das gerne tun ...
Hi sme-bbg,
sorry Nachtschichten bin ich nicht mehr gewöhnt. Ich sehe mir mal den BasCode an, vielleicht kann ich Dir wenigstens da noch helfen.
Klaus
Eine verrückte Idee ist besser als keine
Hi Sven,
meine Analysen sind fertig. Unter der Annahme, das Du Bascom AVR verwendest habe ich folgende Anregungen :
1) Es fehlt die $regfile-Direktive. Hattest Du keine Fehlermeldungen ?? Ich hatte gleich vier.
2) Für die (De-)Codierung von Greycode gibt es die Befehle Grey2Bin und Bin2Grey. Das macht die weiteren Berechnungen einfacher.
3) In dem BasFile wird die Position im aktuellen und im letzten Zyklus berechnet. Wenn Du jetzt mit der Differenz weiter rechnen würdest, könnten auch größere Positionsprünge (>1) verarbeitet werden. Das wird besonders bei Greycode mit mehr als 2Bit Breite interressant.
4) Die Kaskadierung von mehr als 4-5 If-Then-Bedingungen sollte vermieden werden, da der Code sonst schnell an Übersicht verliert. Schau Dir mal die Select-Case-Anweisung an. Das macht die ganze Sache flexibler und übersichtlicher.
5) Die spärlichen Kommentare führe ich mal auf die späte (Programmier-)Stunde zurück und habe sie hiermit offiziell nicht erwähnt.
Das war auch schon alles.
Grüße Klaus
PS: ich erwähne einfach mal so, das dies mein 50.tes Posting ist
Eine verrückte Idee ist besser als keine
Grey2Bin und Bin2Grey .. ich frage mich was bascon noch alles für befehler versteckt.
Einfach mal in die Hilfedatei und die Beispieldateien rein schaun.
Dafür sind die Dinger da
Eine verrückte Idee ist besser als keine
Lesezeichen