月別アーカイブ: 2019年9月

Universal Serial Bus (USB)

この記事は、 Programmer’s Pocket Reference から内容を抜粋して再度編集したものです。

概要

USBはコンピューターに簡単に、そして様々な機器を接続できるようにするために作られた規格である。最新のUSB 3.2 + USB PDでは、20Gbps ・20V 5A(100W)にまで対応している。互換性が保たれており、USB 1.0 のキーボードはUSB 3.2対応のポートでも問題なく使用することができる。

詳細

現在接続されている機器の詳細を調べたい時

Windows

Microsoftによって公開されているUSBViewが便利である。

macOS

$ ioreg -p IOUSB -l -w 0
$ system_profiler SPUSBDataType

Ubuntu

$ lsusb -v # see bDeviceClass

デバイスクラス

機器の機能を識別するためにデバイスクラスが使用される。よく使われるデバイスクラスはOSによりサポートされており、標準ドライバが準備されている。

コネクタとケーブル

USB 3.0ではMini端子はdeprecatedとなり、端子を増やしてSuperSpeedに対応したA/B端子と横長のMicro B(SS)端子が登場した。2014.08にはUSB Type-Cが規格制定され、今後主流になっていく。USB延長 ケーブル(Cオス-Cメス)や、USB Aオス-USB Type-Cメスなどは市販はされているが、規格上禁止されているものであり注意が必要である。

Battery Charge

USBでは、標準では5V 500mA(USB 2.0)まで給電が可能であった。USB BC 1.2では5V 1.5Aまでの給電に対応している。その他、同様の目的のものに Quick Charge (Qualcomm)があるが、こちらは標準規格ではない。

USB 3.0/3.1/3.2

現在は、USB3.0/3.1は USB 3.2 Gen nxn (下表参照)という名称になっている。Enhanced SuperSpeedという用語が使われることがあるが、こちらは旧USB 3.0の SuperSpeed(Gen1x1) と、旧3.1以降の SuperSpeedPlusの両方を合わせたものである。

技術書典 7 (2019/09/22) に出展しました – 感想と次回に出典される方に向けて

技術書典に初めて出展できました。おかげさまで売れ行きも良く、完売することが出来ました。

今後の技術書典に出展されるサークルの方々のためにも、初参加で気がついた点を書いておこうと思います。

今回販売したもの

Programmer’s Pocket Referenceというプログラマ向けの情報を集めたA5サイズのマニュアル本です。

続きを読む