Forum: Mikrocontroller und Digitale Elektronik µC mit up/down Counter und SPI


von Klausy (Gast)


Lesenswert?

Moin,
ich bin auf der Suche nach einem 8Bit µC mit up/down Counter
(wie beim AT89C55) nur mit zusätzlicher SPI Schnittstelle.
Kennt jemand einen? Hersteller etc. is erstmal egal!

von Falk B. (falk)


Lesenswert?

@ Klausy (Gast)
>ich bin auf der Suche nach einem 8Bit µC mit up/down Counter
>(wie beim AT89C55) nur mit zusätzlicher SPI Schnittstelle.

Was ist dieser ominöse Up/Down Counter? Jeder uC kann eine Variable 
erhöhen/verringern.
Oder Pulse per Hardware Zählen? Kann manmit einem Timer/Counter.
Was willst du damit machen? Einen Incrementalgeber auswerten?
Kann nahezu jeder uC, somit auch jeder AVR. SPI haben fast alle AVRs.

Mfg
Falk

von Klausy (Gast)


Lesenswert?

Ne, beim UP/down counter hab ich eine zwiten Pin für die 
Richtungskontrolle.
Siehe At89C55,(T2_EX Pin) der macht mir automatisch die Zählrichtung!

von Dietmar E (Gast)


Lesenswert?

> Ne, beim UP/down counter hab ich eine zwiten Pin für die
Richtungskontrolle.

Wieso nicht an beiden Pins zählen (Rauf-Impulse an einem, Runter-Impulse 
am anderen) und die Differenz in der Software bilden?

von Karl H. (kbuchegg)


Lesenswert?

Klausy wrote:
> Ne, beim UP/down counter hab ich eine zwiten Pin für die
> Richtungskontrolle.
> Siehe At89C55,(T2_EX Pin) der macht mir automatisch die Zählrichtung!

Na ja. Das nachzuprogrammieren ist ja nicht gerade Raketentechnik

von Falk B. (falk)


Lesenswert?

@  Karl heinz Buchegger (kbuchegg)

>> Siehe At89C55,(T2_EX Pin) der macht mir automatisch die Zählrichtung!
>Na ja. Das nachzuprogrammieren ist ja nicht gerade Raketentechnik

Bei 1 MHz wird das schon eher eng. Die Frage ist nach wie vor. Was soll 
damit gemacht werden? Zähler mit Up/Down Eingang gibts auch als CMOS-IC.

MfG
Falk

von Klausy (Gast)


Lesenswert?

Es soll eine 1MHz Quadrature Encoder auswertung gemacht werden.
Und ich denk mir wenn ich das softwaremäßig (über ext. Int) und 2.Pin 
eng wird, wenn ich zusätzlich daten mit 2MHz über den SPI schiebe.
Aber ich glaub ich werd's einfach mal probieren...

von Karl H. (kbuchegg)


Lesenswert?

Klausy wrote:
> Es soll eine 1MHz Quadrature Encoder auswertung gemacht werden.

Uff. 1Mhz ist natürlich schon heftig

von Klausy (Gast)


Lesenswert?

Schnell Rotieren und dabei hoch auflösen...

von Falk B. (falk)


Lesenswert?

@ Klausy (Gast)

>Es soll eine 1MHz Quadrature Encoder auswertung gemacht werden.

Tststs, du willst doch nicht etwas eine Spur als Takteingang und die 
andere als Up/Down Eingang nutzen?

DAS IST MURKS!

Wurde lang und breit diskutiert.

Beitrag "Drehgeber auslesen"

Drehimpulsgeber

Einen 1 MHz Quadraturdecoder macht man sinnvollerweise in Hardware, 
entweder per speziellem IC oder CPLD.

>>Aber ich glaub ich werd's einfach mal probieren...

Ich empfehle erstmal Grundlagenstudium + eine Überschlagsrechnung. Dann 
ist eine Softwarelösung schnll vom Tisch.

MfG
Falk

von Klausy (Gast)


Lesenswert?

>Einen 1 MHz Quadraturdecoder macht man sinnvollerweise in Hardware,
>entweder per speziellem IC oder CPLD.

CPLD is gut, hab ich aber keine erfahrung mit...
Kennt Jemand ein spezielles IC außer LS7266R1, daß is zu teuer und 
unpraktisch wegen Parallel_Bus.
Dann hab ich noch GEN-2212-5 gefunden... hab aber die funktion von dem 
Shiftregister noch nicht ganz verstanden!

von Falk B. (falk)


Lesenswert?

@ Klausy (Gast)

>>Einen 1 MHz Quadraturdecoder macht man sinnvollerweise in Hardware,
>>entweder per speziellem IC oder CPLD.

>CPLD is gut, hab ich aber keine erfahrung mit...

Naja, dann wäre jetzt doch eine guter Zeitpunkt damit anzufangen.

>Dann hab ich noch GEN-2212-5 gefunden... hab aber die funktion von dem
>Shiftregister noch nicht ganz verstanden!

Na das ist doch ganz einfach. Über CHSLCT wählst du einen der beiden 
12-Bit Zähler aus, welcher ins Schieberegister geladen werden soll.

Dann setzt du PL_SR auf HIGH und gibst einen Takt auf CLK_SR, das lädt 
das Schieberegister. Das LSB erscheint direkt am Ausgang CNT_DATA. Nun 
machst du PL_SR wieder LOW Und mit 11 weiteren Takten an CLK_SR taktest 
du die Daten aus CNT_DATA.

Was mir allerdings nciht ganz klar ist, wie die Synchronisation zwischen 
Dem Encodertakt CLK_QD und dem Schieberegistertakt CLK_SR gelöst ist. 
Denn man kann nicht einfach so Daten über asycnhrone Taktgrenzen hinweg 
bewegen!

MFG
Falk

von Peter D. (peda)


Lesenswert?

Klausy wrote:
> Es soll eine 1MHz Quadrature Encoder auswertung gemacht werden.

Wow.
Da würde mich mal die mechanische Seite interessieren.

Bei nem 1000-Schritt Enkoder sind das immerhin 60.000 U/min.
Muß ganz schön laut pfeifen das Ding.


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
Noch kein Account? Hier anmelden.