1
\$\begingroup\$

I have understood that this asyncronous protocol requires a status byte that always starts with a 1 to be able to tell what the start is of the next package and what to do with the data bytes.

When utilizing running status, the status byte can be omitted to save time. How then can the protocol tell what the start is of the data byte?

\$\endgroup\$
1
\$\begingroup\$

In the MIDI protocol, "running status" is only permitted on messages that have a fixed length. Therefore, the receiver can keep track of the message boundaries by counting the data bytes.

\$\endgroup\$
  • \$\begingroup\$ OK, nice. So how does it keep track that a byte has been recieved? \$\endgroup\$ – hacke Dec 1 '12 at 12:46
  • \$\begingroup\$ Every byte is bracketed by start and stop bits (standard UART protocol). \$\endgroup\$ – Dave Tweed Dec 1 '12 at 12:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.