- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 10

Thema: Textdatei am AVR / Attiny2313 senden

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    22.03.2005
    Beiträge
    9

    Textdatei am AVR / Attiny2313 senden

    Anzeige

    Praxistest und DIY Projekte
    Hallo zusammen,

    ich habe eine "Plotter"-Anwendung bei der eine Textdatei mit Steuerkommandos

    z.B.

    X100 y200
    X50 y300
    ...

    an den AVR / ATTiny2313 geschickt werden soll.

    Nun dauert die Abarbeiteung der Befehle aber länger als das senden der nächsten Zeile.
    So "verschluckt" sich also die Kommunikation.

    Wie kann ich die Verbindung synchronisieren?
    Eventuell hat dieses Problem schon einmal jemand gelöst?
    Ich bin für jeden Hinweis dankbar!

    Vielen Dank für die Mühen!
    Joachim

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Mit
    CONFIG SERIALIN = BUFFERED , SIZE = nn
    buffert der Bascom den Input.
    da hast du dann etwas mehr Zeit zum Verarbeiten.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    22.03.2005
    Beiträge
    9
    Hallo Robert,

    der Attiny kann nur einen geringen Buffer einrichten.
    Ausserdem kann der Benutzer den Plotter "beliebig" lange anhalten, so dass der Buffer immer zu kelin ist

    Gruss

    Joachim

  4. #4
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Oje. Dann brauchst du irgendein Handshake.
    Hardware oder XON/XOFF
    oder irgendeine Quittung, dann mußt du aber in deine Sende-Applikation reingehen.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    22.03.2005
    Beiträge
    9
    Wie kann XON/OFF beim ATTiny 2313 unter Bascom aktiviert werden?

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.08.2007
    Ort
    Oberhofen im Inntal (Tirol)
    Alter
    49
    Beiträge
    377
    Zitat Zitat von subcamera
    Wie kann XON/OFF beim ATTiny 2313 unter Bascom aktiviert werden?
    Damit: http://avrhelp.mcselec.com/index.htm...g_serialin.htm

    mfg
    Gerold

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    22.03.2005
    Beiträge
    9
    Hi Gerold,

    ich kein dort keinen Hinweis auf XOn/XOFF erkennen.
    Nur einen Hinweis auf RTS/CTS?

    Bin ich total blind?

    Gruss

    Joachim

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.08.2007
    Ort
    Oberhofen im Inntal (Tirol)
    Alter
    49
    Beiträge
    377
    Zitat Zitat von subcamera
    ich kein dort keinen Hinweis auf XOn/XOFF erkennen. Nur einen Hinweis auf RTS/CTS?
    Hallo Joachim!

    Das sind sie. Mit diesen zusätzlichen Leitungen bremst sich die USART ein. Diese schleifst du ebenfalls durch den MAX232 durch und schon sollte die Datenübertragung nur dann laufen, wenn der µC sich dafür Zeit nehmen kann. (das ist Theorie -- ich habe das noch nie selber ausprobiert)

    Siehe: http://www.sprut.de/electronic/inter...rs232.htm#hand

    Vielleicht musst du bei CONFIG COM1 http://avrhelp.mcselec.com/index.html?config_com1.htm auch noch den Parameter "synchrone" setzen. Das konnte ich leider nicht in Erfahrung bringen. Einfach mal ausprobieren.

    mfg
    Gerold
    :-)

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.08.2007
    Ort
    Oberhofen im Inntal (Tirol)
    Alter
    49
    Beiträge
    377
    Zitat Zitat von python_rocks
    Vielleicht musst du bei CONFIG COM1 http://avrhelp.mcselec.com/index.html?config_com1.htm auch noch den Parameter "synchrone" setzen. Das konnte ich leider nicht in Erfahrung bringen. Einfach mal ausprobieren.
    Hallo!

    Reine Spekulation:
    Vielleicht kann mit CONFIG COM1 und dem Setzen des Parameters "synchrone" der Software-Handshake aktiviert werden.

    Wikipedia: http://de.wikipedia.org/wiki/Rs232
    Zur Vermeidung von Datenverlusten muss der Empfänger die Datenübertragung anhalten können, wenn keine weiteren Daten mehr verarbeitet werden können. Dieser sogenannte Handshake kann auf zwei Arten realisiert werden, entweder softwareseitig über bestimmte Steuercodes oder über spezielle Leitungen.

    * Beim Software-Handshake sendet der Empfänger zur Steuerung des Datenflusses spezielle Zeichen an den Sender. Entsprechend werden für die Datenübertragung lediglich drei Leitungen (RxD, TxD und Gnd) benötigt, aber diese Art Handshake ist nur dann möglich, wenn die beiden Steuercodes in den Nutzdaten nicht vorkommen. Beim Xon/Xoff-Protokoll sendet der Empfänger zur Steuerung des Datenflusses spezielle Zeichen an den Sender (Xon = 11h und Xoff = 13h).
    * Beim Hardware-Handshake steuert der RxD-Empfänger über Steuerleitungen die Handshake-Eingänge CTS, DSR und DCD des TxD-Senders mit seinen Handshake-Ausgängen RTS → CTS und DTR → DSR & DCD. Ein Minimal-Interface mit Hardware-Handshake besteht demzufolge aus fünf Leitungen (TxD, RxD, Gnd, RTS und CTS). Dieser Abschnitt trifft so nur auf Nullmodem-Verbindungen zu.
    Das sollte man durch ausprobieren heraus bekommen können.

    mfg
    Gerold
    :-)

  10. #10
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Du mußt wirklich erstmal sehen, was die Software am PC für Möglichkeiten bietet, sonst reden wir uns da Fransen an den Mund.
    RTS/CTS hat den Vorteil, daß es vermutlich unterstützt wird, und für die notwendigen zwei Drähte bietet der MAX232 normalerweise noch Platz (eben aus diesem Grunde).

    XON/ XOFF ist ein Software-protokoll, da müßt' der PC mitspielen.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests