Jump to content

Recommended Posts

Geschrieben

Hallo,

 

eine Frage zur internen Interrupt-Behandlung:

 

Ein Atmel SAM3S kann ja (beispielsweise) bei Änderungen an einem seiner (digitalen) Eingänge einen Interrupt auslösen. Das kann man ja auch in Eurem API nutzen.

 

Aber wie funktioniert das über Brick-Grenzen hinweg? Geht das über die Signalleitungen "Interrupt 0-2" des Stack Data Connectors?

Ich frage das, weil die laut Doku

1. scheinbar nur für Master-Extensions genutzt werden (oder nicht?), und

2. ja nur als "Interrupt Outputs" beschrieben sind (ich denke mal, Output aus Sicht des Masters, oder?)

 

Wird da vielleicht auch nur gepollt?

 

Viele Grüße,

Lars

Geschrieben

Ganz unterschiedlich.

 

Bricklets haben Plugins auf dem EEPROM die vom Brick ausgelesen und ausgeführt werden. D.h. da können die Interrupts ganz normal vom Prozessor ausgelesen werden.

 

Bricks die in einem Stack auf einem Master Brick sitzen kommunizieren über SPI mit dem Master, d.h. der Prozessor vom Stack Teilnehmer bekommt einen Interrupt und speichert den solange bis er vom Master Brick per SPI angesprochen wird.

 

Bei Kommunikation über Extensions gibt es wiederum "echte" Interrupts (Da die Latenz über Funkkommunikation sowieso schon so hoch ist, ist das dort notwendig).

 

Oben drüber sitzt dann nochmal das USB Protokoll. Bei USB wird leider immer vom PC gepollt, eine USB Datenübertragung kann nie von einem USB Device gestartet werden.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...