回答:
タイミングは、プロトコルが再同期する前にずれないように十分正確でなければなりません。
UARTシリアルは各バイトで再同期し、1バイトは約10ビットです(8ビットのデータと開始と停止)。UARTは各ビットの中央をターゲットとしていると想定しています。すべてが完璧で、片方の端だけが不正確で、リンクの両端の間に約5%の差がある場合。
しかしながら:
要するに、時計の1%の誤差はほぼ間違いなく問題ないということです。5%のエラーはほぼ間違いなく問題です。これらの2つの図の間では、全体像によって問題になる場合とそうでない場合があります。
これは、RCオシレーターにとっては難しい注文です。Rの許容誤差が1%で、Cの許容誤差が2%であるとします。これにより、RCネットワークの時定数に対して約3%の許容誤差が与えられます。これは、ドライバーチップによって発生するエラーについて考える前のことです。
つまり、一番下の行は、水晶振動子またはセラミック振動子を見る必要があるということです。
USBについては、第一原理から分析する経験はありませんが、https://www.silabs.com/community/interface/knowledge-base.entry.html/2004/03/15/usb_clock_tolerance-gVaiは1.5%と言っています低速では0.25%、全速では0.25%。
UART、典型的にはRS232型シリアルシステムで使用されるは、事前定義されたボーレート基本周波数クロックの分周に応じてデータラインのどこかの中間サンプリングにより、ビット働きます。そのため、送信されたデータと受信機が同じ周波数上にない場合、「サンプルポイント」は連続するビットのビットフレームのエッジに近づきます。
通常のUARTでは、バイトのビット長は10ビットまたは11ビットです。1スタート、8データ、1または2ストップビット。10ビット目の半分のワンダーは、0.5 / 10 = 5%のエラーに変換されます。
ただし、実際には、スタートビットのリーディングエッジからのオフセットを追加する基本周波数期間のレイテンシも追加する必要があるため、許容範囲はそれよりも小さくなります。基本周波数が高いほど、影響は少なくなります。
この目的で555タイマーを使用することについては、555回路で手動調整を行う予定がない限り、お勧めしません。
A USART一方が試みは、受信したデータへの送信を同期させることは、より複雑な制御方法を用います。これは、埋め込まれたクロックを持つデータパターンを使用するか、渡されたクロックを使用するか、または受信したデータエッジへの何らかの位相ロックによって可能です。(間違いなく、後者は本当に疑似同期です。)