Skip to main content
Bumped by Community user
Bumped by Community user
added 26 characters in body
Source Link
NicoCaldo
  • 315
  • 5
  • 14

I'm working on a code (written by other people) that uses a custom protocol to transmit data over RS485 in 8-bit packets.

For some reason, the protocol is built so that every 8 bits transmitted are actually 7 bits of data. This is because the MSB is always set high.

For instance, if I want to send 0x01, I need to send 0x81, and so on.

I don't really know why. The protocol uses a standard 16-bit CRC calculated over the whole series of packets.

Any idea?

I'm working on a code that uses a custom protocol to transmit data over RS485 in 8-bit packets.

For some reason, the protocol is built so that every 8 bits transmitted are actually 7 bits of data. This is because the MSB is always set high.

For instance, if I want to send 0x01, I need to send 0x81, and so on.

I don't really know why. The protocol uses a standard 16-bit CRC calculated over the whole series of packets.

Any idea?

I'm working on a code (written by other people) that uses a custom protocol to transmit data over RS485 in 8-bit packets.

For some reason, the protocol is built so that every 8 bits transmitted are actually 7 bits of data. This is because the MSB is always set high.

For instance, if I want to send 0x01, I need to send 0x81, and so on.

I don't really know why. The protocol uses a standard 16-bit CRC calculated over the whole series of packets.

Any idea?

Source Link
NicoCaldo
  • 315
  • 5
  • 14

Reason to have MSB in a serial communication always high

I'm working on a code that uses a custom protocol to transmit data over RS485 in 8-bit packets.

For some reason, the protocol is built so that every 8 bits transmitted are actually 7 bits of data. This is because the MSB is always set high.

For instance, if I want to send 0x01, I need to send 0x81, and so on.

I don't really know why. The protocol uses a standard 16-bit CRC calculated over the whole series of packets.

Any idea?