ボーレートの誤差について

いつもお世話になっており、有難うございます。

SH7269とRX62Nでシリアル通信をします。SHはPCLK=66.660MHz、RX62Nは50MHzできるだけ速い通信を行おうとしています。38400bpsで行うと、それぞれの誤差はSH=+0.459%、RX=-0.75%となり良好であると言えます。そこで115200bpsで行った場合、SH=+0.459%、RX=-3.118%となります。つまり常に3.6%程度はずれています。テストしたところ、エラーなく通信しています。通信は11ビットですが、このボーレートを使うのはまずいでしょうか。

 

Parents
  • わわいです
    シリアル通信はスタートビットで同期をとって通信してます。
    で、1バイトの通信はスタートビット、ストップビット合わせて10ビットの通信となりますんで、あらかた10%程度の誤差まで行けるという見積もりになろうかと思います
    #細かく計算するともうちょい厳しい数字になろうかと

    で、そのボーレートの合わせて4%程度の誤差をどう見るかってことですが、それは、あなたがどう思うか、になってきます。
    一度たりともエラーが許容できない、という環境であれば、エラー回復の手段を講じる、ということになろうかと思いますが、
    繰り返しの通信で一度や二度エラーぶっこいても構わないという程度のものならそれで行けばいいんじゃないでしょうか。
Reply
  • わわいです
    シリアル通信はスタートビットで同期をとって通信してます。
    で、1バイトの通信はスタートビット、ストップビット合わせて10ビットの通信となりますんで、あらかた10%程度の誤差まで行けるという見積もりになろうかと思います
    #細かく計算するともうちょい厳しい数字になろうかと

    で、そのボーレートの合わせて4%程度の誤差をどう見るかってことですが、それは、あなたがどう思うか、になってきます。
    一度たりともエラーが許容できない、という環境であれば、エラー回復の手段を講じる、ということになろうかと思いますが、
    繰り返しの通信で一度や二度エラーぶっこいても構わないという程度のものならそれで行けばいいんじゃないでしょうか。
Children
No Data