Vier Master quälen einen Slave

Pitlem

Neues Mitglied
05. Sep. 2008
21
0
1
Sprachen
Hi,

hat jemand schon mal versucht mit vier Master einen Slave zu bedienen.

Alles über SPI oder USI.

Mein Problem sind vier Schrittmotortreiber die einen Atmega bedienen.
In den Treiber möchte ich keinen Int mehr verwenden, da alles sehr zeitkritisch ist. Die Treiber sollen also eine Datenübertragung starten die dann im AtMega verarbeitet wird. Geschwindigkeit, Schrittzahl, Auflösung der Steps usw.

Spi und USI Prinzip ist klar.

Ich habe vor, von jedem Treiber einen Ausgang auf einen Int-Eingang des ATMega zu legen und damit die Datenübertragung zu starten.

Kann's da Probleme geben?

Gruß Pit
 
Hallo Pit,

so wie ich dich verstanden habe, befindet sich der AVR im SPI Slave Mode und empfängt von vier SPI-Master Daten.

Sind die Master selbst synchronisiert, gibt einer den SPI-Clock vor? Können die Master einzeln enabled/disabled werden? Ansonsten kommt es zur Kollision.

Hast du mal ein Beispiel, wie du dir die Verschaltung vorstellst?

Grüße,
Dirk
 
Hallo Dirk,

ich denk gerade prinzipell darüber nach wie ich es am besten lösen kann.

Aber so wie du schon schreibst, hab ich es mit gedacht.

Die vier Master werden hintereinander vom Slave mit einem Soft CS enabled und beginnen dann Daten zu senden. Di, Do und USCK als Bus.

Die ISR für die µStepp's ist schon 1200Zyklen lang und es bleiben bei schnellster Umdrehungszahl der Stepper noch ca. 500 Zyklen über. In dieser Zeit muss die Übertragung der µSteppposition(Long) und einlesen der Geschwindigkeit (Word),neu Stepperposition(long),Schrittauflösung(Byte),Schrittrichtung(Byte) fehlerfrei erfolgen . Ich komm da so auf min. 60 Zyklen.

In dieser Zeit darf der Timerinterrupt natürlich nicht zuschlagen und stoppen geht auch nicht, damit würde ich die Umdrehungsgschwindigkeit ändern. Geht also nur direkt hinter dem Interrupt.

Muss im Datenbatt vom Attiny aber noch mal genauer nachlesen.

Gruß Pit
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)