Raspberry Pi3 GPIO 入力2

Raspberry Pi3 で GPIO ポートからの入力実験その2

「PICと楽しむRaspberryPi活用ガイドブック」の汎用GPIOテストボードを使ってGPIO17、GPIO18に接続されているスイッチが押されたときに割り込みが発生するように登録する
複数のGPIOポートに同じ割り込み処理を登録することも可能で割り込み処理の中でGPIO番号を確認し処理を切り分ける。

 

File:gpioin17-2.py

#ライブラリの読み込み
import RPi.GPIO as GPIO
from time import sleep

#初期化
GPIO.setmode(GPIO.BCM) #GPIO番号指定
GPIO.setwarnings(False)

#GPIO17(SW3)、18(SW4)、27(SW1)を入力モードとして設定
GPIO.setup (17,GPIO.IN,pull_up_down=GPIO.PUD_UP) #SW3
GPIO.setup (18,GPIO.IN,pull_up_down=GPIO.PUD_UP) #SW4
GPIO.setup (27,GPIO.IN,pull_up_down=GPIO.PUD_UP) #SW1

#割り込みで受け取る関数定義
def myFunc1(channel):
if (channel == 17) :
    #出力状態変更
    print ( 'SW3:GPIO17 RISING' )
    sleep (1)

if (channel == 18) :
    #出力状態変更
    print ( 'SW4:GPIO18 RISING' )
    sleep (1)
if (channel == 27) :
    #出力状態変更
    print ( 'SW1:GPIO27 RISING' )
    sleep (1)


def myFunc2(channel):
if (channel == 17) :
    #出力状態変更
    print ( 'SW3:GPIO17 FALLING' )
    sleep (1)

if (channel == 18) :
    #出力状態変更
    print ( 'SW4:GPIO18 FALLING' )
    sleep (1)
if (channel == 27) :
    #出力状態変更
    print ( 'SW1:GPIO27 FALLING' )
    sleep (1)

 


#変化を割り込みで受け取る関数登録
#GPIO.RISINGは立ち上がり、GPIO.FALLINGは立ち下り GPIO.BOTHは両方
#押したときに立ち上がるのか立ち下がるのかは回路による(^^)
#一つのポートの RISINGは立ち上がり、FALLINGは立ち下りを両方登録する
# ことはできない(エラーになる)
#bouncetime はチャタリング回避のタイマ msec 単位
#GPIO.add_event_detect ( 17 , GPIO.RISING , callback = myFunc1 , bouncetime = 300)
#GPIO.add_event_detect ( 18 , GPIO.RISING , callback = myFunc1 , bouncetime = 300)
#GPIO.add_event_detect ( 27 , GPIO.RISING , callback = myFunc1 , bouncetime = 300)
GPIO.add_event_detect ( 17 , GPIO.FALLING , callback = myFunc2 , bouncetime = 300)
GPIO.add_event_detect ( 18 , GPIO.FALLING , callback = myFunc2 , bouncetime = 300)
GPIO.add_event_detect ( 27 , GPIO.FALLING , callback = myFunc2 , bouncetime = 300)

#コントロールCが押されるまでループ
try:
    while True:
        print ( 'wait' )
        sleep (1)

#例外
except KeyboardInterrupt:
    print ( 'CTRL + C' )
    pass

#変化を割り込みで受け取る関数定義解除
GPIO.remove_event_detect ( 17 )
GPIO.remove_event_detect ( 18 )
GPIO.remove_event_detect ( 27 )

#GPIOのリセット終了
GPIO.cleanup()

Raspberry Pi3 GPIO 入力1

Raspberry Pi3 で GPIO ポートからの入力実験その1

「PICと楽しむRaspberryPi活用ガイドブック」の汎用GPIOテストボードを使ってGPIO17(SW3)、GPIO18(SW4)、GPIO27(SW1)に接続されているスイッチ状態を読みだして表示してみる。ただしGPIO27(SW1)はPIC経由なので使えるのかどうかよくわからない。➡SW1の操作してもGPIO27のは反応なかった。

 

File:gpioin17-1.py

#ライブラリの読み込み
import RPi.GPIO as GPIO
from time import sleep

#初期化
GPIO.setmode(GPIO.BCM) #GPIO番号指定
GPIO.setwarnings(False)

#GPIO17(SW3)、18(SW4)、27(SW1)を入力モードとして設定
GPIO.setup (17,GPIO.IN,pull_up_down=GPIO.PUD_UP) #SW3
GPIO.setup (18,GPIO.IN,pull_up_down=GPIO.PUD_UP) #SW4
GPIO.setup (27,GPIO.IN,pull_up_down=GPIO.PUD_UP) #SW1

#コントロールCが押されるまでループ
try:
    while True:
        if GPIO.input(17)==GPIO.HIGH : #GPIO.LOW または GPIO.HIGHを得る
            print ( 'SW3:GPIO17 HIGH' )
        else :
            print ( 'SW3:GPIO17 LOW' )

 

        if GPIO.input(18)==GPIO.HIGH : #GPIO.LOW または GPIO.HIGHを得る
            print ( 'SW4:GPIO18 HIGH' )
        else :
            print ( 'SW4:GPIO18 LOW' )

 

        if GPIO.input(27)==GPIO.HIGH : #GPIO.LOW または GPIO.HIGHを得る
            print ( 'SW1:GPIO27 HIGH' )
        else :
            print ( 'SW1:GPIO27 LOW' )


        sleep (1)

#例外
except KeyboardInterrupt :
    print ( 'CTRL + C' )
    pass


#GPIOのリセット終了
GPIO.cleanup()

Raspberry Pi3 GPIO 制御をやってみる

 以前買った「PICと楽しむRaspberryPi活用ガイドブック」では、序盤でGPIOを制御する方法の解説とサンプルプログラムが掲載されており、テストに使うボードの作り方やの説明もあります。日本橋共立電子では テストボードのパーツをセットにしたキットや、なんと組み立て完成品も売ってます。

ハンダが出来ない人でもとりあえず完成品を買えば、GPIO制御プログラムで電子機器の制御結果を確認して遊べます。(*^-^*)

f:id:osadamao:20180114140927j:plain

ただ、この書籍はハードに詳しい人が書いたものらしく、ソフト屋の僕には説明足らずの部分が多く、つくり始めるきっかけにはいいですが、これだけでは中途半端な感じがします。

 

なかなか理解できない事が多いのですが、今後の為に整理しておくことにしました。

このボードでスイッチ状態入力に使えるのは

GPIO17(SW3) , GPIO18(SW4) , GPIO27(SW1) ※SW1はPIC経由

LED出力に使えるのは

GPIO2(青) , GPIO3(緑) , GPIO4(赤)

です

 

 

 

#GPIOライブラリの読み込み

import RPi.GPIO as GPIO

from time import sleep

同じようにモジュールを読み込んでいるのになぜか書式が全然違うのはなぜ?

 

 

#GPIO初期化

GPIO.setmode(GPIO.BCM)   #GPIO番号指定の場合

#GPIO.setmode(GPIO.BOARD)   #ピン番号指定の場合

 

#GPIOの不要なワーニングを出さないようにする

GPIO.setwarnings(False)

 

#GPIO2 ポートを出力モードとして設定する

GPIO.setup (2,GPIO.OUT,initial =GPIO.LOW)      #初期状態LOW

#GPIO.setup (2,GPIO.OUT,initial =GPIO.HIGH)     #初期状態HIGH

 

#GPIO17 ポートを入力モードとして設定する

GPIO.setup (17,GPIO.IN,pull_up_down=GPIO.PUD_UP)     #プルアップ抵抗ON

#GPIO.setup (17,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)     #プルダウン抵抗ON

 

 

#GPIOリセット終了

GPIO.cleanup()

 

次はちゃんとLEDを付けたり、スイッチ状態を読み取ったりしてみます。

Raspberry Pi3のBluetoothで音が出せる?

 PiRaspberry3は標準で 無線LAN、有線LAN、Bluetooth機能が実装されており何も買い足さなくてもいろんなものに接続して使用できそう!

今まで無線LAN、有線LANは使ってみて利用できることを確認できていますが、Bluetoothに関してはまだ接続テストしてみてませんでした。

幸いアイフォンに使っているBluetoothのヘッドセットがあるので試してみることにしました。

 

ペアリングは簡単にできたのですが、標準ではAudioデバイスには対応していないのか接続しようとするとエラーになります。

 

ネットでググるBluetoothを置き換えるようなことが書いてありました。
sudo apt update

 

//Bluetoothマネージャーアプリ
sudo apt install pi-bluetooth blueman -y

 

//pulseaudio ... サウンドサーバ
//pavucontrol ... PulseAudioの音量などを調整するもの
//pulseaudio-module-bluetooth ... PulseAudioのbluetoothモジュール
sudo apt install pulseaudio pavucontrol pulseaudio-module-bluetooth -y
sudo reboot -y


//Bluetooth設定する前に、pulseaudioを立ち上げておく
pulseaudio -D

 

//設定
bluetoothctl
[NEW] Controller B8:27:EB:DE:7F:EF raspberrypi [default]
[NEW] Device xx:xx:xx:xx:xx:xx Bose Revolve+ SoundLink
[bluetooth]# power on
Changing power on succeeded
[bluetooth]# agent on
Agent registered
[bluetooth]# pair xx:xx:xx:xx:xx:xx
Attempting to pair with xx:xx:xx:xx:xx:xx
Pairing successful
[bluetooth]# trust xx:xx:xx:xx:xx:xx
Changing xx:xx:xx:xx:xx:xx trust succeeded
[bluetooth]# connect xx:xx:xx:xx:xx:xx
Attempting to connect to xx:xx:xx:xx:xx:xx
Connection successful
[bluetooth]# quit
Agent unregistered
[DEL] Controller B8:27:EB:DE:7F:EF raspberrypi [default]


//テスト
speaker-test -t wav


ここも見て

 

自分なりの Raspbian の インストール手順(NOOBS)

先日 NOOBS liteを使うと インストールする時にサイトからRaspbian をダウンロードするので最新の版数がインストールされ、インストール後に最新版へのアップデートが不要なのでは?と、期待して試してみたのですが、ダウンロード時間が相当長く、しかもダウンロードされてきたのは NOOBS に同梱されているRaspbian と同じ版数!という残念な結果でした。

 

そのあと、bluetooth のヘッドフォンにつなげようと試行錯誤した結果、つなげることはできずに、なおかつシステムが不安定になったので再インストールすることにしました。前回の反省を元に NOOBS を使って(笑)

 

 

* 2018 /01/31版 *

01.microSDカードの初期化

 

 取得ファイル:SD_CardFormatter0500SetupJP.exe

 WindowsPCにフォーマッターをインストールし、microSDカードをフォーマットする。

 

 f:id:osadamao:20180120134408p:plain

 「クイックフォーマット」でも「上書きフォーマット」でもどちらでも可能。
「クイックフォーマット」ならエントリテーブルだけを初期化するだけなので数秒で終わりますが、「上書きフォーマット」は全エリアを初期化するので数分かかります。

 

 f:id:osadamao:20180120134425p:plain

 

 f:id:osadamao:20180120134445p:plain

 

 f:id:osadamao:20180120134505p:plain

 

 


02.インストーラ NOOBS の準備

 公式サイトから NOOBS をダウンロードします。

 https://www.raspberrypi.org/downloads/noobs/

f:id:osadamao:20180131175018p:plain

NOOBS Lite は、Raspbian が同梱されておらず、インストール時にネットからRaspbianをインストールしますが、NOOBS には Raspbian が同梱されているのでインストールが早いです。ハズです(笑)

   NOOBS

  Offline and network install
  Version: 2.4.5
  Release date: 2017-11-29
 

 取得ファイル:NOOBS_v2_4_5.zip

 展開して出てきた全てのファイルを microSD カードにそのまま格納します。

 

 NOOBS_v2_4_5.zipを右クリックして出てくるメニューから「すべて展開(T)」を選択します。

f:id:osadamao:20180120134706p:plain

 

microSDカードがEドライブに割りついている場合の例:

f:id:osadamao:20180120134753p:plain

 

展開後のファイル一覧 

f:id:osadamao:20180131175849p:plain

03.sshの許可設定

 Raspbian は デフォルトでは ssh 通信は許容されていないので、利用するためにはインストール後にssh通信を設定で開放する必要があります。GUI操作で簡単に設定できるのですが、インストール前に特殊ファイルを作成しておけばインストール直後から ssh 接続が開放される仕組みになっています。ほほう。

 特殊ファイルといっても普通の単純ファイルで、 ssh というファイル名にするだけです(笑)。

中身は不要なのでどうやってファイルを生成してもいいのですが、エディタを使うまでもないので、リダイレクトで作成してみました。

 

・コマンド画面を開きます。  

f:id:osadamao:20180120134853p:plain

 


f:id:osadamao:20180120134942p:plain

 

exit > ssh  コマンドを実行し 「ssh」ファイルを作成します。

f:id:osadamao:20180120135005p:plain

 

ssh ファイルができました。

f:id:osadamao:20180131180054p:plain

 

04.電源投入

 microSDカードと、起動に必要なケーブルを差します。

 ・microSDカード
 ・usb キーボード
 ・usb マウス
 ・HDMI ディスプレイケーブル
 ・電源供給用miniUSBケーブル

 

 NOOBS には Raspbian と LibreELEC_RPi2 が含まれているため、LANをつながなくても電源を投入して起動するだけで Raspbian か LibreELEC_RPi2を選択する画面が表示され、そのままインストールできます。

ですが、せっかくなのでとりあえずWi-Fi設定を行います。

Wifi networks(w)」をクリックします。

f:id:osadamao:20180131184311j:plain

 

受信できているアクセスポイントのSSID一覧から接続するアクセスポイント選択します。

f:id:osadamao:20180120150233j:plain


 接続するアクセスポイントへのパスワードを入力します。

f:id:osadamao:20180120150326j:plain

 ここで設定したアクセスポイント情報は、これからインストールする Raspbian に引き継がれます。

f:id:osadamao:20180131185340j:plain

 

 

05.インストーラ NOOBS の 日本語設定

 電源投入時は English(UK) ですので、下部のメニュから「日本語」を選択します。

f:id:osadamao:20180114201717j:plain

f:id:osadamao:20180114201914j:plain

 

 日本語化するとリボン内のメニューが一部日本語化されました。

f:id:osadamao:20180131190307j:plain

 

06.Raspbian の インストール

Raspbian[RECOMMENDED]にチェックを設定インストールボタンをクリックします。

f:id:osadamao:20180120152039j:plain

 

SDカード上書きメッセージが出ますが、「はい」をクリックします。

f:id:osadamao:20180114202328j:plain

 

インストールが始まるまで少し待ちます。

f:id:osadamao:20180120152155j:plain

 

インストールが始まります

f:id:osadamao:20180114202516j:plain

 

f:id:osadamao:20180114202538j:plain

 

f:id:osadamao:20180114202607j:plain

インストールが完了すると以下のダイアログが出ます。「OK」をクリックすると再起動が行われます。

f:id:osadamao:20180114202629j:plain

 

再起動直後、SSHが開放されている為、確認画面が出ます。
これはsshファイルを作成しておいた事によるものなので「OK」をクリックします

f:id:osadamao:20180131121029p:plain

 cat/etc

インストール直後の版数を確認してみると 9.1でした。

cat  /etc/debian_version

f:id:osadamao:20180114202726j:plain

 

 

07.OS アップデート

 インストール前にネットワーク接続していれば、インストール後も引き継がれています。そのまま以下のコマンドでサイトからアップデートができます。

 

 sudo  apt  update

  取得:1 http://archive.raspberrypi.org/debian stretch InRelease [25.3 kB]
  取得:2 http://mirrordirector.raspbian.org/raspbian stretch InRelease [15.0 kB]
  取得:3 http://mirrordirector.raspbian.org/raspbian stretch/main armhf Packages [11.7 MB]
  取得:4 http://archive.raspberrypi.org/debian stretch/main armhf Packages [127 kB]
  取得:5 http://mirrordirector.raspbian.org/raspbian stretch/contrib armhf Packages [56.8 kB]
  取得:6 http://mirrordirector.raspbian.org/raspbian stretch/non-free armhf Packages [95.2 kB]
  12.0 MB を 44秒 で取得しました (269 kB/s)
  パッケージリストを読み込んでいます... 完了
  依存関係ツリーを作成しています
  状態情報を読み取っています... 完了
  アップグレードできるパッケージが 54 個あります。表示するには 'apt list --upgradable' を実行してください。
  pi@raspberrypi:~ $

 

 sudo  apt  upgrade  -y

        パッケージリストを読み込んでいます... 完了
        依存関係ツリーを作成しています
        状態情報を読み取っています... 完了
        アップグレードパッケージを検出しています... 完了
        以下のパッケージが新たにインストールされます:
        libexiv2-14 wolframscript
        以下のパッケージはアップグレードされます:
        base-files bind9-host bluez-firmware curl dbus dbus-user-session dbus-x11
        erlang-base erlang-crypto erlang-syntax-tools gir1.2-gdkpixbuf-2.0

        :

        :

 cat  /etc/debian_version

      f:id:osadamao:20180131120549p:plain

 sudo  shutdown  -r  now

 

f:id:osadamao:20180209225319p:plain

 

08.日本語入力メソッドのインストール

 sudo  apt  install  fcitx-mozc  -y
 im-config  -n  fcitx
 sudo shutdown  -r  now

 

 

09.日本語フォントのインストール

 sudo apt install fonts-vlgothic

  

10.固定IPアドレス設定

 DHCPでダイナミックにアドレス取得していても困りはしませんが、サーバなので固定している方が安心です。Wi-Fiも固定Lanもスタティックアドレス方式に変更します。

 sudo  vi  /etc/dhcpcd.conf

 

 dhcpcd.conf には wlan0 も eth0 の定義もないので、最終行の下に新たに定義を追加します。

 :
 :

 # fallback to static profile on eth0
 #interface eth0
 #fallback static_eth0

 

 interface wlan0
 static ip_address=192.168.0.20/24
 static routers=192.168.0.1
 static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1

 interface eth0
 static ip_address=192.168.1.20/24


 以下のコマンドでdhcpdを再起動して設定を反映させる、という事が書かれている記事を見てやってみたけですが、

 

 dhcpdの再起動の場合(これはダメ)

  sudo  /etc/init.d/dhcpcd  restart

 

ifconfig で確認すると、eth0 のアドレスは変わったが、wlan0 の方のアドレスは変わらずそのままでした。結局、Raspbianの再起動をする事でアドレスが割り振りされなおしました。

 

 Raspbianの再起動をする場合

  sudo  shutdown  -r  now

 

11.Raspberry Pi の設定

 インストール後の初期設定をします。

  f:id:osadamao:20180131125634p:plain

 

「システム」タブの「オーバースキャン」を有効から無効に変更する。

f:id:osadamao:20180131191245p:plain

 

 

f:id:osadamao:20180131191314p:plain

 

 

 

「システム」タブの「パスワードを変更」をクリックする。

f:id:osadamao:20180131191343p:plain

 

pi アカウントのパスワードを指定します。

f:id:osadamao:20180120132108p:plain

f:id:osadamao:20180120132149p:plain

 f:id:osadamao:20180120132656p:plain

 

インターフェースタブでSSHのみ有効であることを確認します。

f:id:osadamao:20180120132731p:plain

 

 パフォーマンスタブでオーバークロックが利用できないことを確認します。

f:id:osadamao:20180120132820p:plain

 

 ローカライゼーションタブでロケールを設定します

f:id:osadamao:20180120132841p:plain

 

f:id:osadamao:20180120132900p:plain

 

言語:ja(Japanese)
国:JP(Japan)
文字セット:UTF-8
であることを確認します。違う場合は修正します。

f:id:osadamao:20180120132946p:plain

 

ローカライゼーションタブでタイムゾーンの設定を変更します

f:id:osadamao:20180120133012p:plain

 

地域を Etc から Asia に変更します。

位置を UTC から Tokyo に変更します。

f:id:osadamao:20180120133531p:plain

f:id:osadamao:20180120133043p:plain

 

ローカライゼーションタブでキーボードの設定を変更します 

f:id:osadamao:20180120133105p:plain

 

初期設定では、Country:日本、Variant:日本語(PC-98xxシリーズ)になっています。

f:id:osadamao:20180120133713p:plain

 Country:日本、Variant:日本語(OADG109A)に変更しOKをクリックします。

 f:id:osadamao:20180120133736p:plain

 

 

 ローカライゼーションタブで無線LANの国設定を変更します

f:id:osadamao:20180120133754p:plain

 

f:id:osadamao:20180120133845p:plain

 AD Andorra が設定されているので、JP Japanに設定しなおします。

 f:id:osadamao:20180120133901p:plain

  OKをクリックします。

 

設定が終わったらOKボタンをクリックします。

f:id:osadamao:20180120133931p:plain

 

再起動の確認を要求されるので、「はい(Y)」をクリックします。

f:id:osadamao:20180120133948p:plain

 

12.デスクトップの設定

デスクトップの何もないところで右クリックしてデスクトップの設定をクリックする

f:id:osadamao:20180120134008p:plain

 

Desktop Layout を Fill screen with image から No image に変更する
f:id:osadamao:20180120134023p:plain

 

 

 f:id:osadamao:20180120134036p:plain

 

Desktop Colour を クリックし

Red:214 Green:211 Blue:222

 から

Red:0 Green:0 Blue:0

に変更する

f:id:osadamao:20180120134047p:plain

 

f:id:osadamao:20180120134102p:plain

 

Desktop Text Colour はそのままにしておく

f:id:osadamao:20180120134115p:plain


 Menu Bar は変更しません

f:id:osadamao:20180120134144p:plain

System は変更しません

f:id:osadamao:20180120134156p:plain

  

 13.リモートデスクトップ

 sudo apt install xrdp  -y
 sudo apt install vnc4server  -y

 

 14.リモートデスクトップキーボードの日本語化

 cd /etc/xrdp
 sudo wget http://w.vmeta.jp/temp/km-0411.ini
 sudo chown root:root km-0411.ini
 sudo ln -s km-0411.ini km-e0200411.ini
 sudo ln -s km-0411.ini km-e0010411.ini
 sudo service xrdp restart

 

15.root パスワードの設定

 sudo  passwd  root
       新しい UNIX パスワードを入力してください:
       新しい UNIX パスワードを再入力してください:
       passwd: パスワードは正しく更新されました
       

電子機器の制御 Lチカってなんや?

電子機器制御の初心者は「Lチカ」から(*^-^*)

勿論LEDの点滅ですが、LEDを付けるために Pythonを使ってGPIO のポートに電圧をかけたり止めたりするというもの。

 

利用宣言
import wiringpi as pi
import time

 

GPIO23を出力として使用

LED_PIN = 23

pi.wiringPiSetupGpio()
pi.pinMode( LED_PIN, pi.OUTPUT )

 

1秒単位でLOWとHIGHを永遠に繰り返す

while True:
 pi.digitalWrite( LED_PIN, pi.LOW )
 time.sleep( 1 )

 pi.digitalWrite( LED_PIN, pi.HIGH )
 time.sleep( 1 )

 

 

意外とコンパクト。

勿論ガイド本がないとなにもできませんけどね。

 

Python とは?

 

RaspberryPi3 に Raspbian をインストール してあの小型筐体で Linux風な動作は確認できたし、標準でインストールされている Chromium ブラウザも良くできているので Youtube のサイトを覗くと動画もちゃんと見れました。

HDMI接続にしたのでディスプレイ側からは音もちゃんと鳴りました。これはもう普通にパソコンです。あ、MSWindowsじゃないですけどね。

 

もともとRaspberryPi3を始めたきっかけは子供がミニ四駆の速度制御を小形の組み込みマイコンを使ってやってみたいと言い出したのがきっかけです。小型組み込みパソコンってどんなん?どんなことが出来るん?話相手になるために、僕も小型組み込みパソコンを知らなきゃって感じで始めてます。
なので電子制御がメインなんですよね(笑)

というわけでやっと Python  で電子制御を!

 

参考にしている本は「RaspbrryPi電子工作実践講座」福田和宏 ソーテック社 です。

こんな感じにしてみました。

LED光ります!

 

import wiringpi as pi
import time

 

INPUT_PIN = 24
OUTPUT_PIN = 23

 

pi.wiringPiSetupGpio()


pi.pinMode( INPUT_PIN, pi.INPUT )
pi.pinMode( OUTPUT_PIN, pi.OUTPUT )

 

/* GPIO23のON,OFF */
pi.digitalWrite( OUTPUT_PIN, pi.HIGH)
time.sleep(1)
pi.digitalWrite( OUTPUT_PIN, pi.LOW)
time.sleep(1)

 

/* GPIO24の読み出し */
value = pi.digitalRead( INPUT_PIN )
if ( value == pi.HIGH ):
    print("High")
    print( value )
else:
    print("Low")
    print( value )

 

/* PWMモードを使った疑似アナログ出力 */
/* GPIO24を0~100の中間的な50でON */
pi.softPwmCreate( OUTPUT_PIN, 0, 100)
pi.softPwmWrite( OUTPUT_PIN, 50 )