- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
[参照ドキュメント]
https://www.cypress.com/file/504581/download
[質問内容]
UARTの FRAME ERRORについて
1.5ビット周期のストップビットシーケンスでは、ストップビットエラーを検出するということですが
1.5ビット周期のストップビットシーケンスでも、スタートビットでエラーが発生するのかを知りたいです。
ドキュメントには、FRAME ERRORは、スタートまたはストップのいずれかのエラーが発生して起こると記載があります。
1ビット周期であれば、スタートビットエラーのみと記載がありますが、
1.5ビット周期の場合は、スタートとストップビットエラー両方なのか、ストップビットエラーのみなのかどちらになりますでしょうか。
現状、1ビット周期のストップビットシーケンスを設定しています。
このときに、ボーレート以上の周波数パルスが入力された際に、スタートビットエラーが発生しています。
1.5ビット周期にした場合に、ストップビットエラーのみの検出となるのであれば
ボーレート以上の周波数パルスが入力されても、スタートビットとみなさずノイズとしてキャンセルされるのではないかと考えています。
そのため、1.5ビット周期のストップビットシーケンス時のスタートビットエラーの有無を知りたいと思っています。
解決済! 解決策の投稿を見る。
- ラベル:
-
PSoC 4 MCU
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
“1.5ビット周期のストップビットシーケンスでも、スタートビットでエラーが発生するのか”
A. はい、スタートビットでエラーが発生した場合は検出されます。
補足ですが、Stop bitが検出されるタイミングとStart bitが検出されるタイミングは違い、
ストップビットシーケンスの周期の長さによって検出されるerrorが変わるというわけではありません。( タイミングについては002-27800 Rev. **, 12.1.45 SCB0_INTR_RXを参照)
(Start bit)
- CPUが立ち上がり、UART receiver機能がenableになったとき(first start bit)、Data frameを受け取る前
(Stop bit)
- Data frameを受け取った後
通常、上記の通りStart bit/Stop bitが検出されますが、Stop bitの検出には1 bit必要なので、次のframeにおけるStart bitを安全に検出するために
少なくとも1.5bit周期で設定する必要があります。
Infineon Technologies
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
“1.5ビット周期のストップビットシーケンスでも、スタートビットでエラーが発生するのか”
A. はい、スタートビットでエラーが発生した場合は検出されます。
補足ですが、Stop bitが検出されるタイミングとStart bitが検出されるタイミングは違い、
ストップビットシーケンスの周期の長さによって検出されるerrorが変わるというわけではありません。( タイミングについては002-27800 Rev. **, 12.1.45 SCB0_INTR_RXを参照)
(Start bit)
- CPUが立ち上がり、UART receiver機能がenableになったとき(first start bit)、Data frameを受け取る前
(Stop bit)
- Data frameを受け取った後
通常、上記の通りStart bit/Stop bitが検出されますが、Stop bitの検出には1 bit必要なので、次のframeにおけるStart bitを安全に検出するために
少なくとも1.5bit周期で設定する必要があります。
Infineon Technologies
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
ご連絡ありがとうございます。
承知いたしました。