mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Software SPI Slave?


Autor: Hans-Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
in meinem System gibt es einen AT324p der SPI Master über ein paar 
Bausteine ist. Allerdings soll der µC in einem zweiten SPI Bus als Slave 
hängen. Leider habe ich keine Uart oder SPI Pins mehr frei, sondern nur 
noch Pin Change Interrupts. Ist es möglich darüber eine Software SPI zu 
implementieren / realisieren ?

Oder gibt es sowas schon ?

Vielen Dank
Hans

Autor: Hans-Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
keiner eine Idee ?

Autor: Tauwetter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du könntest die Hardware SPI für die Slave-Funktion benutzen und den 
Master per Software realisieren. Dann sollte es keine Probleme mit dem 
Timing bei hohen Taktraten geben.

Autor: Hans-Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Tauwetter (mei wär des schee) :-)
des würde ich tun, wenn die zweite SPI net zusätzlich rein gezogen 
werden sollte an GPIOs in die bestehende Hardware.

Autor: GG (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Servus,

Der Atxmega32a4 ist dafür bestens geeigned. 2 mal SPI. Code nicht 
schwieriger als bei herkömmlichen Atmegas. Leider nur mit 3,3 Volt 
zubetreiben.

Gruß GG

Autor: Tauwetter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hi Tauwetter (mei wär des schee) :-)

Das sag ich Dir! Vom Schneeschieben habe ich schon Blasen an der Hand.


>des würde ich tun, wenn die zweite SPI net zusätzlich rein gezogen
>werden sollte an GPIOs in die bestehende Hardware.

Na gut, dann kannst Du das auch per PC-Int und Software machen. Die 
Übertragungsrate sollte aber 'konservativ' gewählt werden, damit kein 
Bit verloren geht. 10-20 kBits/s sollten problemlos gehen. Darüber 
hinaus hängt es davon ab, dass andere Int-Routinen zügig bedient werden.
Der µC läuft hoffentlich mit hoher Taktfrequenz (16MHz)?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
SPI-Slave muß das HW-SPI sein oder die Bitrate extrem langsam.

SPI-Master ist kinderleicht als SW, kannst aber auch ne UART nehmen.


Peter

Autor: Hans-Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm des klingt jetzt alles net so berauschend.

Aber kann ich über eine USART einen SPI-Slave nachbilden?
Mein µC (der als Slave) hängt mit MISO und MOSI an TX / RX.
Oder geht da auch nur Slave ?

Viele Grüße und Danke
Hans-Martin

Autor: Tauwetter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hm des klingt jetzt alles net so berauschend.

Warum denn nicht? Mach es doch einfach einmal, die Routine ist doch 
recht einfach. Wie schnell soll denn übertragen werden?

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.