mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Parallel->SPI Interface Adapter?


Autor: RodYler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich brauche eine schnelle SPI Verbindung, jedoch macht mein µC nur 2MHz 
maximal. Deswegen könnte man da evtl. per parallele Ports auf ein 
Interface IC gehen, das daraus ein SPI Takt macht?

Ist:

[µc] -- SPI(langsam) -- [SPI_Gerät]


Soll:
[µc] -- parallel(schnell) -- [IC] -- SPI(schnell) -- [SPI_Gerät]

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@RodYler

>ich brauche eine schnelle SPI Verbindung, jedoch macht mein µC nur 2MHz
>maximal. Deswegen könnte man da evtl. per parallele Ports auf ein
>Interface IC gehen, das daraus ein SPI Takt macht?

Das schreit nach einem kleinen CPLD. 32 bzw 36 Macrozellen sollten 
reichen. Sprich entweder Coolrunner oder 9536XL. Oder eben halt die 
Altera/Lattice/Whatever Typen.

MFG
Falk

Autor: RodYler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sind die Dinger einfach zu programmieren? Ich habe leider nicht so viel 
Zeit, dort noch Entwicklung reinzustecken.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
FT2232 kann USB-SPI bis 6MHz.

Autor: RodYler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
USB nützt mir leider nichts.
Sollte reiner Parallelbetrieb -> SPI sein.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ RodYler

>sind die Dinger einfach zu programmieren? Ich habe leider nicht so viel
>Zeit, dort noch Entwicklung reinzustecken.

Wenn mans kann, dann ja.
Wenn du die Grundlagen von Digitaltechnik drauf hast kannst du recht 
schnell mittels Schematic Entry ein paar Gatter zusammenbauen die dir 
dein SPI-Interface bereitstellen. VHDL & Co brauchst du dafür nicht 
unbedingt.

MfG
Falk


Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo! Ich benötige auch soetwas, jedoch für die LPT des PC's. Ich wäre 
jetzt über nen ATMega8 gegangen, der mit ein Parallel<->SPI Funktion 
macht. Da bin ich aber dann dort, was dir zu langsam ist.

Werde mich jetzt auch mal mit CPLD beschäftigen, vielleicht lässt sich 
damit was brauchbares realisieren.

Woran ich noch am überlegen bin, ist, wie man am besten das 
Kommunikationsprotokoll realisiert, um Steuer- und Datenbytes 
unterscheide zu können (z.B. setzten der CS sind Steuerinfos; 
4bit-Modus?). Mein Ziel ist, möglichst gut den LPT Hardwarehandshake 
auszunutzen (wenn möglich).

Bin da aber noch am Anfang. Software-SPI über LTP läuft (mit STK200), 
jedoch halt entsprechend langsam :)

Falls jemand passende Kritik hat, raus damit.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Über LPT wirst Du auch nicht schneller als 2Mhz werden. Diese "alte" 
Schnittstelle ist auch nicht schneller.

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir würden die 2MHz ja schon reichen (besser als eine 
Software-SPI-Realisierung mit ca. 100-200kHz). Jedoch habe ich es bis 
jetzt nochnicht geschaft, den Hardwarehandshake auszunutzen und die 
D0-D7 bidirektional zu nutzen (natürlich alles im EPP Modus). Werde aber 
eh vielleicht eine 4Bit Lösung realisieren und einen ATMega8 für die 
SPI-Generierung verwenden.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Software-SPI bei sollte mit einem kleinen Tiny 16 Mhz CPU-Frequenz mit 
2Mhz gerade noch drin sein. Einen Tiny2313 habe ich neulich dazu 
überreden können. Die Befehle laufen in ASM alle der Reihe nach in einer 
Schleife, das Timing wird mit NOPs zyklengenau generiert. Zwischen den 
NOPs und den PORT-Anweisungen kann man dann auch noch Daten von einem 
8-Bit Port einlesen. Eine Handshakeleitung zeigt dem Tiny, daß die Daten 
gültig und aktuell zur Weitersendung bestimmt sind.

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.