Forum: Mikrocontroller und Digitale Elektronik SD Karten Verlängerung & maximale SPI Länge


von Felix N. (felix_n888)


Angehängte Dateien:

Lesenswert?

Guten Morgen,
Ich habe mir eine SD Karten Verlängerung aus einem MicroSD auf SD 
Adapter und einer Kombibuchse(MMC, SD) von meinem alten Laptop eine ca. 
7cm lange Verlängerung bebastelt.

Denn das Problem ist folgendes. Ich habe ein SD Kartenslot an meinen 2,2 
Zoll TFT Display. Da das Display aber in einem Gehäuse mittig eingebaut 
ist benötige ich ca. 5cm Kabel zwischen dem Kartenslot und dem Gehäuse 
rand.

Denn sonst müsste man immer alle Schrauben am Gehäuse ausdrehen und das 
Gehäuse öffnen und dann die SD Karte einstecken bzw. rausnehmen. 
Deswegen habe ich mir die Verlängerung gebastelt so das ich den SD 
Kartenslot ins Gehäuse einbauen kann.

Ich habe mal ein Bild von meiner "Verlängerung" angehängt. Jedoch war 
der Erfolg nicht so ganz viel versprechend, also es hat nicht 
funktioniert. Die Initialisierung der SD Karte mit FatFs schlägt immer 
fehl. Wenn die die Karte direkt in dem Sockel steckt, Initialisiert er 
die Karte ohne weitere Probleme.

Da mein Laptop auch über ein SD Kartenslot verfügt habe ich die 
Verlängerung dort mal ausprobiert, dort wird die Karte sofort erkannt 
und man kann sie lesen und beschreiben. Also ist die Verkablung richtig 
am Adapter.

Ich vermute das eventuell die Kabel des SPI-Bus in meinem System zulang 
sein könnten. Wie lang dürfen die SPI Kabel sein?

Also es sind vom Mikrocontroller bis zum Pinheader auf der Platine ca. 
5cm Weg, dann 12cm Kabel vom Pinheader zum Display, und auf dem Display 
dann nochmal ca. 5-7cm weg bis zu den Sockel der SD Karte. Dann schlägt 
mein Kabel ja auch nochmal mit 7cm zu Buche.

Macht also ganz grob circa 22cm(Ohne Verlängerung) und 29cm(Mit 
Verlängerung) der SPI Datenleitungen(MISO, MOSI, SCK, CS)

Der Bus läuft im Master Mode mit fclk/2 also in meinen Fall 8 MHz.

Sonst hängt neben dem TFT Display(ILI9341) und der SD Karte noch ein 
ENC28J60 Ethernet Chip dran.

Hat jemand ne Idee, woran das liegen könnte bzw. was man dagegen tun 
kann?

Mfg

von Falk B. (falk)


Lesenswert?

Felix N. schrieb:
> Guten Morgen,
> Ich habe mir eine SD Karten Verlängerung aus einem MicroSD auf SD
> Adapter und einer Kombibuchse(MMC, SD) von meinem alten Laptop eine ca.
> 7cm lange Verlängerung bebastelt.

In der Tat, "gebastelt".

> Denn das Problem ist folgendes. Ich habe ein SD Kartenslot an meinen 2,2
> Zoll TFT Display. Da das Display aber in einem Gehäuse mittig eingebaut
> ist benötige ich ca. 5cm Kabel zwischen dem Kartenslot und dem Gehäuse
> rand.

Kriegt man hin.

> Ich habe mal ein Bild von meiner "Verlängerung" angehängt. Jedoch war
> der Erfolg nicht so ganz viel versprechend, also es hat nicht
> funktioniert. Die Initialisierung der SD Karte mit FatFs schlägt immer
> fehl. Wenn die die Karte direkt in dem Sockel steckt, Initialisiert er
> die Karte ohne weitere Probleme.

Ist zu 90% ein Problem des Wellenwiderstands bzw. der Masseführung.

> Da mein Laptop auch über ein SD Kartenslot verfügt habe ich die
> Verlängerung dort mal ausprobiert, dort wird die Karte sofort erkannt
> und man kann sie lesen und beschreiben. Also ist die Verkablung richtig
> am Adapter.

Schon mal gut.

> Ich vermute das eventuell die Kabel des SPI-Bus in meinem System zulang
> sein könnten. Wie lang dürfen die SPI Kabel sein?

Wenn man es richtig macht, sehr lang, bis in den Bereich von mehreren 
Metern!

> Macht also ganz grob circa 22cm(Ohne Verlängerung) und 29cm(Mit
> Verlängerung) der SPI Datenleitungen(MISO, MOSI, SCK, CS)

Das ist schon ganz ordentlich. Da braucht es eine passende 
Serienterminirung und Kabelführung, siehe Wellenwiderstand.

von Jim M. (turboj)


Lesenswert?

Falk B. schrieb:
>> Ich vermute das eventuell die Kabel des SPI-Bus in meinem System zulang
>> sein könnten. Wie lang dürfen die SPI Kabel sein?
>
> Wenn man es richtig macht, sehr lang, bis in den Bereich von mehreren
> Metern!

Dann wird man aber niemals die 25MHz erreichen, die SPI bei SD Karten 
maximal haben darf.

Felix N. schrieb:
> Da mein Laptop auch über ein SD Kartenslot verfügt habe ich die
> Verlängerung dort mal ausprobiert, dort wird die Karte sofort erkannt
> und man kann sie lesen und beschreiben. Also ist die Verkablung richtig
> am Adapter.

Dann sollte es auch mit SPI funktionieren - denn ein Laptop nutzt 
normalwerweise das wesentlich anspruchsvollere SD Protokoll.

Felix N. schrieb:
> Die Initialisierung der SD Karte mit FatFs schlägt immer
> fehl.

Wo genau bleibt der Code stecken?
Die Initialisierung erfolgt bei <=400kHz, da spielt die Verkabelung noch 
keine Rolle.

: Bearbeitet durch User
von Felix N. (felix_n888)


Lesenswert?

Falk B. schrieb:
> In der Tat, "gebastelt".

Hi, ja war für mich jetzt die einfachste Lösung, alternativ hätte ich so 
ein Kabel beim China Mann bestellen können kam aber erst gegen Ende des 
Monats an das war mir zu lange.

Falk B. schrieb:
> Das ist schon ganz ordentlich

Ähmm ja also wie man sich es vielleicht denken kann habe ich dort die 
gleichen Kabel verwendet nur halt alle 3-4cm nochmal ein bisschen 
Tesafilm drum damit die nicht überall rumfliegen. Ich könnte dieses 
Kabel aber noch einkürzen(Auf 6-7cm), habe es damals so lang gemacht da 
ich noch nicht wusste welches Gehäuse ich verwenden werde.

Falk B. schrieb:
> Ist zu 90% ein Problem des Wellenwiderstands bzw. der Masseführung.

Falk B. schrieb:
> Da braucht es eine passende
> Serienterminirung und Kabelführung

Ah okay. Also ich habe mir denn Artikel und besonderes die 
"Serienterminirung" durchgemessen. Ls und Cp sind mir nicht bekannt also 
kann ich denn Wellenwiderstand nicht so direkt berechnen.

Alternativ wird das ja noch mit einem Funktionsgenerator und 
Strommessung angesprochen, wenn ich danach nochmal weiter suche bei 
Google wird zb. bei Elektronik Kompendium gesagt das sich diese Messung 
nur für Koxialkabel eignet.

Wenn ich mehr in die Richtung "SPI Serienterminirung" suche findet man 
viele Beiträge die Widerstände zwischen 30-150 Ohm in der SCK Leitung 
vorschlagen.

Zur Masseführung auf meiner Platine ist auf der Top und Bottom Seite 
eine Massefläche vorhanden. Bei dem Adapter Kabel ist das Grüne kabel 
Vss und das gelbe Kabel ist SCK.

Wäre es hier sinnvoll eine Verdrillung mit der grünen Ader um die 
anderen Kabel vorzunehmen?

Mfg

von Felix N. (felix_n888)


Lesenswert?

Jim M. schrieb:
> Dann wird man aber niemals die 25MHz erreichen, die SPI bei SD Karten
> maximal haben darf.

Sind bei mir maximal 8 MHz.

Jim M. schrieb:
> Wo genau bleibt der Code stecken?
> Die Initialisierung erfolgt bei <=400kHz, da spielt die Verkabelung noch
> keine Rolle.

Nach der Display und Ethernet Initialisierung, initialisiert er die SD 
Karte mit f_mount() der disk_proc_timer() wurde bereits zur der Zeit 
mehrfach aufgerufen.

f_mount() wird noch gehen aber kein Gültigen Wert zurück liefern. Dann 
geht er zu f_getfree() über und diese Methode ruft chk_mounted() auf 
wobei chk_mounted() disk_initialize() aufruft und disk_initialized() 
schlägt fehl.

Habe bei disk_initialized() eine Debug Nachricht drin ob sie erfolgreich 
war oder nicht.
1
  //Init SD Card
2
  fs = &Fatfs;
3
4
  if(f_mount(0, &Fatfs) == FR_OK) {
5
    strcpy(fno.fname, lfn);
6
    fno.fsize = sizeof lfn;
7
  }
8
9
  rc = f_getfree("0:", &free_cluster, &fs);
10
  if(rc == FR_OK) {
11
    free_MB = (free_cluster * fs->csize) / 2048;
12
    sprintf(buffer, "SD Init successfully: %lu MB Free\r\n", free_MB);
13
    sendToSerial(buffer);
14
  }else{
15
    sendToSerial("SD Card Failed!\r\n");
16
  }

Wenn die SD Karte direkt drin steckt bekomme ich die Nachricht "SD Init 
successfully: 936 MB Free" wenn sie im Apdater drin steckt "SD Card 
Failed!" und davor noch "disk_init() Function failed! SPI Fast"

Mfg

von HildeK (Gast)


Lesenswert?

Einen Teil hast du unter dem weißen Isolierband versteckt.
Ist dort z.B. die grüne Brücke zwischen Pin 3 und 6 (GND) auch drin?

von Felix N. (felix_n888)


Angehängte Dateien:

Lesenswert?

HildeK schrieb:
> Einen Teil hast du unter dem weißen Isolierband versteckt.

Habe dazu auch nochmal ein Bild angehängt.

HildeK schrieb:
> Ist dort z.B. die grüne Brücke zwischen Pin 3 und 6 (GND) auch drin?

Nein, ist auch nicht möglich, da diese SD Karte ein Apdater von SD auf 
MicroSD ist. Und MicroSD nur 1x VSS hat.

Deswegen ist ja am Sockel eine grüne Brücke zwischen den Pins um das 
zweite Vss für die normale SD Karte zur Verfügung zu stellen.

Mfg

von HildeK (Gast)


Lesenswert?

OK. War nur so 'ne Idee.

von Felix N. (felix_n888)


Lesenswert?

HildeK schrieb:
> OK. War nur so 'ne Idee.

Ja alles gut :)

Falk B. schrieb:
> Ist zu 90% ein Problem des Wellenwiderstands

Ich habe jetzt mal mit einem zweiten Module das ganze am Steckbrett 
testweiße aufgebaut. Anschlussleitung für MISO, MOSI, SCK, CS sind die 
typischen 20cm langen Steckbrett Kabel.

Dort kann ich die SD Karte Initialisieren wenn Sie direkt im Sockel 
steckt oder in der Verlängerung. Auch wenn ich zwei Steckbrett Kabel 
ineinander stecke und somit 40cm Leitungsweg habe funktioniert das ganze 
noch.

Ich werde mal die Zuleitung von Platine zu TFT Module von 12cm auf 5-6cm 
einkürzen und es nochmal ausprobieren.

Des weitern habe ich mal ins Datenblatt meines ATMega1284P geschaut 
unter "Electrical Characteristics" da ja der AVR der Treibende Baustein 
bestimmt er ja auch den Innenwiderstand.

Bei VOL sind bei TA=85°C und max 20mA 0,9V maximal angegeben was dann ja
Ri = VOL / IOL = 0,9V / 20mA = 45 Ohm entsprechend würde.

Und bei VOH(High Output) bei TA=85°C und max 20mA minimal 4,2V sind. 
Also
Ri = VOH / IOH = 4,2 / 20mA = 210 Ohm????

Kann man das jetzt für die Berechnung für die Serienterminierung nehmen? 
Oder geht das nicht weil das Min/Max Werte sind?

Mfg

von Jim M. (turboj)


Lesenswert?

Felix N. schrieb:
> da ja der AVR der Treibende Baustein

Hast Du daran gedacht das eine SD Karte keine 5V an den Eingängen 
verträgt? Läuft der AVR mit VCC <= 3,6V?

von Felix N. (felix_n888)


Lesenswert?

Jim M. schrieb:
> Hast Du daran gedacht das eine SD Karte keine 5V an den Eingängen
> verträgt?

Ja das weiß ich.

Jim M. schrieb:
> Läuft der AVR mit VCC <= 3,6V?

Nein der AVR selbst läuft mit 5V. Die 5V SPI Datenleitungen gehen zu 
einer Platine wo auch das TFT Display drauf gesteckt ist. Auf der 
Platine befindet sich ein AMS1117-3V3 Spannungsregler der Versorgt den 
74HC4050 Pegelwandler um die 5V Datenleitungen auf 3,3V runter zu 
setzten. Für die MISO Leitung befindet sich auf der Platine auch noch 
ein 74HCT125N der mit 5V gespeist wird um das MISO Signal auf 5V statt 
3,3V anzuheben, damit der AVR das HIGH Signal sicher erkennen kann.


Das TFT Modul(und somit auch SD Karte weil das eine Einheit ist) werden 
mit Vcc=5V gespeist. Aber das TFT Modul hat selber nochmal ein 3,3V 
Spannungsregler also wird die SD Karte mit 3,3V versorgt genau so wie 
das Display

Mfg

von Harry (Gast)


Lesenswert?

Mach mal direkt an den Sockel einen 10uF Kerko an Ub.

von Felix N. (felix_n888)


Lesenswert?

Harry schrieb:
> Mach mal direkt an den Sockel einen 10uF Kerko an Ub.

Also solche fetten Bieter habe ich nicht. Höchstens 1uF 
Folienkondensator. Und dann von Gnd nach Vcc(3,3)?

Aber ich kann nun auch ein bisschen was neues berichten. Ich habe den 
Zuleitung Stang deutlich gekürzt, Und Upps er war vorher nicht 12cm lang 
sondern 23cm und lag in einer Spule im Gehäuse war nicht so ganz ideal 
...

Konnte ihn nun auf 6,5cm kürzen das ist gerade so das er nicht unter 
Spannung hängt aber auch nicht zu viel hat. Das hat schon deutliche 
Verbesserungen gezeigt!

Im Moment habe ich noch relativ lange Leitungen zum ENC28J60, weil das 
ganze mit SD und ENC nur zum testen war ob es überhaupt möglich ist vom 
Flash Speicher her, da der ATMega1284P 128K Flash Speicher hat und ich 
vor dem ENC und mit der SD schon 45kB belegt hatte. Nun ist der Speicher 
bei 58kB mit SD und ENC. Und ich mit meinem Projekt so gerade bei der 
Hälfte angekommen bin und noch vieles umsetzten will.

Und da die 128k Flash Speicher in der Theorie ausreichen müsste baue ich 
das ganze jetzt permanent in mein System. Sonst wird es schwierig ein 
Mikrocontroller zu finden mit mehr als 128k Flash und im DIP-40 Package 
...


Aber zurück zum eig. Problem: Durch die kürzen der Zuteilung kann ich 
nun SD Karten mit der Verlängerung Initialisieren und auch Lesen. Das 
Kabel der Verlängerung wird später aber nochmal verkürzt da es sonst 
zulang ist wenn ich denn Sockel ins Gehäuse eingebaut habe.


Meine 2GB und 8GB SD Karte erkennt er sofort ohne zweiten Anlauf, bei 
meiner 1GB Karte klappt das nicht immer glaube aber das sie kaputt ist, 
da sie mein Laptop auch nicht immer lesen kann bzw er erkennt sie aber 
man kann nicht drauf zugreifen. Manchmal aber schon. Denke daher ->> 
Kaputt

Ich vermute ganz stark, das wenn ich den ENC28J60 die nächsten Tage fest 
einbaue und die SPI Leitungen deutlich kürze werden das es keine 
Probleme mehr dann gibt(vermutlich).

Mfg

von Falk B. (falk)


Lesenswert?

Felix N. schrieb:
> Falk B. schrieb:
>> In der Tat, "gebastelt".
>
> Hi, ja war für mich jetzt die einfachste Lösung, alternativ hätte ich so
> ein Kabel beim China Mann bestellen können kam aber erst gegen Ende des
> Monats an das war mir zu lange.

Nö, man hätte wenigstens Flachbandkabel nehmen können. Jede 2. Ader auf 
GND und schon hat man HF-taugliche Verkabelung.

> "Serienterminirung" durchgemessen. Ls und Cp sind mir nicht bekannt also
> kann ich denn Wellenwiderstand nicht so direkt berechnen.

Muss man auch erstmal gar nicht. Probier ein paar Widerstände und gut.

> Wenn ich mehr in die Richtung "SPI Serienterminirung" suche findet man
> viele Beiträge die Widerstände zwischen 30-150 Ohm in der SCK Leitung
> vorschlagen.

Eben.

von Felix N. (felix_n888)


Angehängte Dateien:

Lesenswert?

Falk B. schrieb:
> Nö, man hätte wenigstens Flachbandkabel nehmen können. Jede 2. Ader auf
> GND und schon hat man HF-taugliche Verkabelung.

Hi Falk,
Also ich muss eh nochmal die gesamte Verkablung in meinen System 
verändern. Dann könnte ich das mit in Angriff nehmen.

Ich habe mal ein "Schaltbild" angehängt so wie ich das verstanden habe 
mit dem Flachbandkabel. Da ja der Pinheader auf der Platine und an der 
Adapterplatine schon vorhanden sind würde ich mit den Datenleitung dort 
weg gehen und dann jede zweite Ader dahinter einfach auf Masse legen. 
Müsste doch auch gehen.

Es wird dann später darauf hinaus laufen das ich zwei Flachbandkabel 
haben werde, da der ENC nicht über die Adapter Platine angeschlossen 
wird und somit in eine komplett andere Richtung muss.

Falk B. schrieb:
> Muss man auch erstmal gar nicht. Probier ein paar Widerstände und gut.

Alles klar.

Falk B. schrieb:
> Eben.

Gilt das eigentlich nur für die SCK Leitung mit der Serienterminierung? 
Oder muss auch noch ein Widerstand in die MOSI, MISO und Cs's Leitungen 
reingehen.

Mfg

von HildeK (Gast)


Lesenswert?

Felix N. schrieb:
> Gilt das eigentlich nur für die SCK Leitung mit der Serienterminierung?
> Oder muss auch noch ein Widerstand in die MOSI, MISO und Cs's Leitungen
> reingehen.

Natürlich verbessert die Serienterminierung auch die anderen Signale. Da 
aber die Datenleitungen erst deutlich nach dem Signalwechsel vom Takt 
übernommen werden, haben sich die störenden Reflexionen längst beruhigt.
Aber der Takt, genauer: die Taktflanke, muss sauber sein.
Natürlich kannst du dort genau so terminieren, es verbessert auch die 
Störabstrahlung (EMV).

von Stefan F. (Gast)


Lesenswert?

Jim M. schrieb:
> Die Initialisierung erfolgt bei <=400kHz, da spielt die Verkabelung noch
> keine Rolle.

Doch tut sie. Hier kommt es weniger auf die Signalfrequenz an, als auf 
Wellenlänge und korrekte Terminierung. Wobei man sagen muss, dass jede 
Verbindungsstelle den Idealzustand versaut, weil sich dort der 
Wellenwiderstand ändert.

An jeder Übergangsstelle und an den Enden der Leitungen entstehen mehr 
oder weniger stark ausgeprägte Reflexionen. Die Stärke der Reflexionen 
ist bei Rechteck-Signalen unabhängig von der Frequenz. Eine zu starke 
Reflexion kann  als falscher Taktimpuls interpretiert werden. Falsche 
Taktimpulse führen bei jeder beliebigen Taktfrequenz zum Totalausfall.

Man kann Reflexionen mit Leitungs-Treibern, R/C Filtern und 
Schmitt-Triggern dämpfen, diese reduzieren aber zugleich die mögliche 
Übertragungsrate. Bei den Leitungs-Treibern wäre wichtig (und üblich), 
dass sie einen symmetrischen Ausgangswiderstand haben (bei High/Low 
gleich).

von Falk B. (falk)


Lesenswert?

Stefanus F. schrieb:
> Doch tut sie. Hier kommt es weniger auf die Signalfrequenz an, als auf
> Wellenlänge und korrekte Terminierung. Wobei man sagen muss, dass jede
> Verbindungsstelle den Idealzustand versaut, weil sich dort der
> Wellenwiderstand ändert.

Jaja, genau. Und wenn man sein Auto nicht auf den Millimeter genau 
einparkt, rostet es und man bekommt ein Knöllchen!

OMG!

von Stefan F. (Gast)


Lesenswert?

Falk B. schrieb:
> Jaja, genau.
> OMG!

Die Schwarz-Weiß Malerei kommt jetzt aber von Dir.

Ich habe deutlich geschrieben, dass die Reflexionen stören, wenn sie 
zu stark sind. Daraus ergibt sich: Wenn sie gering genug sind, stören 
sie nicht.

Meistens reicht eine gute Terminierung, was in der Konstellation des TO 
allerdings (ohne Treiber) schon schwierig genug ist.

von HildeK (Gast)


Lesenswert?

Stefanus F. schrieb:
> Man kann Reflexionen mit Leitungs-Treibern, R/C Filtern und
> Schmitt-Triggern dämpfen, diese reduzieren aber zugleich die mögliche
> Übertragungsrate. Bei den Leitungs-Treibern wäre wichtig (und üblich),
> dass sie einen symmetrischen Ausgangswiderstand haben (bei High/Low
> gleich).

Naja!

- Leitungstreiber produzieren eher größere Reflexionen: sie sind gebaut 
mit kräftigeren Ausgangstransistoren, also niederohmiger. Außer 
diejenigen, die eine Serienterminierung bereits eingebaut haben. Ein 
74xx125 wird also solcher verkauft, hat aber keine Widerstände 
eingebaut. Die einzigen, die ich mal in Händen hatte, waren 245er von 
TI. Zum Einsatz kamen sie aber nicht, weil sie leider über die 
Musterphase nicht hinaus kamen.
- R/C-Filter gehören nicht in Digitalschaltungen. Sie machen Delay und 
an der falschen Stelle vergrößern sie das Reflexionsproblem. Und sie 
sind an der richtigen Stelle nur mit Schmitt-Triggern einzusetzen. Vor 
allem, wenn wir nicht nur von wenigen 10pF reden.
- ein symmetrischer Ausgangswiderstand ist sicher nicht falsch, aber 
weitgehend unwichtig, gerade bei niederohmigen Leitungstreibern. Deren 
Ausgangswiderstand ist weit unterhalb des typischen Leitungs-Z. Und man 
benötigt eh eine Serienterminierung (mit Werten deutlich größer als 
diese Unsymmetrie), was auch die einfachste sinnvolle Maßnahme ist! Und 
genau diese reduziert auch nicht die Übertragungsrate.

von Stefan F. (Gast)


Lesenswert?

HildeK schrieb:
> Leitungstreiber produzieren eher größere Reflexionen: sie sind gebaut
> mit kräftigeren Ausgangstransistoren

Da gehört dann ja noch der R/C Filter dazu, so war das zumindest 
gemeint.

Eine anständige Leitungsanpassung ist aber besser.

> R/C-Filter gehören nicht in Digitalschaltungen.

Ist stimme Dir da zu. Aber erzähle das mal den Leuten, die die alte 
Druckerschnittstelle (Centronics) erfunden haben. Da machen die das 
nämlich, damit der Drucker nicht direkt auf/neben dem PC stehen muss. 
Ich meine mich zu erinnern, dass 100Ω + 220pF üblich waren.

Hat auch funktioniert. Bis zu 6 Meter Kabel waren damit machbar. 
Rechner/Drucker ohne diese Tiefpässe brauchten wesentlich kürzere Kabel.

HildeK schrieb:
> ein symmetrischer Ausgangswiderstand ist sicher nicht falsch, aber
> weitgehend unwichtig, gerade bei niederohmigen Leitungstreibern. Deren
> Ausgangswiderstand ist weit unterhalb des typischen Leitungs-Z.

Oben hatte jemand ungefähr 50Ω für Low und 210@ für High pegel genannt. 
Ich bezog mich darauf, das wäre nämlich definitiv zu unsymmetrisch, um 
eine halbwegs brauchbare Leitungsanpassung zu realisieren.

>  man benötigt eh eine Serienterminierung ...
> was auch die einfachste sinnvolle Maßnahme ist!

Full Ack. Nur braucht man dazu halt passende Treiber.

von HildeK (Gast)


Lesenswert?

Stefanus F. schrieb:
> Oben hatte jemand ungefähr 50Ω für Low und 210@ für High pegel genannt.
Mit drei Fragezeichen dran!
Wenn ich es richtig gesehen habe, war das was anderes, zumindest falsche 
Annahmen. So bestimmt man keinen Quellwiderstand.
p- und n-MOS sind nicht ganz gleich, aber solche Differenzen gibt es da 
nicht - wenn mir mal TTL und LS außer Betracht lassen.
Jeder gewöhnliche HC dürfte so bei 15-25Ω liegen. Der Wert ist auch 
familienabhängig, ein LVC ist i.A. kräftiger als ein HC.

Stefanus F. schrieb:
>>  man benötigt eh eine Serienterminierung ...
>> was auch die einfachste sinnvolle Maßnahme ist!
>
> Full Ack. Nur braucht man dazu halt passende Treiber.

Nein, du kannst auch ein längeres Kabel (mehrere Meter, verdrillt oder 
Koax z.B.) mit normalen HC treiben. Passenden Serienwiderstand dran und 
fertig.
Ein Linetreiber ist imho erst notwendig, wenn ich z.B. aus single-ended 
ein differentielles Signal machen will oder tatsächlich die Leitung auch 
am Ende abschließen will. Dann braucht's auch den passenden Empfänger.

Stefanus F. schrieb:
> Ist stimme Dir da zu. Aber erzähle das mal den Leuten, die die alte
> Druckerschnittstelle (Centronics) erfunden haben. Da machen die das
> nämlich, damit der Drucker nicht direkt auf/neben dem PC stehen muss.
> Ich meine mich zu erinnern, dass 100Ω + 220pF üblich waren.
Darüber habe ich auf die Schnelle nichts gefunden. Und wenn es so war, 
waren die an der Quelle oder an der Senke? An der Senke kann ich den 
Sinn verstehen: HF-Störeinstreuungen zu unterbinden und da die Empfänger 
mit Schmitt-Triggereingängen spezifiziert waren, ist das auch brauchbar. 
https://de.wikipedia.org/wiki/IEEE_1284

Kleine RC-Glieder (10R + 20-50pF) habe ich auch schon an I2C-SS gesehen. 
Das hatte aber nichts mit der Anpassung zu tun. Ich glaube aber, auch 
die sind aus einem falschen Verständnis heraus drin gewesen.
Und wenn man sich schon zu so was entschließt, dann muss das Konstrukt 
an das Ende der Leitung!
Auf der Quellseite produziert dir der Kondensator für die schnellen, 
reflektierten Signalanteile eine Kurzschluss, was zu einer erneuten 
Reflexion führt: typischerweise gibt das dann am Empfänger doppelte 
Flanken.
Habe ich schon erlebt: ein FPGA als Empfänger; ging ein halbes Jahr ohne 
Probleme. Die neuen Platinen mit einem inzwischen geshrinkten FPGA 
(schnellere Technologie) haben Doppelflanken detektiert - alle paar 
Stunden mal eine :-).

von Stefan F. (Gast)


Lesenswert?

HildeK schrieb:
>> Druckerschnittstelle (Centronics) erfunden haben. 100Ω + 220pF
> Darüber habe ich auf die Schnelle nichts gefunden. Und wenn es so war,
> waren die an der Quelle oder an der Senke?

Ist nicht einheitlich. Am PC Ausgang hatte man sie immer, außer an 
Billig-Schnittstellenkarten.

Guckst du hier, das stammt aus einem Schaltplan vom IBM PC: 
http://apps.usd.edu/coglab/psyc770/misc/parallel/parallelport.gif

Pin 1 ist die Taktleitung für die 8 Datenbits. Beim Drucker wurde das 
gleiche Spiel an seinen Eingängen gemacht.

An den Statusleitungen (Paper Out, Online, etc) sind keine Kondensatoren 
weil diese Signale per Software entprellt werden.

Was die Drucker angeht: Manche hatten Tiefpässe an den Eingängen, manche 
nicht. Manche nur an der Taktleitung, hier deutlich zu sehen: 
http://prisall.narod.ru/print1/fx1170.jpg

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.