Come fanno due microcontrollori (TX ed RX) ad accordarsi tra loro sulla lunghezza del messaggio? Per farlo utilizziano un protocollo ovvero un accordo tra il trasmettitore ed il ricevitore. Un metodo con il quale il trasmettitore dice al ricevitore quanto è lungo il dato è quello di mettere all’inizio un numero uguale alla lunghezza del dato. Naturalmente quando questo numero è maggiore di 0 vuol dire che il trasmettitore INVIA un dato, mentre quando questo numero è uguale a 0 vuol dire che il trasmettitore non sta inviando nulla. Il trasmettitore non invia un dato ma un pacchetto di dati chiamato Frame che possiede una lunghezza massima e minima (la minima non è per forza uguale a 0). Un altro metodo con cui possiamo dire al ricevitore quanto è lungo il pacchetto è quello di scrivere alla fine del messaggio un carattere che non viene utilizzato per indicare la fine del messaggio. Ipotizziamo di voler inviare un messaggio di testo come “ciao” ad un ricevitore, accanto a questo messaggio inseriamo il simbolo “§” (il simbolo che va preso non deve essere utilizzato), perciò il ricevitore riceverà questo messaggio “ciao§” fatto ciò il trasmettitore potrà inviare un nuovo messaggio che si concluderà sempre con “§”. Naturalmente il simbolo che si utilizza deve essere inserito in codice ascii. Una volta si utilizzavano dei codici che andavano dal numero decimale 0 al numero decimale 32 e li possiamo osservare nella tabella. Infatti se volevamo inviare un messaggio di testo bisognava inserire :
“02” + (inizio testo)”messaggio” + “03”(fine testo) + “04”(fine trasmissione)