... oder wie Sie Ihr DIY-Projekt mit MIPS oder leichtem ARM mit einer schnellen Micro-SD-Karte versorgen.
Guten Tag an alle angesehenen Communitys. Ich möchte meine Geschichte über das
Box-Gerät fortsetzen , nämlich darüber, wie sie es geschafft hat, eine Micro-SD-Karte an den USB 2-Anschluss anzuschließen.
Die Wurzel des gesamten Problems war, dass USB 2 und nicht nur eines sein Prozessormodul hat, sondern leider kein QSPI (QuadSPI) oder eine Kartenschnittstelle. Wie hängt diese traurige Tatsache mit SD-Karten zusammen? Sehr einfach, jede SD-Karte in der physischen Basis ihrer Verbindung verfügt über eine SPI-Schnittstelle (SerialPeripheral). Das klassische SPI verwendet eine physische Leitung zum Senden und Empfangen von seriellen Daten. Einfach und wirtschaftlich, sowohl in Geld als auch in Milliampere. Wie Sie wissen, sind die Nachteile jedoch eine Fortsetzung der Vorteile, und für SPI wurden sie in erster Linie zu einem relativ niedrigen Datenaustauschkurs. Um dieses Problem zu lösen, wurde ein Vier-Bit-Datenaustauschmodus mit einer SD-Karte erfunden, der ein enger Verwandter des QSPI-Protokolls ist. Wenn Sie diesen Modus verwenden, vereinbaren der Host-Controller und die Karte zuerst die Austauschparameter im Einzelbitmodus und wechseln dann in den Vierbitmodus, wenn sie nicht eine Leitung zum Empfangen und Senden verwenden, sondern vier für alles (plus eine weitere zum Anzeigen des Befehls).
Was tun, wenn das Gerät das Vier-Bit-Protokoll nicht direkt unterstützt, aber dennoch einen schnellen Austausch benötigt? Die offensichtliche Antwort besteht darin, dem Projekt eine Brücke mit „schneller Schnittstelle“ zur Verfügung zu stellen - eine „Vier-Bit-SD-Karte“.
Um dieses Problem zu lösen, wurden einige USB-SD-Adapter gekauft und vorbereitet (Vivisektion wurde nicht verwendet - wir sind keine Monster). Vor dem Aufwärmen des Lötkolbens und des Haartrockners wurde eine sehr wichtige Überprüfung durchgeführt, um festzustellen, ob das Debian-Prozessormodul die ihm angebotene Adapterpfeife sieht. Der Test war ein großer Erfolg, willkommen im Operationssaal. Die gekaufte Pfeife sieht folgendermaßen aus:
Und so:
Nach dem Zerlegen des Gehäuses konnte die Leiterplatte (von allen beiden Seiten) erkannt werden.
Die Schaltung ist einfach, ihre Basis ist der IC GL823F - ein Mikrocontroller mit einem 8051-Befehlssystem und einem Maskenspeicher, ausgestattet mit einer USB 2-Hardwareschnittstelleneinheit, anscheinend nicht von sehr hoher Qualität (warum ich das sage - ich sehe den genauen Vorspannungswiderstand des analogen Teils und des Quarzoszillators nicht Dies bedeutet, dass die Frequenz aus dem empfangenen Signal basierend auf dem internen kalibrierten Generator wiederhergestellt wird. Wird funktionieren, aber nicht HiFi, nein. Alles andere ist ein minimales Bodykit: Blockierkondensatoren, Pull-up- und Strombegrenzungswiderstände, LEDs und Steckverbinder - das ist alles Technik.
Wir blasen die Komponenten mit einem Haartrockner ab und untersuchen die Leiterplatte. In vielerlei Hinsicht ist die Platte doppelseitig mit Beschichtungslöchern versehen. Nach einer kurzen Untersuchung der Platine in einem Mikroskop, Skizzieren des Anschlussdiagramms und Vergleich mit dem Datenblatt der GL-bezogenen ICs stellen wir den Schaltplan wieder her.


Und hier fangen wir jetzt an, einen kleinen Ärger zu sehen. Was genau? Unsere Box wird mit einer garantierten Spannung von 3,3 V betrieben, und der Stromkreis des GL823 benötigt 5 Volt. Nun, je nach Bedarf - sie ist so daran gewöhnt, weil USB ihr so viel gibt. Micro SD selbst wird mit 3,3 V betrieben, daher wird dem GL823 der integrierte LDO-Stabilisator hinzugefügt. Daher die Frage - und wenn der Stromkreis mit 3,3 V betrieben wird, kann er funktionieren? Wenn es LDO gelingt, nicht zu viel Spannung abzusenken, kann dies, aber nicht alle LDOs sind gleichermaßen nützlich. Das Datenblatt gibt einen kleinen Hinweis - die Ausgabe, die die SD-Karte speist, heißt PMOS. Diese Abkürzung kann sich nur freuen - es kann angenommen werden, dass das HighSide-PMOS-Schema verwendet wird, bei dem der Spannungsabfall über dem Steuerelement sehr klein sein kann. All dies ist jedoch eine Argumentation, und das einzige entscheidende Argument ist die Erfahrung. Er ist der Sohn schwieriger Fehler.
Welche Art von Erfahrung werden wir also liefern? Versuchen wir, den IC mit zwei geschalteten Spannungen zu versorgen - von 5 V USB oder von 3,3 V, die von einem separaten Stabilisator erhalten werden. Jetzt haben wir genug Wissen, um ein schematisches Diagramm zu zeichnen.
Die Nummerierung der Komponenten auf der Schaltung ist etwas seltsam, da beim Hersteller der Leiterplatten eine Mehrfachbestellung mit mehreren weiteren Testschaltungen bestellt wurde und alle die Nummerierung der Komponenten durch hatten. Während der Vorbereitung des Artikels brachte ich den Schaltplan in Übereinstimmung mit dem Foto, und es stellte sich heraus, was passiert ist.
Was sehen wir im Diagramm? Der Kern ist eindeutig GL823F. Der Micro-SD-Anschluss ist offensichtlich damit verbunden. Das einzige, was beachtet werden sollte - Pin 9 am Anschluss ist der Gleitkontakt der Karte im Steckplatz. Wenn die Karte eingesetzt ist, ist sie mit Masse kurzgeschlossen. C7-C10 - Sperrkondensatoren in den Stromkreisen. Wenn Sie die Störfestigkeit geringfügig erhöhen möchten, können die Stifte 2 und 16 DD1 über eine Ferritdrossel angeschlossen werden. R4 begrenzt den Strom durch HL1, R5 zieht die GPIO-Leitung auf eins, wenn keine Karte im Steckplatz vorhanden ist. DA2, C11 und C12 bilden einen linearen Spannungsregler mit 3,3 V.
Da zu dem Zeitpunkt, als die Schaltung gezeichnet wurde, einerseits nicht klar war, wie viel sie verbrauchen würde, und andererseits eine unangenehme Erfahrung bei der Verwendung einiger USB-Flash-Laufwerke (die nicht mit einem Finger zeigen würden), die bei der Aufnahme 400 mA verbrauchten, wurde beschlossen, diese hinzuzufügen R6. Im Allgemeinen ist dies eine Standardtechnik - mit einem spürbaren Verbrauch an linearem LDO in der Schaltung (die Schlüsselwörter hier sind LowDropout), setzen Sie einen niederohmigen Widerstand mit erhöhter Leistung am Eingang und leiten Sie einen Teil der Wärme darauf und nicht auf den Stabilisator ab. Die Erfahrung hat jedoch gezeigt, dass R6 nicht benötigt wird, und Sie werden es immer noch auf dem Foto der Tafel sehen.
XS4 wurde nur für die Durchführung eines Experiments entwickelt - Schaltleistung DD1 zwischen 5 und 3,3 Volt. XS2 ist ein Standard-USBB-Anschluss, mit dem Sie ihn vor sich platzieren und nicht auf freie USB-Anschlüsse unter dem Tisch zum PC klettern können.
Folgendes geschah nach der Rückverfolgung, Herstellung der Software und Installation:
Wie Sie sehen können, ist die Unterseite der Platine völlig unkompliziert und die Oberseite ist nicht viel komplizierter.
Ich werde das Ende der Handlung nicht verzögern. Ich werde sofort sagen, dass die Erfahrung gezeigt hat, dass es möglich ist, den GL823F über eine 3,3-V-Quelle mit Strom zu versorgen. Das Umschalten von XS4 hat nur Auswirkungen auf den Stromverbrauch (nicht auf den Strom).
Um sicherzustellen, dass die hergestellte Karte ordnungsgemäß funktioniert, haben wir die Aufnahmegeschwindigkeit und den gleichzeitig verbrauchten Strom für drei verschiedene Micro-SD-Karten gemessen. Fotokandidaten - im Studio!
Die Bewertung des Stromverbrauchs (Messung dessen, was getan wurde, meine Zunge kann nicht genannt werden) wurde unter Verwendung eines solchen kombinierten Strom-Spannungs-Batterie-Messgeräts durchgeführt. Ehrlich gesagt stellte sich heraus, dass er auch USB-Daten überträgt.
Wir haben nur die Angabe des verbrauchten Stroms verwendet, der Teilungspreis für dieses Instrument beträgt sozusagen 0,01 A, plus mindestens ein Abtastfehler von 1 Einheit der niedrigstwertigen Ziffer beträgt immer noch 0,01 A. Daher zeigt die Tabelle nur die Anzeigebereiche, zwischen denen die Zahl des verbrauchten Stroms sprang. Ich hoffe jedoch, dass es für diejenigen, die daran interessiert sind, GL823 in ihren Entscheidungen anzuwenden, weiterhin möglich sein wird, den oberen Verbrauchsbalken zu bewerten.
Zusätzlich zum Testen der Karte wurden zur Erhöhung der Objektivität einige Kontrollmessungen mit einem anderen SD-Kartenleser durchgeführt. Hier ist einer:
Diese Probe wurde nicht vorbereitet, ich habe sie 5 Minuten lang von meiner Tochter ausgeliehen, und wenn ich sie entkernt hätte, hätten sie mich sofort entkernt. Eines ist sicher - der darin enthaltene Chip gehört nicht zur GL823-Familie, deren Mitglieder so viel mit dem SD-Standard arbeiten können, ein Multi-Standard ist ihnen zu schwer.
Die Lese- und Schreibgeschwindigkeiten wurden auf einfachste Weise gemessen: Dieselbe Datei mit einer Größe von 1.058.268 kB wurde auf die Testkarte geschrieben und von dieser gelesen. Das Kontrollexperiment (auf einem anderen Lesegerät) wurde nur durchgeführt, um Systemfehler um die eine oder andere Dezimalreihenfolge auszuschließen. Die Daten wurden nicht verarbeitet. Ich war nur davon überzeugt, dass ungefähr die Zeiten und Ströme des Verbrauchs die in der vorherigen Stufe erhaltenen übertrafen.
Wenn Sie die beschriebene Schaltung in Ihrem Projekt anwenden möchten, korrigieren Sie bei der Schätzung des Verbrauchs die Tatsache, dass der Versorgungsstrom von einer USB-Spannung von 5 Volt stammt, der GL823 jedoch von einer Spannung von 3,3 V gespeist wurde und die Differenz 5-3,3 = 1,7 beträgt (und dies ist 50) % von 3,3) ging gerade bei DA2 verloren. Wenn wir von einer zentralen (und hoffentlich gepulsten) Quelle mit 3,3 Volt gespeist werden, erzielen wir ordentliche Einsparungen.