SPI über serielle Schnittstelle

Dieses Thema im Forum "Programmieren allgemein" wurde erstellt von EXS#42, 08.09.2008.

  1. EXS#42

    EXS#42 Grünschnabel

    Dabei seit:
    08.09.2008
    Beiträge:
    5
    Zustimmungen:
    0
    Moin,

    ich möchte über die serielle Schnittstelle eine MultiMediaCard bearbeiten. Mir steht bei dem System nur die serielle Schnittstelle zur Verfügung. Die benötigte Hardware soll Minimal gehalten werden, deshalb sollte auch kein Mikrocontroller eingesetzt werden, wie dies bspw. Ulrich Radig macht.

    Da die SPI-Schnittstelle Bit-seriell und nicht Byteseriell arbeitet und auch keine feste Baudrate Verwendung findet, können die Daten nicht über die TxD-Leitung übertragen werden. Aus diesem Grund wollte ich die Flusssteuerungsleitungen (RTS, CTS, DTR, DSR) missbrauchen. Von diesen 4 Leitungen lassen sich die Leitungen RTS und DTR steuern, die Leitungen CTS und DSR dienen ja für Signalisierungen der Gegenstelle und lassen sich nicht steuern.

    Gibt es eine Möglichkeit diese Leitungen trotzdem als "Ausgänge" zu defnieren und die Pegel mittels ioctl() zu setzen?

    mfg

    EXS
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 saeckereier, 09.09.2008
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Abgesehen davon, dass du dafür wahrscheinlich hier falsch bist, für SPI reichen 2 Output und 1 Input Leitung vollkommen aus. CTS bzw. DSR kann man doch auslesen, oder?
     
  4. EXS#42

    EXS#42 Grünschnabel

    Dabei seit:
    08.09.2008
    Beiträge:
    5
    Zustimmungen:
    0
    Moin,

    inwiefern falsch? Sollte ich hier falsch sein dann sorry, bitte entsprechend verschieben. Mir geht es nicht um die Hardware, die will ich ja weglassen. Ich versuche eine reine Softwarelösung.

    Die MMC benötigt die Signale
    CS = Chipselect
    CLK = Clock
    CMD-DI = Command, Data IN

    und liefert das Signal
    DAT-DO = Data Out, Response

    Wenn ich mich nicht irre wären das SPI-mäßig (für Atmel)
    SS = Slave Select
    SCK = Serial Clock
    MOSI = Master Out Slave In

    und

    MISO = Master In Slave Out

    demnach brauche ich 3 Signale zum steuern und eine Empfangsleitung. Ich habe 2 Steuerleitungen (RTS, DTR) und müsste also eine der Leitungen CTS, DSR, RING oder DCD als Ausgang definieren, falls das möglich ist.

    Wenn das möglich sein sollte, dann wie? Alternativ brauche ich dann wohl doch mehr Hardware (Mikrocontroller oder Demultiplexer).

    Ja kann man auslesen, nur setzen scheint nicht zu gehen, was ja auch klar ist, da diese Leitungen eigentlich durch die Gegenstelle gesetzt werden. Mein anliegen liegt somit ausserhalb von dem was man üblicherweise damit macht.

    mfg EXS
     
  5. #4 saeckereier, 09.09.2008
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Naja, außerhalb dem was man üblicherweise macht war es, als du angefangen hast TXD und RXD nicht verwenden zu wollen. Ein toller Ansatz ist das eher nicht. Mit Falsch meinte ich, du wärest in einem anderen Forum besser aufgehoben, z. B. mikrocontroller.net

    Jetzt die tolle Nachricht: Wenn du dir die Spezifikation von SPI durchliest (z.B. im Atmel Datenblatt) wirst du feststellen, dass ChipSelect nur bei mehreren Empfängern benötigt wird. Ich glaube CS war Active-Low, also reicht's den über nen Pull-Down permanent nach unten zu ziehen. Wenn die MMC Karte aus irgendwelchen Gründen das nicht mitmacht und der CS getoggelt werden muß, dann ist es eben nicht machbar.
     
  6. EXS#42

    EXS#42 Grünschnabel

    Dabei seit:
    08.09.2008
    Beiträge:
    5
    Zustimmungen:
    0
    Moin,

    ja gefallen tut mir das auch nicht. Das Problem mit TxD ist, dass es nicht möglich ist die Leitung manuell zu setzen. Da werden immer "n" Bit mit der eingestellten Baudrate gesendet, inklusive Start- und Stoppbits. Aus diesem Grund ist diese Leitung für diesen Missbrauch schlicht nicht geeignet.

    Die Sache mit dem CS-Signal hatte ich aus dem Hitachi-Datenblatt und dem Beispielcode den Ulrich Radig geschrieben hat. Wollte das mehr oder weniger so übernehmen, mit dem Unterschied, dass ich keinen Mikrocontroller zwischen dem PC und der MMC einsetzen wollte.

    Wird aber wohl so nicht gehen, trotzdem danke für die Antwort.

    mfg EXS
     
Thema:

SPI über serielle Schnittstelle

Die Seite wird geladen...

SPI über serielle Schnittstelle - Ähnliche Themen

  1. Virtuellen seriellen Port über Bluetooth einrichten. Keine Verbindung.

    Virtuellen seriellen Port über Bluetooth einrichten. Keine Verbindung.: Hallo zusammen, mein Problem ist ein bisschen spezieller. Ich möchte über eine Bluetooth-Verbindung einen virtuellen seriellen Port einrichten....
  2. Bootproblem und Zugriff nur über serielle Konsole möglich

    Bootproblem und Zugriff nur über serielle Konsole möglich: Hallo Forum! Lieder habe ich ein massives Problem, bei dem ich nicht mehr weiter weiß. Habe einen root-server bei 1&1 der schon seit drei...
  3. Paralelles oder Serielles kopieren über Netzwerk

    Paralelles oder Serielles kopieren über Netzwerk: Hallo zusammen Meiner Erfahrung nach ist paralelles kopieren von Daten zwischen 2 Systemen schneller als seriell. Inwiefern das logisch ist,...
  4. OpenBoot über serielle Konsole zurücksetzen

    OpenBoot über serielle Konsole zurücksetzen: Ich bekam heute auf der Arbeit einen Sun Enterprse 220r geschenkt, daraf wollte ich gerade Debian-sparc installieren, aber der Server bleibt im...
  5. Daten über serielle Schnittstelle ausgeben

    Daten über serielle Schnittstelle ausgeben: Hallo, ich versuche in einer Endlosschleife Daten aus der RS 232 Schnittstelle ttyS0 zu senden. Hat jemand eine Idee, wie ich das mit einem...