DIO 汎用ディジタルIO
汎用ディジタルIO(DIO)の操作には以下の関数を利用します。
pinMode()
digitalWrite()
digitalRead()
attachIntDio()
detachIntDio()
const uint8_t PIN_DIGITAL::DIO0 .. 19
DIOピン0~19
const uint8_t PIN_DIGITAL::DO0 .. 1
DOピン0,1
以下の列挙値は型名 E_PIN_MODE
で取り扱われます。
PIN_MODE::INPUT
無
入力
PIN_MODE::OUTPUT
無
出力
PIN_MODE::INPUT_PULLUP
有
入力
PIN_MODE::OUTPUT_INIT_HIGH
無
出力(初期状態HIGH)
PIN_MODE::OUTPUT_INIT_LOW
無
出力(初期状態LOW)
PIN_MODE::WAKE_FALLING
無
入力、起床ピン、立下り
PIN_MODE::WAKE_RISING
無
入力、起床ピン、立上り
PIN_MODE::WAKE_FALLING_PULLUP
有
入力、起床ピン、立下り
PIN_MODE::WAKE_RISING_PULLUP
有
入力、起床ピン、立上り
PIN_MODE::DISABLE_OUTPUT
有
入力状態に戻す
以下の列挙値は型名 E_PIN_MODE
で取り扱われます。
PIN_MODE::OUTPUT
出力
PIN_MODE::OUTPUT_INIT_HIGH
出力(初期状態HIGH)
PIN_MODE::OUTPUT_INIT_LOW
出力(初期状態LOW)
PIN_MODE::DISABLE_OUTPUT
出力設定をやめる
以下の列挙値は型名 E_PIN_STATE
で取り扱われます。
PIN_STATE::HIGH
1
HIGHレベル(=Vccレベル)
PIN_STATE::LOW
0
LOWレベル(=GNDレベル)
以下の列挙値は型名 E_PIN_INT_MODE
で取り扱われます。
PIN_INT_MODE::FALLING
立ち下り
PIN_INT_MODE::RISING
立ち上がり
pinMode()
digitalWrite()
ディジタル出力ピンの設定を変更します。
事前にpinMode()
にて設定対象のピンを出力用に設定しておきます。1番目のパラメータは、設定対象のピン番号を指定します。2番目のパラメータはHIGH
かLOW
のいずれかを指定します。
DESC
入力設定のポートの値を読み出す。
事前に入力に設定したピンの入力値をLOW
またはHIGH
で得ます。
attachIntDio()
DIO割り込みを有効にします。
事前に入力設定したピンに対して、1番目のパラメータは割り込みを有効にしたいピン番号で、2番目は割り込み方向(立ち上がり、立ち下がり)を指定します。
DIO5のピンがHIGHからLOWに変化したときに割り込みが発生する設定を行う。
アプリケーションビヘイビアmyAppClass
の基本定義。詳細は省略している。
アプリケーションビヘイビアmyAppClass
の割り込みハンドラの記述。DIO5の割り込み発生時にDIO12の出力設定を反転させ、割り込みハンドラが終了してから発生するイベントではシリアルポートSerial
に*
を表示する。
detachIntDio()
割り込みハンドラの登録を解除します。
digitalReadBitmap()
mwxライブラリ 0.1.4 以降に収録
入力設定のポートの値を一括読み出しします。
LSB側から順にDIO0 ... DIO19 の順に値が格納されます。
HIGH側のピンには 1 が、LOW側のピンには 0 が設定されます。