Parallel->SPI Interface Adapter?

Gast #530046
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]
Gast #530052
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
#540743
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

Gast #542016
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.
Gast #542060
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.
(Firma: TravelRec.) Persönliche Seite #542062
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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren