follow me

シリアル通信を最小のハードで

なんかハードウェア寄りを触りたくなったGWです。
むかーし作ってたPICマイコンのプログラム発掘してきました。
その中の、シリアル通信箇所の紹介です。

下の図を見ていただければわかると思いますが、ツェナダイオードと抵抗しか使っていません。
シリアル通信以外にも、電源取得もできています。



PIC側シリアル通信のレベルは+5Vと0V、PC側のRS232Cのレベルは、-5V~-15Vと+5V~+15Vなのですが、完全無視仕様です。

なぜこんな回路で、RS232Cと通信できるのか?
-15V、+15Vなどは仕様の話で、RS232Cは実際には0V時には「1」と認識してくれるのです。
また、+5Vで無くても、+3V程度から「0」として認識してくれます。
実際には、+1V~+2Vぐらいがスレッシホールド電圧となっている訳ですね。

ツェナダイオード(5.1V)は、電源として約5Vを生成する為につけられてます。
抵抗は念のための入力電流制限ですが、無くてもPIC内蔵の保護ダイオードで大丈夫だったりもします。
また、RS232CのTxDからの入力は-10V~+10Vで変動しますが、PICに内蔵されている保護ダイオードの働きにより、+5Vより大きい電圧はPICのVDDピン(電源)へ、0Vより低い電圧はPICのVSSピン(GND)へ流れるようになっています。

おそらく、PCのRS232Cと通信をする上で最小のハード構成だと思うのですがどぅでしょ?

関連情報

シリアル通信を最小のハードで | 0 件のコメント | アカウント登録
サイト管理者はコメントに関する責任を負いません。