Datenaustausch zwischen 2 MSP430

Gast #1032598
Lesenswert?
• ▲
▼
Hallo,

ich habe zwei msp430, die unabhängig voneinander verschiedene Sensoren 
per SPI_0 auslesen.

Darüber hinaus soll jedoch auch ein Datenaustausch zwischen den beiden 
msp430 über SPI_1 stattfinden; also einer dann als Master, der andere 
als Slave fungieren.

Mein Ansatz ist nun folgender: Sobald eine bestimmte Datenmenge 
vorliegt, soll per Interrupt am USART-Port des zweiten msp ein Reset 
durchgeführt werden und dieser dann in den Slave-Modus gesetzt werden. 
Anschließend schiebt der Slave seine Sensordaten in den TX-Buffer und 
der Master kann diese empfangen.

Meine Fragen hierzu nun: Kann ich den Datenaustausch zwischen den beiden 
msp430 so durchführen? Sind die vier Leitungen, also MOSI, MISO, CLOCK 
und CHIP_SELECT (in diesem Fall der Interrupt), ausreichend oder 
benötige ich noch irgendwelche Steuerleitungen?

Vielen Dank für eure Hinweise,
Burli
Gast #1032608
Lesenswert?
• ▲
▼
Chip_Select (oder STE) ist unnötig, da nur ein Slave vorhanden ist, es 
muss also keine Slave-Auswahl erfolgen. Als Interrupt braucht es auch 
keine extra Steuerleitung. Bei Empfang eines Datenbytes kann die SPI des 
Slave selbst einen IRQ auslösen.
Gast #1032626
Lesenswert?
• ▲
▼
Hi Stefan,

ich denke schon, dass ich die Interrupt-Leitung benötige. Der zweitweise 
msp430-Slave ist ja im "Normalfall" auch ein Master und liest die 
Sensoren aus.
Ich hab das wohl ein wenig zu kurz ausgeführt. Sorry. Also an SPI_0 hat 
jeder der beiden MSPs 4 Sensoren hängen. Diese lese ich ungefähr 5 
Sekunden aus. Dann soll der eine MSP in den Slave-Modus gehen und die 
Daten an den anderen MSP über SPI_1 senden! An SPI_1 hängt aber 
zusätzlich noch eine SD-Karte!

Gruss, Burli
Gast #1035590
Lesenswert?
• ▲
▼
Wo ist das Problem?
Du brauchst MOSI, MISO und CLK !
Jetzt hängt es davon ab, ob der zweite MSP und die SD-Card jeweils den 
gleichen Pegel an Chip_select haben wollen. Dann brauchst Du zwei 
CS-Leitungen um zwischen den beiden auszuwählen.
Wenn Du die zwei Kameraden aber überreden kannst, auf unterschiedliche 
CS-Pegel zu reagieren, reicht eine CS-Leitung.
Interruptleitung halte ich immer noch für unnötig, da der sendende MSP 
selbst weiß, wann er senden will und der empfangende immer noch einen 
IRQ beim Datenempfang bekommt!

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.