RS232Cのはなし
RS232Cとは
シリアル通信の代表的な規格で、昔は電話線モデムなんてものとPCと繋いでインターネットやパソコン通信をしたので、このシリアルポートは必須だったが、最近はEtherPort が標準(WiFiのほうかも)なのであまり見かけなくなりました。現在でもUnixサーバーにログインしたり、周辺機器にはRS232Cポートでデーターを入出力するものもありますので、USB-RS232C変換器なんてものが使われます。
ハード的には
1)信号線の種類
最小単位では 送信線が TXD 受信線が RXD と共通グランド GND の3本で構成されます。場合によってはPC側が CTS( Clear to Send )「送って良いよ」とかRTS( Request To Send )「送って下さい」とか DTR(Data terminal Ready)「準備できてます」などの線が必要で、端末側でサポートされていない場合は、Highか Lowに繋がなければいけない時があります。
2)信号レベル
±12Vの電源で使われたことによって、だいたい±10V程度の信号レベルで通信しています。
実際の閾値では MAX232 などのドライバICの規格で見ると最小 ±5V Lowレベルが 0.8V Highレベルが2V程度のようです。レベル変換ICを使わないで、簡易的にトランジスタでドライバを構成することもできますが、あまり速いスピードはスピードアップコンデンサーなどが必要で結構難しいようなのです。2石で出来ますので覚えておくと便利ですね。基本的にドライバICはインバータータイプです。ですからマイコンでのシリアルポートの説明は通常High でスタートビットがLowとなっていますが、RS232Cコネクタでの信号レベルは通常時 -8V程度で、スタートビット時は+8VのHighになっています。ここが混迷するポイントの1つですね。
ソフト的には
RS-232Cにはスピードを示す ボーレートがあり、 300ボーとか 9,600BPSとか規定されます。最近ではもっと早いのが標準ですね。他に データー長は 7Bit か 8Bit 英語圏では 7Bit で文字を送れるのでそれで十分な場合もありました。ストップビットとかパリティビットなど設定は多いのですが、それらは他の詳しいサイトを参照下さい。8Bitでもスタートビットとストップビットは必須なので1文字送るには10Bit必要です。300BPSでは1秒に30文字、日本語だったら15文字しか送れないので、昔のパソコン通信ではいかに短く送るかが問題でした。現在も残るメールの Re: とか Fwd: なんか短縮のなごりですかね...
| 固定リンク
「基本を学ぶ」カテゴリの記事
- 最新トラ技と年末年始に読みたい本 3点(2020.12.30)
- LEDを光らせるはなし(2020.05.01)
- 英語のはなし(2014.12.17)
- トランジスターとフェルミ準位のはなし(2012.07.27)
- フェルミ準位のはなし(2012.07.25)
コメント