Arduino入門:ビットとバイトの操作

ArduinoのSketch(スケッチ)で、ビットとバイトの操作を行う方法について解説します。

lowByte

lowByteは、変数の下位1バイトを返します。設定パラメータは次の通りです。

x: あらゆる型の変数

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:lowByte()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

highByte

highByteは、変数の上位1バイトを返します。設定パラメータは次の通りです。

x: あらゆる型の変数

なお、2バイトより大きな型に対しては、下位から2番目のバイトを取り出すことになりますので注意が必要です。

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:highByte()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

bitRead

bitReadは、ある数から指定したビットを読み取ります。 設定パラメータは次の通りです。

x: 読み取る対象となる数
n: 読み取るビットの位置。右端(LSB)から数えて何ビット目かの値。

戻り値は、0または1となります。

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:bitRead()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

bitWrite

bitWriteは、ある数の指定したビットに0か1を書き込みます。設定パラメータは次の通りです。

x: 書き込む対象の数
n: 書き込むビットの位置。右端(LSB)から数えて何ビット目か
b: 書き込むビット値(0または1)

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:bitWrite()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

bitSet

bitSetは、ある数の指定したビットをセット(値を1に設定)します。設定パラメータは次の通りです。

x: 対象となる数
n: セットするビットの位置。右端(LSB)から数えて何ビット目かの値。

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:bitSet()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

bitClear

bitClearは、ある数の指定したビットをクリア(値を0に設定)します。設定パラメータは次の通りです。

x: 対象となる数
n: クリアするビットの位置。右端(LSB)から数えて何ビット目か。

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:bitClear()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

bit

bitは、指定したビットを1にしたときの値を計算して返します。設定パラメータは次の通りです。

n: 値を知りたいビット

bit(n)は (1 << (n)) とマクロ定義されていますので、計算結果の例としては次の様になります。 bit(0) = 1 bit(1) = 2 bit(2) = 4

Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0)
Arduino Reference:bit()” by Arduino Team, used under CC BY-SA 3.0/ easy labo made some changes and comments to the original

→その他のArduino関連情報

Sponsored Link