www.mikrocontroller.net

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


Autor: Klausy (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Klausy (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: Dietmar E (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Klausy (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klausy wrote:
> Es soll eine 1MHz Quadrature Encoder auswertung gemacht werden.

Uff. 1Mhz ist natürlich schon heftig

Autor: Klausy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schnell Rotieren und dabei hoch auflösen...

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Klausy (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.