![]() |
オリジナル |
といってもそれほど特別なことではなく、センサーの数値を利用する方法。
たとえば、nekoboard(picoboard)の抵抗値ポートA~Dは、抵抗値無限大(つまりポートがつながっていない)の場合に100、抵抗値ゼロ(ショート状態)で0の値を吐く。
![]() |
代替案 |
なお、代替案ではセンサーの値が5以下と設定しているが、理屈上は1以下でいい。これはリード線の持つ抵抗値や、ちょっとしたノイズの飛び込みに備えて変動マージンをみている。
同じ理由で、センサーの値が100、あるいは0をポートがつながっていない状態、ショートしている状態と単純に考えて、等号(=)でつなぐことはおすすめしない。
ほんのちょっとしたノイズで読み出し数値は暴れるので、95以上でつながっていない状態、5以下でショート状態などと余裕を持って設定する方がいい。
残念ながらこの方法ではボタンの挙動だけは拾うことが出来ないので完全な解決策ではないが、お困りの方の参考になれば。