- 3D-Druck Einstieg und Tipps         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: RS232 2xAvr's+PC mit Busy Leitung

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2006
    Ort
    Aachen
    Alter
    35
    Beiträge
    718

    RS232 2xAvr's+PC mit Busy Leitung

    Anzeige

    E-Bike
    Ich habe das Problem das ich 2 Avr's mit dem PC verbinden will.
    Ich es zunächst mit einer "Reihenschaltung" probiert PC|Mega8|Mega32
    aber da gibt es Probleme mit dem Software UART des Mega8.

    Jetzt hab ich mir überlegt die beiden Rxds der Avr's zu verbinden und halt an den Txd vom PC zu hängen, und das gleiche auch mit den Txd der Avrs an den Rxd vom PC.

    Der Emfang wäre ja kein Problem, nur wenn beide senden wollten das geht natürlich nicht.
    Ich hatte mir überlegt einfach ein Kabel zwischen den Avr's zu legen, eine art Busy-Leitung.
    Per Software also einfach 5V oder GND auf die Leitung legen wenn einer der µC's gerade senden bzw nicht senden will.

    Kann ich einfach ein Kabel so zwischen die Pins hängen?
    RGB-IR-Lampe, Catwiesel Bot, PC Terminal, Schrittmotoransteuerung, Elektroschocker, Stundenplan... www.stefan-reible.de

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.05.2005
    Ort
    Rott am Inn
    Alter
    36
    Beiträge
    373
    Hi,
    ja klingt für mich plausibel genug um einen Versuch zu wagen. Ich denke normalerweiße müsst das so funktionieren.
    Mfg franz

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2006
    Ort
    Aachen
    Alter
    35
    Beiträge
    718
    Ich hab etwas sorgen was passiert wenn es mal vorkommt, dass beide die Busy Leitung high schalten wollen.
    RGB-IR-Lampe, Catwiesel Bot, PC Terminal, Schrittmotoransteuerung, Elektroschocker, Stundenplan... www.stefan-reible.de

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.05.2005
    Ort
    Rott am Inn
    Alter
    36
    Beiträge
    373
    Ja ich denke das lässt sich vermeiden in dem es einfach nicht möglich ist das beide die Leitung high schalten. Du musst dann eben den Pin abfragen und wenn der eben schon high ist kann eben der eine so lange nicht senden bis die Leitung wieder low wird.
    Mfg franz

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2006
    Ort
    Aachen
    Alter
    35
    Beiträge
    718
    Jo so wollte ich das auch machen.

    Hm, aber ich müsste die Leitung ja immer in einem definierten Zustand haben.
    Also beispielsweise per 10K gegen GND.

    geht das so?
    RGB-IR-Lampe, Catwiesel Bot, PC Terminal, Schrittmotoransteuerung, Elektroschocker, Stundenplan... www.stefan-reible.de

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2006
    Ort
    Aachen
    Alter
    35
    Beiträge
    718
    Hm so hab mal was gecodet.
    Der AVR emfängt ein Befehl, startet dann den Motor.
    Anschließend versuch er solang eine Bestätigung zurückzuschicken bis die Leitung frei ist.

    Code:
       If Command = "move forward" Then
          Speed_left = 200
          While Fertig = 0
             If Rs232busy = 0 Then
                Rs232busy = 1
                Print "forward"
                Rs232busy = 0
                Fertig = 1
             End If
          Wend
          Fertig = 0
       End If
    RGB-IR-Lampe, Catwiesel Bot, PC Terminal, Schrittmotoransteuerung, Elektroschocker, Stundenplan... www.stefan-reible.de

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2006
    Ort
    Aachen
    Alter
    35
    Beiträge
    718
    So habs grad getestet, das Ergebnis ist sehr lustig.

    Der M8 soll
    Print "forwardm8" bzw Print "stopm8" machen, und der M32
    Print "forwardm32" bzw Print "stopm32"

    Nun darfst du raten was dabei rausgekommen ist..

    forwardm;?stopm;?
    RGB-IR-Lampe, Catwiesel Bot, PC Terminal, Schrittmotoransteuerung, Elektroschocker, Stundenplan... www.stefan-reible.de

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2006
    Ort
    Aachen
    Alter
    35
    Beiträge
    718
    Hm ich brauch 2 Leitungen zwischen den AVRs, ich kann ja nicht einen als Ein- und Ausgang definieren.
    RGB-IR-Lampe, Catwiesel Bot, PC Terminal, Schrittmotoransteuerung, Elektroschocker, Stundenplan... www.stefan-reible.de

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    22.11.2005
    Ort
    Braunschweig
    Alter
    48
    Beiträge
    685
    Moin!
    Ich hab da 'nen Vorschlag :

    Setze an jedem µC den Pin als Eingang und häng an die Leitung einen Pullup-Widerstand. Dann liest jeder den Pin, und wenn der Pin High ist, darf der Controller seinen Pin als Augang schalten und die Leitung auf Low ziehen, solange er sendet, danach schaltet er den Pin wieder als Eingang, der Pullup zieht das ganze auf High und so weiter.....

    MfG
    Volker
    Meine kleine Seite
    http://home.arcor.de/volker.klaffehn
    http://vklaffehn.funpic.de/cms
    neuer Avatar, meine geheime Identität

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.05.2005
    Ort
    Rott am Inn
    Alter
    36
    Beiträge
    373
    Hallo,
    den Vorschlag von Volker find ich gut hab ich eigentlich auch so gedacht, auch wenn ich das vielleicht nicht so zu Papier gebracht hab.
    Mfg franz

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

12V Akku bauen