##今していること
Raspberry Pi + MCP3002の組み合わせでA/D変換を行っています。
A/D変換はできたのですが、プログラムコードの意味が理解できておりません。
##教えてほしいこと①
こちらのコードの解釈は正しいでしょうか。
CH0から取得するしているので、 0b01101000、0b00000000 (2進数)0x68,0x00 (16進数)
10bitのデータを取得するので、adc[0] 下位8bitとadc[1]の論理和に、0x03ffとの論理積で10bitデータ化
python
1adc = spi.xfer2([0x68,0x00]) 2data = (adc[0] * 256 + adc[1]) & 0x3ff
##教えてほしいこと②
こちらのコードの解釈が分かりません。
こちらは、参照元のコードなのですが、こちらのコードの意味が理解できません。
adcに代入している、1, (2 + channel) << 6の部分は、どのように理解すればよいのでしょうか。
dataに代入する式も、これが10bitデータ化しているのが理解できないです。
python
1adc = spi.xfer2([1, (2 + channel) << 6,0]) 2data = ((adc[1] & 31) << 6) + (adc[2] >> 2)
##教えてほしいこと③
0,0が表しているもの
これは、portとchを表していると理解していますが、
ch0を使用しているので、後半の0は分かるのですが、
portとは、どこのポートのことを表しているのでしょうか。
python
1spi.open(0,0)
回答1件
あなたの回答
tips
プレビュー