non potresti usare ad esempio la seriale, che trasmette 8 (anche 9) bit alla volta?
Per come vorresti fare tu, dovresti attivare un interrupt sul pin che riceve, poi quando passi da alto a basso inizi a contare con un timer, quando ripassi ad alto vedi il conteggio e se è 1,2msec sai che stanno arrivando dati, altrimenti aspetti che rivada basso.
Quando invece hai il bit di start, ogni tot msec vedi lo stato del pin e lo prendi per uno o zero.
Cosa devi far comunicare, se si può chiedere?
Per "byte unico di 16" intendi 16 bit, quindi due byte attaccati?
Ste
..avevano magari fatto lo sgambetto al ka, ma il sangue restava sempre più denso dell'acqua.. [cit.]