@ Warum Start und Endphrase:
Es gibt Protokolle fester Länge und variabler Länge.
Beispiel:
gegeben: Du verwendest Deinen Slave als einfachen AD-Wandler um einen
Messwert einzulesen. Der ADC des µC hat 10Bit Breite.
ist der Der Messwert kleiner als 255 würde es reichen ein Byte zu übertragen.
Bei einem größeren Messwert bräuchtest Du dann (von 255 bis 1024) zwei
Byte um das Messergebnis zu übertragen.
Eine Variante ist Du hängst an den Anfang des Übertragungsblocks eine
Mitteilung ob nur ein Byte oder zwei kommen,
oder du überträgst prinzipiell 2 Byte,
oder du schcikst ein Stopkondition, damit der Master weiß hier ist
die Nachricht zuende.
Beim Profibus sind so ziemlich alle Varianten auf einmal verwendet
je nach gewähltem Telegrammtyp.
http://www.profibus.com/imperia/md/c...002-German.pdf
Im Anhang schick ich mal die Profibus Dekodierungstabelle um zu zeigen
wie komplex eine Kommunikation so sein kann.
Lesezeichen