Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:ems:ems-telegramme

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
wiki:ems:ems-telegramme [2019/05/19 12:01]
ingof
wiki:ems:ems-telegramme [2019/06/09 12:10] (aktuell)
ingof
Zeile 24: Zeile 24:
 Die Telegramme werden nach dem Polling gesendet. Der Busmaster kann dann Telegramme selber an alle Busteilnehmer senden. Wenn keine Telegramme mehr gesendet werden sollen wird das Polling beantwortet. Die Telegramme werden nach dem Polling gesendet. Der Busmaster kann dann Telegramme selber an alle Busteilnehmer senden. Wenn keine Telegramme mehr gesendet werden sollen wird das Polling beantwortet.
 Dabei ist das Bit7 der Zieladresse nicht gesetzt. Dabei ist das Bit7 der Zieladresse nicht gesetzt.
 +</WRAP>
 +
 +<WRAP nopagebreak>
 +==== CRC ====
 +
 +Die CRC ist eine XOR-Verknüpfung mit Rotation. Wenn der Datenwert größer als 0x7f ist wird der Wert mit 0x12 zusätzlich mit XOR verknüpft:
 +Hier ein Beispiel-Code zur CRC-Berechnung:
 +<file>
 +poly = 12
 +crc1 = 0x00
 +
 +for i in range(0,len(a)-1):
 +  crc1 = crc1 ^ int(a[i],16)
 +  crc2 = crc1
 +  if crc1 & 0x80: crc1 ^= poly
 +
 +  d = 0
 +  if crc1 & 0x80: d = 1
 +  crc1 = crc1 << 1
 +  crc1 &= 0xfe
 +  crc1 |= d
 +
 +=> crc2 
 +</file>
 </WRAP> </WRAP>
  
wiki/ems/ems-telegramme.txt · Zuletzt geändert: 2019/06/09 12:10 von ingof