-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: I2C oder RS485 zwischen Atmega und Visual Basic

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.04.2005
    Ort
    Bayern
    Alter
    31
    Beiträge
    336

    I2C oder RS485 zwischen Atmega und Visual Basic

    Anzeige

    Hallo

    Da ich nun erfolgreich ein VB Programm erstellen kann, möchte ich gerne mit meinem Atmega 32 kommunizieren. Wie kann ich das mit Visual Basic machen? gibt es da gute Tutorials? oder könnt ihr mir da weiter helfen?

    man könnte doch dann über den Pin 7 (Request to Send) die RE und DE Pins des Max 485 schalten.

    doch wie spreche ich diesen Pin an?

    könnte man das so realisieren

    könnte das so funktionieren?
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken rs232rs485.jpg   rs232_rs485.jpg  

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    zu RS232_RS485.JPG
    Die Com-Schnittstelle hat +/- 12V als Pegel, die direkte
    Beschaltung der Datenrichtungspins könnte
    so Probleme ergeben.
    Die kannste aber auch über den Max232 laufen lassen.
    R2 und T2 haste ja noch frei davon.

    In VB wird die COM-Schnittstelle über das MSCom
    angesprochen und auch die RTS kannste da einfach setzen
    per direkt ansprechen, das gibt keine Probleme
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.04.2005
    Ort
    Bayern
    Alter
    31
    Beiträge
    336
    für was sind die Pins R2 und T2 am Max232? würde es irgendwie mit RS485 funktionieren? RS232 will ich nicht verwenden, da ich mehrere Atmegas am PC anschließen will.

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    genau darum gehts doch,
    du hast am PC eingebaut die RS232, di ewillste umsetzen auf
    RS485. Dazu brauchste einmal den Max232 um die
    RS232 auf TTL-Pegel zu wandeln, dann den Max485 oder Ltc485
    um vom TTL-Pegel auf RS485 zu kommen.
    R2 und T2 erfüllen die gleichen Aufgaben wie R1 und T1
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.04.2005
    Ort
    Bayern
    Alter
    31
    Beiträge
    336
    achso und wie kann ich dann das mit DE und RE regeln? Damit ich auf senden oder empfangen schalten kann. Oder soll ich dafür R2 und T2 verwenden?

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    Sag mal hast Du Dich schonmal mit der Materie
    der seriellen Datenübertragung überhaupt was
    selber recherchiert?

    Die Flussrichtung Deines Busbausteins 485 kann NICHT
    vom Bus selbst bestimmt werden.
    Das muß Dein PC oder µC dem Baustein sagen.

    Der Spannungspegel der RS232 ist +/- 12V,
    das kann Dein 485er Busbaustein als Steuersignal normalerweise
    nicht direkt ab, daher der Pegelwandler Max232

    Es gibt hier im Forum aber auch ein ganz nettes Tutorial über die RS485
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.04.2005
    Ort
    Bayern
    Alter
    31
    Beiträge
    336
    dass die Flussrichtung nich vom bus selbst bestimmt wird ist schon klar. nur wie sagt mein PC dem Baustein das? RS485 habe ich schon zwischen zwei Controllern erfolgreich zum laufen gebracht.(da sag ichs dem MAX485 durch einen 5V Pegel ob er auf Senden oder Empfangen schalten soll) nur hab ich keine Ahnung wie ich das mit dem PC sonst lösen soll. So gut kenn ich mich noch nicht aus. Deshalb frag ich ja auch nach. Diese Tutorials hab ich schon alle durchgelesen und das nicht nur einmal.

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    Du hast doch am COM-Port deines PC nicht nur RX und TX, ok, GND
    wird ja eh voausgesetzt.

    da gibts noch:
    Request To Send (RTS)
    Clear To Send (CTS)
    Data Set Ready (DSR)
    Data Carrier Detect (DCD)
    Data Terminal Ready (DTR)
    Ring Indicator (RI)

    Du könntest z.B. RTS verwenden um den 485 umzuschalten.
    Der RTS führt wie RxD und TxD auch die Pegel
    +/- 12V, wodurch Du eben per Beschaltung auch gezwungen bist
    den in +5V und GND-Pegel umzuformen, damit Du den 485er
    damit ansteuern kannst.
    Du kannst das per Gleichrichterdiode, Spannungsteiler und
    Pulldown machen, oder über den Max232.
    Zu diesem Zweck hat der Max den R2In, der wie der R1In
    die Pegelwandlung auf +5 und 0 vornimmt.
    dann nimmste den R2Out und führst den auf DE /RE und fertig
    ist die 485er Schnittstelle.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken rs232rs4852.jpg  
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.04.2005
    Ort
    Bayern
    Alter
    31
    Beiträge
    336
    so einfach geht das? werd ich dann mal ausprobieren. Aber danke schon mal.

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    Ja so einfach geht das

    Wichtig beim 485, wie Du ja bei den µC Verbindungen sicher
    schon gemerkt hast ist das Timing der Flussrichtungsumschaltung,
    also schön wie gehabt den Sendepuffer der Com-Schnittstelle
    auf empty überprüfen bevor du umschaltest.

    Stellt sich nun noch die Frage welches VB Du benutzt
    für die Codeerstellung, oder haste den schon?

    MSCOM:

    RTSEnable = True / False und DTREnable = True / False
    Vor den Erfolg haben die Götter den Schweiß gesetzt

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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