ラズベリーパイシリアルポート

ラズベリーパイシリアルポート

書きたいディスプレイがあります。これはシリアルポートを介して達成できます。 USB-RS-232コンバータを使用すると、本当に魅力的に動作します。私はシリアルコンバータのRX、TX、GNDラインだけを試しましたが、それでも機能しました。これで、このディスプレイを小さなボックスに入れてRaspberry Piとペアリングしたいので、大きなUSB-RS-232コンバータのためのスペースは残りません。 Raspberry Piの内部シリアルポートを試してみました。 9600ボード設定を使用してください$ sudo stty -F /dev/ttyAMA0 9600。ただし、モニターに接続するとゴミだけが表示され、通常の制御コマンド(RS-232コンバーターで動作)も機能しません。 GPIO TXを使用して$ sudo minicom -b 9600 -o -D /dev/ttyAMA0RXにループすると、コンソールに正しい文字が表示されますminicom。 GPIOシリアルポートをUSB-RS-232コンバータのRXおよびTXピンにループし、グランドを接続し、minicom転送速度が9600に設定されている両方のポートを開きます。場合によっては、他の端末にいくつかの出力が表示されますが、結果的にはゴミです。

答え1

問題は、PiにはRS232ポートがありませんが、モニタにはあることです。

Piには(LV-)UARTインタフェースがあり、TXピンは0V(論理)0と3.3V(論理)を出力します1。 Piではすでに3.3Vを使用できるため、これは簡単です。ただし、これは単一のPCBまたは単一のデバイス内通信にのみ適用されます。

長距離デバイス間の通信には、干渉信号が少ないRS232などのシステムを使用してください。波形の論理構造(ビットレート、タイミング、スタートビット、ストップビット、パリティビット、データビット)はUARTと同じですが、論理電圧レベルは-15V...-3V、1+15Vです。 ..+3Vはロジックに使用されます0。つまり、より高い(および負の)電圧があるだけでなく、その意味も逆です。

したがって、モニターにRS232レベルが必要で、Piから3.3Vレベルを取得した場合、通常はデータが認識されず、認識しても一般的にゴミです。

もちろん、同じインターフェイスでRXとTXを接続すると、期待した結果が得られます。

ただし、RS232 TX出力に電流制限がないと、Piが損傷する可能性があります。

市販のUART-RS232コンバータボードがありますが、はんだ付けが必要な場合、このボードにはMAX3232(+ 4個のコンデンサ)のみが含まれています。さらに、ICはPiの3.3V電源電圧を使用してより高い(負の)電圧レベルを生成します。

より一般的なのはMAX232(なぜそれが呼ばれるのか推測してください)ですが、3.3Vではなく5Vの動作用に設計されています。


最後に、UARTとRS232は同じ論理構造を使用しているため、2つの間、特にソフトウェア(プログラマ)を区別することは不可能です。シリアルインタフェースタイプですが、「シリアルインタフェース」とは見なされないI²CやSPIなどの他のインタフェースもありますが、しばしば「シリアルインタフェース」とも呼ばれます。

答え2

内蔵のRaspberry Piシリアルポートは、説明したように0〜3.3Vの電圧レベルを使用します。ここ。 USBシリアルコンバータとモニタは、-15V~+15V(最小-3V/+3V)の公称RS232電圧レベルを使用します。これら2つのレベルの間で変換する必要があります。

出力と入力電圧は互換性があるため、このポートはループバック中に動作します。

関連情報