Raspberry PiとArduinoのおかげで、これらのボードを現実世界の電子機器と接続するためのGPIO(汎用入出力)はよく知られています。PCにはGPIOが搭載されていませんが、AdafruitのFT232HのようなボードはUSBポート経由でその機能を提供します。
CircuitPythonのインストール
これらのボードを操作するためにPythonを使用します。Pythonは既にシステムにインストールされている場合もありますが、インストールが必要なサポート要素があります。これらは、Raspberry Pi Picoなどのマイクロコントローラー向けのMicroPythonのバージョンであるCircuitPythonの形で提供されています。FT232Hをセットアップするには、お使いのオペレーティングシステム用のAdafruitのインストール手順に従ってください。
FT232Hで作業を進める前に、付属のヘッダーピンをはんだ付けする必要があります。ヘッダーピンをボードにはんだ付けする方法については、分かりやすいガイドをご用意しています。
このプロジェクトのコードを書くには、エディタが必要です。例えば、Notepad++、Visual Studio Code、PyCharmなど、使い慣れたものをお使いください。
GPIOの制御
PC に GPIO ピンを追加すると作成できるプロジェクトは無限にあるように見えますが、以下では、ボタンを押すと LED が点灯する非常にシンプルなプロジェクトのコーディングと配線の方法を説明します。
1.ファイルを作成し、FT232H-example.py として保存します。
2.事前に記述されたコードモジュールを2つインポートします。1つ目の「board」はFT232Hとの通信を可能にし、2つ目の「digitalio」はGPIOピンの設定を制御します。
Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。
import board import digitalio
3. GPIO C0に接続されたLEDを参照するために使用する オブジェクト「led」を作成します。
led = digitalio.DigitalInOut(board.C0)
4. LEDオブジェクトを出力として設定し、GPIOピンからLEDに電流が流れるようにします。
led.direction = digitalio.Direction.OUTPUT
5.別のオブジェクト「button」を作成します。これは、GPIOピンC1に接続されたプッシュボタンを参照するために使用されます。
button = digitalio.DigitalInOut(board.C1)
6. ボタンを入力として設定します。
button.direction = digitalio.Direction.INPUT
7. ループ内で、LEDの値をボタンの値に合わせて設定します。ボタンが押されるとLEDが点灯し、離されるとLEDが消灯します。
while True: led.value = button.value
完全なコードリスト
import board import digitalio led = digitalio.DigitalInOut(board.C0) led.direction = digitalio.Direction.OUTPUT button = digitalio.DigitalInOut(board.C1) button.direction = digitalio.Direction.INPUT while True: led.value = button.value
回路の作成
このプロジェクトの回路はシンプルです。LEDはC0に接続され、100Ωの抵抗を介してGNDに接続されています(抵抗のカラーコードで識別できます)。プッシュボタンは3.3VとC1に接続されています。C1の静止状態はOFFで、この値がLEDを消灯させるために使用されます。
プッシュボタンの休止状態を確実にオフにするために、10KΩの抵抗器を使用してC1をGND(実質的に0V)にプルダウンします。プッシュボタンが押されると、C1に3.3Vが接続され、そのピンがオンになり、LEDが点灯する値を設定します。ボードの配線は図に従って正しく行ってください。
コードをテストする
ターミナルを開き、コード python3 FT232H-example.py を起動し、プッシュ ボタンを押して LED をオンにし、放すとオフになります。
このストーリーはもともとLinux Format Magazineに掲載されました。