RS485, Adress- und Datenbyte

Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 310
Registered: 07 / 2003
Subject:

RS485, Adress- und Datenbyte

 · 
Posted: 22.10.2021 - 21:06  ·  #1
Compiler Rev. 5.09.51

Hallo,
nach 20 Jahren gab es jetzt eine Revision einer Baugruppe.
Vorher war ein AT89C2051 eingebaut. Habe jetzt einen ATmega328P-AU genommen.
Die Schnittstellensoftware muß abwärtskompatibel sein. Auf das System mit dem kommuniziert werden muß habe ich keinen Einfluß.
Wie kann man beim "hören" an der RS485.Schnittstelle das Adressbyte herausfiltern um festzustellen, daß meine Baugruppe angesprochen wird?
Anschließend mit dem Master-Adressbyte Antworten, gefolgt von 8bit Datenbytes?
Also die Umschaltung Adress- Datenbyte?
Oder geht das irgendwie automatisch?
Vielleicht habe ich das in der Doku übersehen?
Wenn mir jemand einen Code-Schnipsel hätte, würde vielleicht auch schon reichen.
Danke
Gruß Mathias
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: RS485, Adress- und Datenbyte

 · 
Posted: 22.10.2021 - 23:17  ·  #2
Quote by Mathias

Compiler Rev. 5.09.51

Hallo,
nach 20 Jahren gab es jetzt eine Revision einer Baugruppe.
Vorher war ein AT89C2051 eingebaut. Habe jetzt einen ATmega328P-AU genommen.
Die Schnittstellensoftware muß abwärtskompatibel sein. Auf das System mit dem kommuniziert werden muß habe ich keinen Einfluß.
Wie kann man beim "hören" an der RS485.Schnittstelle das Adressbyte herausfiltern um festzustellen, daß meine Baugruppe angesprochen wird?
Anschließend mit dem Master-Adressbyte Antworten, gefolgt von 8bit Datenbytes?
Also die Umschaltung Adress- Datenbyte?
Oder geht das irgendwie automatisch?
Vielleicht habe ich das in der Doku übersehen?
Wenn mir jemand einen Code-Schnipsel hätte, würde vielleicht auch schon reichen.
Danke
Gruß Mathias


Hallo Mathias,

was für ein Protokoll?
Modbus-ASCII
Modbus-RTU
Oder irgendein anderes?

Wenn ich eine Master/Slave Kom. prüfe, schalte ich mich immer mit einen RS485 Analyser dazwischen und prüfe das ganze mit.

Wenn man im Master Slave verfahren arbeitet, hören eigentlich immer alle Slaves mit, kommt deren Adresse, dann antworten die in einem Zeitfenster X, je nach Protokoll. Alle anderen halten den Mund.

Im Moment weiß ich nicht von welchem Protokoll Du redest und auf was Du hinaus möchtest, hast Du ein paar Infos mehr?

Gruß
Thortsten
Mathias
Benutzer
Avatar
Gender: n/a
Location: Weingarten - Baden
Posts: 310
Registered: 07 / 2003
Subject:

Re: RS485, Adress- und Datenbyte

 · 
Posted: 22.10.2021 - 23:48  ·  #3
Master schickt auf den Bus meine Slaveadresse $42 (9bit)
Meine Baugruppe (Slave) erkennt seine Adresse und sendet die Masteradresse $81 (9bit) mit anschließenden Datenbytes (8bit). Sind nur Werte eines AD-Wandlers.
Das war's eigentlich schon.
Also, wie kann man zwischen Adressbyte (9bit) und Datenbyte (8bit) umschalten?
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Re: RS485, Adress- und Datenbyte

 · 
Posted: 23.10.2021 - 22:26  ·  #4
Quote by Mathias

Master schickt auf den Bus meine Slaveadresse $42 (9bit)
Meine Baugruppe (Slave) erkennt seine Adresse und sendet die Masteradresse $81 (9bit) mit anschließenden Datenbytes (8bit). Sind nur Werte eines AD-Wandlers.
Das war's eigentlich schon.
Also, wie kann man zwischen Adressbyte (9bit) und Datenbyte (8bit) umschalten?


Hallo Mathias,

gar nicht!
Wenn das immer 9Bit Adresse und 8Bit Daten sind, dann sendest Du einfach die Adresse und hintendran die Daten fertig.

Viele Protokolle haben da dann noch Zeitfenster zwischen Adress und Daten oder zwischen den Telegrammen.

Hört sich nach einen 0815-Protokoll an ohne ACKN oder so, einfach sturr antworten ;-)

Du musst halt das enable beim senden des Slaves setzen, damit der RS485 Treiberbaustein auf senden gestellt wird, nach dem senden wieder auf hören umschalten.

Du empfängst das Telegramm, wenn es Deine Adresse ist, antwortest Du, ansonsten ignorierst Du dieses Telegramm.

Gruß
Thorsten
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   81   95 · Page-Gen-Time: 0.034102s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI