今回はRS-232CとUARTの違いについて簡単にまとめたいと思います。
結論から言ってしまえば規格が違います。 以上です。
となってしまうのですが、今回はもう少し深掘りしようと思います。
・RS-232Cとは
おそらく世界で結構有名な規格です。
USBの前身と思えば分かりやすいかもしれません。
昔はモデムなどに繋いでインターネットを楽しんだり、計測機器に接続してデータを取り込んだり、みたいな事が出来た規格でした。
今現在ではインターネット接続はLAN(IEEE 802.3規格) や無線LAN(WiFi等 IEEE 802.11)
機器に接続する時はUSBなどRS-232Cは今現在ほぼ使われていません。
転送速度の遅さが目立ったり、電源に-5Vラインが必要だったり、原因はいろいろあると思いますが、今現在ではほぼ使われていません。
(ただし昔の機器には今だRS-232Cが使われているところもあります。)
・UARTとは
実はUARTというのは規格の事ではなく、集積回路の事なのです。
パラレル信号をシリアル信号にしたり、逆にシリアル信号をパラレル信号にしたりなど、そのような事をする集積回路の事をUARTと指します。
今現在みんながよく使っているUARTは16550Aと呼ばれる集積回路です。
今現在もPCは16550Aをベースとしたシステムになっています。
・一体UARTとRS-232Cは何が違うのか
UARTとRS-232Cでは送信データなどほぼ変わりはありません。
どっちも使いやすいであろうシリアル通信です。
ですが、やはり違いもあります。
まずUARTとRS-232Cでは電圧が違います。
RS-232Cは最大25Vまでの電圧を送信することが出来ます。
実際に動作させるときは12V程度です。
UARTはTTL すなわち 0V ~ 5Vでの動作です。
他にも違う点があります。
UARTは待機中(アイドル時)に常に電圧が高い状態で待機するのに対して、
RS-232Cはマイナス電源時に待機します。
(実際にはどっちも"1"で待機している事には変わりないですが...)
次はこれらを踏まえながらRS-232C UART変換装置を作ってみたいと思います。