最終更新日: 2021年1月29日 リリースノート このドライバはLinux 5.4.0カーネル(Ubuntu 18.04.5 LTS)でテストされていますが、他のバージョンのLinuxカーネルでも動作するはずです。Linuxカーネルにはデフォルトでcp210xドライバが含まれており、これはwww.kernel.orgで管理されています。特定のカーネルバージョンに一致するドライバを使用することをお勧めします。 バンドル内容: cp210x.c Makefile cp210x_gpio_example.c cp210x_gpio_example_gpiolib.c build.sh CP210x_VCP_Linux_4.x_Release_Notes.txt ビルド手順: Ubuntu: make(cp210xドライバを作成) cp cp210x.ko /lib/modules//kernel/drivers/usb/serial insmod /lib/modules//kernel/drivers/usb/serial/usbserial.ko insmod cp210x.ko RedHat: yum update kernel*(カーネルを更新、ヘッダが一致しない場合) yum install kernel-devel kernel-headers(開発およびヘッダパッケージを取得) reboot(システム再起動後、ビルドリンクが修正されるはず) make(cp210xドライバを作成) cp cp210x.ko /lib/modules//kernel/drivers/usb/serial insmod /lib/modules//kernel/drivers/usb/serial/usbserial.ko insmod cp210x.ko sudo chmod 666 /dev/ttyUSB0 sudo chmod 666 /dev/ttyUSB1 GPIO例: これは、GPIO状態を設定するための2つのIOCTLの使用方法を示しています。 注: デフォルトでは、この例はCP2108デバイスを使用することを前提としています。他のデバイス(CP2102Nなど)を使用する場合は、cp210x_gpio_example.c内の#define CP2108行をコメントアウトしてください。 ビルド手順: g++ cp210x_gpio_example.c -o cp210x_gpio_example ./cp210x_gpio_example gpiolibを使用したGPIO例: Linuxバージョン4.8以降、GPIO sysfsインターフェースは非推奨となりました。現在、ユーザースペースからGPIOラインにアクセスするための新しいAPIが提供されています。これは、libgpiodプロジェクトによって提供されるライブラリと一連のツールを使用して、cp210xデバイスのすべてのGPIOを同時に読み書きする方法を示しています。 ビルド手順: g++ cp210x_gpio_example_gpiolib.c -lgpiod -o cp210x_gpio_example_gpiolib ./program_name argv[1] argv[2] ここで: argv[1]はgpiochipのファイルパスです。例: /dev/gpiochip0 argv[2]はgpioに書き込まれる値です: 0: 低レベル、cp210x ekボードのLEDをオンにする 1: 高レベル、cp210x ekボードのLEDをオフにする CP210x Linux VCPドライバのリビジョン履歴 2021年1月29日 WSDA-200-USBのVID/PIDを追加。 ソフトウェアフロー制御をサポート。 Linuxがサスペンドモードに入るとRTSピンが高レベルに変わらないバグを修正。 ハードウェアフロー制御を有効にしてpyserialを使用するとエラー32が発生する問題を修正。 CP2108のgpioインターフェース(gpiolib)をサポート。 gpiolibを使用したgpio例を追加: cp210x_gpio_example_gpiolib.c 2019年7月12日 CP2102Nのサポートを追加。