µC mit up/down Counter und SPI

#624910
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
Gast #624925
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?
#624931
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
Gast #624951
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...
#624974
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
Gast #624997
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!
#625336
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren