Forum: Mikrocontroller und Digitale Elektronik Inverter zur Übersetzung verschiedener SPI-Modes


von Иван S. (ivan)


Lesenswert?

Hallo,

angenommen ich möchte einen SPI-Sklaven, der nur den Modus 0 versteht an 
einen Meister mit Modus 2 betreiben, genügt es dann, einfach denn Takt 
vom Meister mittels eines Inverters umzudrehen?

Falls ja, welchen Inverter soll ich nehmen und weshalb? Ich habe den 
74xx04 gesehen, würde sich jener eignen? Oder brauche ich einen, mit 
integriertem Schmitt-Trigger (und wenn ja, weshalb)? Soll ich HC, HCT 
oder gar etwas exotischeres verwenden?

Mit Dank, Iwan

von Falk B. (falk)


Lesenswert?

@  Иван S. (ivan)

>einen Meister mit Modus 2 betreiben, genügt es dann, einfach denn Takt
>vom Meister mittels eines Inverters umzudrehen?

Wahrscheinlich ja.

>Falls ja, welchen Inverter soll ich nehmen und weshalb? Ich habe den
>74xx04 gesehen, würde sich jener eignen?

Ja, kommt aber auf die Taktfrequenz an. Bis 10..15MHz tut es der HC Typ 
sicher. Wenns schneller sein soll, dann halt LVC, VHC etc.

MfG
Falk

von Иван S. (ivan)


Lesenswert?

Falk Brunner schrieb:

>> Bis 10..15MHz tut es der HC Typ sicher. Wenns schneller sein soll, dann
>> halt LVC, VHC etc.

Danke, Falk.

von (prx) A. K. (prx)


Lesenswert?

Der Master lässt sich also nicht auf Mode 0 einstellen? Verschiedene 
Modi für verschiedene Slaves sind in SPI nicht selten und es ist meist 
kein Problem, sie ad hoc umzustellen.

von Иван S. (ivan)


Lesenswert?

A. K. schrieb:
> Der Master lässt sich also nicht auf Mode 0 einstellen?

Nein. Leider können viele Asiaten (Toshiba, Fujitsu,...) standardmäßig 
nur Mode 2, hat sich drüben anscheinend so eingebürgert. Ein ENC28J60 
kann aber nur Mode 0.

> es meist kein Problem, sie ad hoc umzustellen.

Manchmal aber doch ;-)

Bleibt noch die Frage, ob der Inverter einen Schmitt-Trigger am Eingang 
haben soll. Schaden würde es sicher nicht, andererseits bedeutet dies 
ein zusätzliches Delay.

von Falk B. (falk)


Lesenswert?

@  Иван S. (ivan)

>Bleibt noch die Frage, ob der Inverter einen Schmitt-Trigger am Eingang
>haben soll.

Nicht nötig, der Master liefert doch ein sauberes Digitalsignal.

MfG
Falk

von Peter D. (peda)


Lesenswert?

Иван S. schrieb:
> Nein. Leider können viele Asiaten (Toshiba, Fujitsu,...) standardmäßig
> nur Mode 2, hat sich drüben anscheinend so eingebürgert.

Wasn Glück, daß ich keine Asiaten einsetze, die sind ja in Euroland 
ziemlich schwer beschaffbar.
An Atmel gefällt mir, daß die sehr gut beschaffbar sind.
Mit TI hab ich manchmal Probleme, 12 Wochen ist schon heftig.


Aber wenn Du nicht super-duper Speed brauchst, mach doch den SPI-Master 
ganz einfach in Software, dann geht jeder Mode.


Peter

von Иван S. (ivan)


Angehängte Dateien:

Lesenswert?

Peter Dannegger schrieb:
> Иван S. schrieb:
>> Nein. Leider können viele Asiaten (Toshiba, Fujitsu,...) standardmäßig
>> nur Mode 2, hat sich drüben anscheinend so eingebürgert.

Vorerst muss ich mich wegen Toshiba korrigieren, hier ist anscheinend 
Mode 3 am weitesten verbreitet (zumindest bei den TLCS-870), soweit ich 
das richtig erkennen kann. Irgendwie steh' ich grad auf der Leitung. 
Kann das jemand verifizieren, daß es sich hier (siehe Anhang) um Mode 3 
handelt?

Bei den Fujitsus hab' ich grad nachgesehen,  aber auch dort wird mir 
nicht bestätigt, daß die nur Mode 0 könnten. Dabei hatte ich das mal 
hier im Forum gelesen. Naja, was solls, bin ich wohl einer 
Fehlinformation aufgesessen.

> Wasn Glück, daß ich keine Asiaten einsetze, die sind ja in Euroland
> ziemlich schwer beschaffbar.

