www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SPI ueber digitale IOs nachbilden


Autor: Oli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich wuerde gerne ein SPI Interface via digitale IO Portpins nachbilden 
(1 Pin für SCK, 1 Pin für CS, 1 Pin für SO und 1 Pin für SI). Hat jemand 
so was schon gemacht ?

Gruß Oli

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hat jemand so was schon gemacht ?

Natürlich. Was macht Dir denn dabei Schwierigkeiten?

Autor: Oli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo jack,

hab so was noch nie gemacht. Clock soll 4MHz sein. Ist das nicht ein 
kleines Problem ?
Wie kann den der Code für sowas aussehen ?

Z.B.
Clockpin = low;
Zeit warten
Clockpin = high;
SOpin = low;
SIpin abfragen ?
// wiederholen


Gruß
Oli

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das Prinzip is schon richtig. 4 Mhz wird vermutlich schwierig. 
Welchen Controller benutzt du und bei welcher Frequenz?

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
so in der Art - wie es eben die Gegenstelle haben will.
Ist natürlich langsamer als ne Hardeware-SPI und belegt den MC komplett 
während der Übertragungszeit, aber ansonsten gibts da keine Problem oder 
Einschränkungen.

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Clock soll 4MHz sein. Ist das nicht ein kleines Problem ?

Nein.

Von welchem Slave wolltest Du jetzt etwas einlesen?

Autor: Oli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

also der Controller hat 64MHz. Der Slave ist ein Positionssensor.
Wie kann ich die Zeit realisieren bei 4MHz zwischen dem Pin toggeln.

Gruß
Oli

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
64Mhz / 4 Mhz = 16 Takte zeit pro Bit. Mach dir keine Gedanken über die 
Zeitverzögerung zwischen den Bit sindern darüber alles in 16 Taktcyclen 
unterzubringen. :)

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie kann ich die Zeit realisieren bei 4MHz zwischen dem Pin toggeln.

Das hängt von der Anzahl der Zyklen ab, die Dein Prozessor für
set Bit und clear Bit usw. braucht. Aber mit einem 64Mhz-Prozessor
sollte das kein Problem sein. Außerdem kannst Du ja jederzeit langsamer
sein.

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.