vấn đề chính của truyền thông nối tiếp là phân biệt giữa các chuỗi byte với nhau. có một cách khá đơn giản và hiệu quả là dùng một khoảng thời gian để tách từng chuỗi byte.
Vd bạn muốn truyền 5byte 1 lần, với 9k6 thì mất khoảng 5ms, vậy bạn thử cứ 110ms truyền một lần, sẽ có 100ms để phân tách chuỗi byte. đơn giản là bạn cứ nhận được 1byte thì start lại timer, nếu timer out (khoảng 50ms không nhận được byte nào nữa) thì có nghĩa là hết bản tin.
|