-
        
+ Antworten
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: 2x ATMEGA 1x serielle Schnittstelle?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137

    2x ATMEGA 1x serielle Schnittstelle?

    Mal ne blöde Frage....

    Ich hab zwei ATMEGA die ich einfach parallel an die serielle Schnittstelle anschließe (über n MAX232 IC)... Die Software auf den AVR´s wird so programmier das immer nur ein AVR senden kann, und der andere AVR warten muss bis der erste seine Daten gesendet bzw. empfangen hat. Geht das überhaupt? oder is das totaler Blödsinn?

    Das Problem ist halt das ich die Messwerte von 2 AVR´s über eine serielle schnittstelle überwachen will...

    Hat da jemand ne Idee?

    Gruss

    Jan

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    11.01.2004
    Ort
    Altomünster
    Alter
    28
    Beiträge
    148
    Des funzt schon aber so weit ich weiß brauchst du da keine MAX232, sonst konvertierst du die Spannung erst auf 5V(oder was halt die serielle Schnittstelle hat) und dann wieder runter.
    Du musst halt den "Sende-Port" an den "Empfangs-Port" vom anderen und umgekehrt anschließen.
    Dann musst du Programme schreiben, die nur senden, wenn sie nicht Empfangen, aber ich glaub des brauchst du auch net, aber da kann ich mich täuschen, sonst brauchst du nen Buffer.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    Moin,

    neeee jetzt haste mich falsch verstanden... Ich hab meine serielle Schnittstelle. Die is am PC über den MAX232 angeschlossen. Hinter dem MAX232 sind dann zwei ATMEGA die Daten an den PC senden sollen... Nun war die Frage ob das funktioniert wenn man den ATMEGA´s praktisch sagt das Sie nicht gleichzeitig senden und nich gleichzeitig empfangen dürfen...

    Gruss

    Jan

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    Ich hab zwei ATMEGA die ich einfach parallel an die serielle Schnittstelle anschließe (über n MAX232 IC)... Die Software auf den AVR´s wird so programmier das immer nur ein AVR senden kann, und der andere AVR warten muss bis der erste seine Daten gesendet bzw. empfangen hat. Geht das überhaupt? oder is das totaler Blödsinn?
    Besonders gesund hört sich das für mich nicht an, wenn du RX und TX der beiden Controller einfach so parallel schaltest.
    Wenn der eine Controller TX auf high schaltet und beim anderen liegt TX auf low (oder auch umgekehrt) klingt das irgendwie nach Kurzschluss.

    Ich weiss nicht, ob die Controller das abkönnen. Wenn du es einfach probieren willst, würde ich da wenigstens Widerstände zwischensetzen.

    Wenn man mehrere Controller über die serielle Verbinden will, könnte man das auch als Rngschaltung aufbauen.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    Hallo recycle

    Hmmm da haste aber recht, das hab ich noch nicht bedacht...

    Was ist eine Rngschaltung? Haste da n Beispiel oder so?

    Gruss

    Jan

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    @boeseTURBO-CT

    Hmmm da haste aber recht, das hab ich noch nicht bedacht...
    Ob ich da wirklich recht habe, weiss ich nicht genau. Das hängt ja letztendlich davon ab, wie die RX und TX Pins beim ATMega intern beschaltet sind.
    Mein Posting meinte ich erst mal nur als Warnung, vielleicht meldet sich ja noch jemand der sich etwas besser mit dem Innenleben der ATMegas auskennt und weiss ob die das verkraften oder nicht.

    Was ist eine Rngschaltung? Haste da n Beispiel oder so?
    Die Ringschaltung wurde vor kurzem in irgendeinem Thread hier besprochen. In welchem weiss ich leider nicht mehr, da müsstest du es mal mit der Suchfunktion probieren.

    Im Prinzip verbindest du dabei TX vom 1. mit RX vom 2. und TX vom 2. mit RX vom 3. Controller usw.
    TX vom letzten Controller verbindest du dann wieder mit RX vom ersten und erhältst so einen Ring, bei dem jeder Controller Daten von dem einen Nachbarn empfangen und an den anderen senden kann.

    D.h., dass die Daten im Ring immer von einem Teilnehmer an den anderen weitergegeben werden müssen, bis sie bei demjenigen ankommen für den sie bestimmt sind. Bei 3 Teilnehmern sollte das aber nicht besonders problematisch sein.

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    22.11.2003
    Beiträge
    991
    Zitat Zitat von recycle
    Ob ich da wirklich recht habe, weiss ich nicht genau. Das hängt ja letztendlich davon ab, wie die RX und TX Pins beim ATMega intern beschaltet sind.
    Mein Posting meinte ich erst mal nur als Warnung, vielleicht meldet sich ja noch jemand der sich etwas besser mit dem Innenleben der ATMegas auskennt und weiss ob die das verkraften oder nicht.
    Zwei Ausgänge aneinander hängen ist nie gut. Die ATmegas haben intern bei den Ports Push-Pull Treiber, das heißt wenn man auch nur aus Versehen die falsch setzt kann es einen dicken Kurzschluss geben.

    @boeseTURBO-CT
    Du könnest dafür aber zum Beispiel RS485 Treiber einsetzen, die sind extra dafür ausgelegt das die Daten zwischen mehreren Teilnehmern ausgetauscht werden können...

    MfG Kjion

  8. #8
    Gast
    Ringschaltung wird hier beschrieben
    http://www.roboternetz.de/phpBB2/vie...light=netzwerk

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    @Kjion

    Hast du da irgentwo n Beispiel wie man das letztendlich verkabelt? Woher weiß den welcher IC wann welcher IC angesprochen wird?

    Gruss

    Jan

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.03.2004
    Beiträge
    137
    Kann man die Umschaltung zwischen den zwei seriellen schnittstellen der AVR´s nicht ner logischen "UND" Verknüpfung ein und ausschalten?

+ Antworten
Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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