Note that there are some explanatory texts on larger screens.

plurals
  1. POSimple serial point-to-point communication protocol
    primarykey
    data
    text
    <p>I need a simple communication protocol between two devices (a PC and a microcontroller). The PC must send some commands and parameters to the micro. The micro must transmit an array of bytes (data from sensor).</p> <p>The data must be <a href="http://en.wikipedia.org/wiki/Error_detection_and_correction" rel="noreferrer">noise protected</a> (besides parity checking, I think I need some other data correction method).</p> <p>Is there any standard solution to do this? (I need only an idea, not the complete solution).</p> <p>P.S. Any advice is appreciated. <em>P.P.S Sorry for any grammar mistakes, I hope you understand.</em></p> <p><strong>Edit 1.</strong> I have not decided whether it will be <strong><em>master/slave</em></strong> protocol or both sides can initiate communication. The PC must know when micro have done a job and can send data. It can continuously poll the micro if data is ready, or the micro can send data, when a job is done. I don't know which is better and simpler.</p> <p><strong>Edit 2.</strong> <strong><em>Hardware and <a href="http://en.wikipedia.org/wiki/Physical_Layer" rel="noreferrer">physical layer</a> protocol.</em></strong> Since <a href="http://en.wikipedia.org/wiki/RS-232" rel="noreferrer">RS-232</a>C serial standard used in the PC, I will use <a href="http://en.wikipedia.org/wiki/Asynchronous_serial_communication" rel="noreferrer">asynchronous communication</a>. I will use only RxD, TxD and GND signals. I can't use additional wires because the microcontroller AFAIK doesn't support them. BTW I'm using the <a href="http://en.wikipedia.org/wiki/Atmel_AVR" rel="noreferrer">AVR</a> ATmega128 chip.</p> <p>So I will use fixed baud rate, 8 bits of data, 2 stop bits without parity checking (or with?).</p> <p><strong><em><a href="http://en.wikipedia.org/wiki/Data_Link_Layer" rel="noreferrer">Data link protocol</a></em></strong>. That's what my question primarily concerned about. Thanks for suggesting <a href="http://en.wikipedia.org/wiki/High-Level_Data_Link_Control" rel="noreferrer">HDLC</a>, <a href="http://en.wikipedia.org/wiki/Point-to-Point_Protocol" rel="noreferrer">PPP</a> and <a href="http://en.wikipedia.org/wiki/Modbus" rel="noreferrer">Modbus</a> protocols. I will research on it.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload