「WordPressで学ぶPHP(2)データ構造(配列・オブジェクト)編」を発売しました。
本書は「WordPressで学ぶPHP(1)変数・制御構造編」の続編にあたり、PHPの「データ構造」(配列とオブジェクト)について解説します。
配列やオブジェクトは、頭の中で考えるだけでは、イメージがつかみにくいです。本書では図を多用して、配列やオブジェクトをなるべく分かりやすく解説することを心がけました。
Kindle本で、定価250円です。
Tinker Boardの基本的な使い方(その4・GPIOを使う)
Tinker BoardにはGPIOがあり、センサーなどの各種のパーツを接続することができます。
今回はPythonでGPIOを制御する方法を紹介します。
1.ASUS.GPIOパッケージのインストール
Raspberry PIでPythonからGPIOを使う際には、「RPi.GPIO」というパッケージを使います。
一方、Tinker BoardではRPi.GPIOの代わりに「ASUS.GPIO」というパッケージを使います。
ASUS.GPIOをインストールするには、ターミナルで以下の順にコマンドを実行します。
sudo apt update sudo apt -y install python-dev python3-dev wget http://dlcdnet.asus.com/pub/ASUS/mb/Linux/Tinker_Board_2GB/GPIO_API_for_Python.zip unzip GPIO_API_for_Python.zip -d GPIO_API_for_Python cd GPIO_API_for_Python/ sudo python setup.py install sudo python3 setup.py install
2.ASUS.GPIOを使う
ASUS.GPIOの使い方は、Raspberry PIのRPi.GPIOと似ています。
ただし、setmodeメソッドでは、RPi.GPIOではパラメータとして「GPIO.BCM」を使うことができますが、ASUS.GPIOでは代わりに「GPIO.ASUS」を使います。
また、この場合のピンの番号は、RPi.GPIOとは異なります。
例えば、3番ピンはGPIO.BCMだと「2」で表しますが、GPIO.ASUSだと「252」になります。
GPIO.ASUSでのピン番号は、Tinker Boardの製品ページの最後の方の「GPIOピンアウト」のところに出ています。
3.Lチカの例
GPIOを使う例として、冒頭の動画のように、Lチカを行ってみました。
配線は以下のように行いました。
絵がRaspberry Piになっていますが、Tinker Boardと思って見てください。
また、Pythonのコードは以下のようになりました。
import ASUS.GPIO as GPIO import time GPIO.setmode(GPIO.ASUS) GPIO.setup(252, GPIO.OUT) while True: GPIO.output(252, GPIO.HIGH) time.sleep(0.2); GPIO.output(252, GPIO.LOW) time.sleep(0.2);
上記のファイルを保存した後、「sudo python ○○○.py」(○○○はファイル名)で実行します。