回答:
少なくともマイクロコントローラーレベルで:
ほとんどのシンプルなマイクロコントローラーにはUSBコントローラーがないため、シリアルポート(通常はTTLまたはLVTTL)が通信の最も一般的な方法です。
たとえば、ほとんどの8ビットAVRまたはPICマイクロコントローラーにはUSBがありませんが、いくつかの32ビットARMマイクロコントローラーにはありますが、通常はすべてシリアルポートがあります。
TTL / LVTTLシリアル通信からRS-232への変換には、「単純な」ロジックレベル変換が必要です。これは、非常に安価なIC(MAX232 / MAX3232)で実行できます。
マイクロコントローラーにUSBコントローラーがない場合のTTL / LVTTLシリアル通信からUSBへの変換には、通常、スルーホールパッケージングオプションがなく、表面実装のみのわずかに高価なIC(FTDI)を使用する必要があります。
USBホストから要求する可能性のある現在のレベルなど、一般にUSBデバイスを使用する場合に注意する必要があるプロトコルに関連するいくつかの詳細があります。シリアルポートでは、システムで一貫している必要がある3〜5個の固定パラメーター(ボーレート、ストップビット数、パリティなど)についてのみ心配する必要があります。
RS232が残っている最大の理由は、組み込みハードウェアでの一般的なユースケースの実装の単純さであると思います-制御のために2つのデバイス間でシーケンスASCIIバイトを送信するなど。USBで利用可能なはるかに高速で情報を送信するためのユースケースは、USBプロトコルのシグナリングを実装することによって生じる複雑さのトレードオフに値しません。
高速化の要件が現れているため、RS-485が非常にシンプルな物理インターフェイスと高速(最大10Mb / s)のデータレートで一般的になっても驚かないでしょう。