Digikey, Mouser, etc existieren. Die Fujitsus und die Renesasen bekommt 
man doch schon an jeder Ecke. Toshiba ist etwas schwieriger, aber auch 
da findet man einiges, wenn man unbedingt will ;-)

> An Atmel gefällt mir, daß die sehr gut beschaffbar sind.

Angeblich siht das schon wieder anders aus, wenn man Stückzahlen will. 
Aber dazu kann ich nichts sagen, als Hobbybastler. Kleine Mengen kriegt 
man anscheinend überall schnell.

> Mit TI hab ich manchmal Probleme, 12 Wochen ist schon heftig.

Von TI bin ich sowiso enttäuscht. MSP430-LernCD via Website bestellt, 
nie angekommen. Auf der Electronica nach einem bestimmten Sample 
gefragt, man würde sich darum kümmern, nie etwas gehört. Ausserdem ist 
Texas ziemlich teuer, IMO.

> Aber wenn Du nicht super-duper Speed brauchst, mach doch den SPI-Master
> ganz einfach in Software, dann geht jeder Mode.

Klar, das geht im Notfall immer.

von Иван S. (ivan)


Lesenswert?

Иван S. schrieb:
> Peter Dannegger schrieb:
>> Иван S. schrieb:
>>> Nein. Leider können viele Asiaten (Toshiba, Fujitsu,...) standardmäßig
>>> nur Mode 2, hat sich drüben anscheinend so eingebürgert.
>
> Vorerst muss ich mich wegen Toshiba korrigieren, hier ist anscheinend
> Mode 3 am weitesten verbreitet (zumindest bei den TLCS-870), soweit ich
> das richtig erkennen kann. Irgendwie steh' ich grad auf der Leitung.
> Kann das jemand verifizieren, daß es sich hier (siehe Anhang) um Mode 3
> handelt?

Hmm, ich habs mir nochmal angesehen, doch Mode 2. Langsam kenn ich mich 
nicht mehr aus, da gibts so viele unterschiedliche Diagramme, die sich 
teilweise widersprechen. Nach http://cc5x.de/MMC/files/SPI_diagr.JPG ist 
es Mode 2, nach 
http://upload.wikimedia.org/wikipedia/commons/7/73/Spi003.png eher Mode 
3. Na was denn nun?

> Bei den Fujitsus hab' ich grad nachgesehen,  aber auch dort wird mir
> nicht bestätigt, daß die nur Mode 0 könnten. Dabei hatte ich das mal
> hier im Forum gelesen. Naja, was solls, bin ich wohl einer
> Fehlinformation aufgesessen.

Hier war Mode 2 gemeint, vertippt.

von Peter D. (peda)


Lesenswert?

Also meine Erfahrung ist, welcher Pegel in Ruhe anliegt, ist meistens 
schnurz.
Wichtig ist nur die Flanke, an welcher die Daten übernommen werden.
D.h. es gibt eigentlich nur 2 unterschiedliche Modies.

Probier doch einfach mal aus, ob die verfügbaren Modies gehen oder 
nicht.


Peter

von Иван S. (ivan)


Angehängte Dateien:

Lesenswert?

Peter Dannegger schrieb:
> Wichtig ist nur die Flanke, an welcher die Daten übernommen werden.
> D.h. es gibt eigentlich nur 2 unterschiedliche Modies.

Dann ist das im Datenblatt Mode 2 (=1,0), oder? Von den Flanken her wäre 
der Kompatibel mit Mode 1 (=0,1). Mit Inverter an Clock wird Mode 2 zu 
Mode 0. Mode 0 ist von den Flanken her wiederum kompatibel zu Mode 3 
(=1,1).
Habe ich das alles jetzt richtig verstanden?

> Probier doch einfach mal aus, ob die verfügbaren Modies gehen oder
> nicht.

Das Problem daran ist, daß ich das Ganze nur gedanklich durchexerziere, 
real existierende Hardware ist derzeit nicht vorhanden.

Gruß, Iwan

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

@Peter: Modi ist schon Plural ;-)

von Bahnfahrer (Gast)


Lesenswert?

>> Aber wenn Du nicht super-duper Speed brauchst, mach doch den SPI-Master
>> ganz einfach in Software, dann geht jeder Mode.
>>
>Klar, das geht im Notfall immer.

So der Hammer ist der Hardware SPI nun auch nicht. Pollen ? Doch eher 
nicht. Interrupt ? Alle byte ein Interrupt ? Etwas haeufig. Extrem 
unflexibel, da keinen Buffer. Dann gibt's noch Slaves, die haben den SPI 
mode vermurkst. zB kann die Wortlaenge ein ungradzahliges Vielfaches von 
8bit sein. Oder man beendet das Auslesen des letzten bits nicht, um 
Status information zu bekommen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.