DIO-8/4RE-UBCの使用方法(Python)
python-ft4222がインストールされてない場合は、インストールします。
$ pip install ft4222
プログラムの作成
「test_dio84re_ubc.py」というファイル名で以下のファイルを保存します。
(または test_dio84re_ubc.py からダウンロードします)
import ft4222
import ft4222.I2CMaster
PCA9535_REG_INPUT_PORT1 = 1
PCA9535_REG_OUTPUT_PORT0 = 2
PCA9535_REG_CONFIG_PORT0 = 6
class DIO_8_4RE_UBC():
def __init__(self, i2c, address=0x26):
self.i2c = i2c
self.address = address
self.i2c.i2cMaster_Write(self.address, bytes([PCA9535_REG_CONFIG_PORT0, 0xf0]))
# デジタル出力
def output(self, value):
self.i2c.i2cMaster_Write(self.address, bytes([PCA9535_REG_OUTPUT_PORT0, ~value & 0xff]))
# デジタル入力
def input(self):
self.i2c.i2cMaster_WriteEx(self.address, ft4222.I2CMaster.Flag.START, bytes([PCA9535_REG_INPUT_PORT1, 0]))
return ~self.i2c.i2cMaster_ReadEx(self.address, ft4222.I2CMaster.Flag.REPEATED_START | ft4222.I2CMaster.Flag.STOP, 1)[0] & 0xff
dev = ft4222.openByDescription('FT4222')
dev.i2cMaster_Init(100)
dio = DIO_8_4RE_UBC(dev)
# デジタル出力
# (例)OUT2とOUT0をオン(OUT3とOUT1をオフ)
dio.output(0x05)
# デジタル入力
print('InputData: 0x{:02x}'.format(dio.input()))
動作確認
-
DIO-8/4RE-UBCをパソコンとUSBケーブルで接続します。
電源が供給されますので、金属などの導電性のある物とボードが触れないように注意してください。
-
プログラムを実行します。
デジタル出力のOUT2とOUT0がオンします。
デジタル入力値が表示されます。InputData: 0x40