わいずふぁくとりいがプログラムの話題をウィキします。

IOを制御する-1(失敗)〔プログラミング事始め-2〕


 さてやっぱり、早くプログラムで、ハードウェアを制御してみたいと思います。
 と言っても今付いているハードウエアは、シャットダウンのために付けた、押し釦スイッチひとつだけです。
 仕方がないので、まずはこれの読み取りを行ないたいと思います。
 IOを制御すると言っても、入力だけです。

 シャットダウンスイッチはGPIO3につながっています。ここを読みだして表示するプログラムを、作ってみたいと思います。
 そんなんことをすればスイッチを押すたびに、シャットダウンしてしまうじゃないか!という話ですが、シャットダウンのための長押し時間を、長めに設定して回避したいと思います。
 シャットダウンさせたいとき以外は、決して長く押さないように気を付けます。

 PythonでIOピンを操作するためには、GPIO Zeroというライブラリを使うようです。
 GPIO Zeroは、Raspberry Pi OSには、最初からインストールされているようです。

 おどろいたことにGPIO Zeroには、プッシュボタンの概念が最初からインプリメントされているということです。
 IOポートではなく、押し釦だと思いこんでプログラミングできます。

失敗


 つぎのコードで、できる予定でした・・しかし・・
from gpiozero import Button
button = Button(3)
while True:
    if button.is_pressed:
        print('Sweet, the button works!')
        break

 いきなりファイルは作らず、Python3の、対話モードで行なってみました。
 つぎのように、「button = Button(3)」としたところで、大量のエラーが出ました。
 これはすでにGPIO3が、シャットダウンボタンとして使われているためだと思われます。
 「button = Button(13)」ではエラーが出なかったので、恐らくそうだと思われます。
 世の名そう甘くはなかった!!





(参考)
ラズパイ(Raspberry Pi)のGPIOを再確認! まずは汎用入出力からマスターしよう
https://deviceplus.jp/hobby/raspberrypi-gpio/

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

管理人/副管理人のみ編集できます