Home » 산딸기 가지고 놀기 » 라즈베리파이 GPIO 활용강좌 : 03 WiringPi2-python 설치하기

0. WiringPi 이란 ?

test
o WiringPi : 아두이노의 대부분의 기능을 라즈베리파이에 맞추어 재구성.
o WiringPi2 : WiringPi2는 IO 확장장치를 관리하기 위한 일부 기능이 추가.

 

1. WiringPi2-python 설치 준비

라즈베리파이에 WiringPi2-Python 버전을 설치하기 위해선 두 가지 패키지(python-dev

python-setuptools)와 함께 WiringPi-Python이 사전 설치가 되어 있어야만 한다.

그럼 우선 Python 개발 패키지와 셋업 툴 그리고 WiringPi-Python을 먼저 설치해보도록 하자

pi@rasplay ~ $ sudo apt-get install -y python-dev python-setuptools

Reading package lists… Done

Building dependency tree

Reading state information… Done

The following extra packages will be installed:

libexpat1-dev libssl-dev libssl-doc python-pkg-resources python2.7-dev

Suggested packages:

python-distribute python-distribute-doc

The following NEW packages will be installed:

libexpat1-dev libssl-dev libssl-doc python-dev python-pkg-resources

python-setuptools python2.7-dev

0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.

Need to get 32.1 MB of archives.

………..[continue]……….

Setting up python2.7-dev (2.7.3-6) …

Setting up python-dev (2.7.3-4) …

Setting up python-pkg-resources (0.6.24-1) …

Setting up python-setuptools (0.6.24-1) …

 

2. wiringPi 다운로드

1번 항목을 통해 기본 패키지가 설치되었다 이제 WiringPi-python 설치를 위해  WiringPi git

hub 를 통해 Python 버젼을 다운로드 받자.

pi@rasplay ~ $ git clone git://git.drogon.net/wiringPi
Cloning into ‘wiringPi’…
remote: Counting objects: 489, done.
remote: Compressing objects: 100% (431/431), done.
remote: Total 489 (delta 341), reused 95 (delta 58)
Receiving objects: 100% (489/489), 209.46 KiB | 159 KiB/s, done.
Resolving deltas: 100% (341/341), done.

 

3. WiringPi module 업데이트 하기

라즈비안에서도 ‘update’ 명령어를 이용해 소스 패키지 업데이트를 통해 패키지 업데이트를

하듯이 WiringPi도 github 패키지소스 업데이트를 통한 모듈업데이트 기능을 이용할 수 있다.

pi@rasplay ~ $ cd wiringPi
pi@rasplay ~/wiringPi $ git pull origin

Already up-to-date.

 

 

4. WiringPi 설치하기

3번 항목을 통해 업데이트 된 모듈을 라즈베리파이에서 Wiring 이 구동 되도록 컴파일을 진행하자.

pi@rasplay ~/wiringPi $ ./build
wiringPi Build script
=====================
WiringPi Library
……
GPIO Utility
[Compile] gpio.c
[Compile] extensions.c
[Link]
[Install]
All Done.
NOTE: This is wiringPi v2, and if you need to use the lcd, Piface,
Gertboard, MaxDetext, etc. routines then you must change your
compile scripts to add -lwiringPiDev
pi@rasplay ~/wiringPi $

 

5. WiringPi-Python GPIO 테스트

WiringPi-Python이 정상 설치가 이루어졌는지 gpio 명령어를 통해 간단한 확인 해 보도록 하자.
pi@rasplay ~/WiringPi-Python $ gpio -v
gpio version: 2.07
Copyright (c) 2012-2013 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty
pi@rasplay ~/WiringPi-Python $ gpio readall
+———-+-Rev2-+——+——–+——+——-+
| wiringPi | GPIO | Phys | Name   | Mode | Value |
+———-+——+——+——–+——+——-+
|      0   |  17  |  11  | GPIO 0 | IN   | Low   |
|      1   |  18  |  12  | GPIO 1 | IN   | Low   |
|      2   |  27  |  13  | GPIO 2 | IN   | Low   |
|      3   |  22  |  15  | GPIO 3 | IN   | Low   |
|      4   |  23  |  16  | GPIO 4 | IN   | Low   |
|      5   |  24  |  18  | GPIO 5 | IN   | Low   |
|      6   |  25  |  22  | GPIO 6 | IN   | Low   |
|      7   |   4  |   7  | GPIO 7  | IN   | Low   |
|      8   |   2  |   3  | SDA     | IN   | High  |
|      9   |   3  |   5  | SCL      | IN   | High  |
|     10   |   8  |  24  | CE0     | IN   | Low   |
|     11   |   7  |  26  | CE1     | IN   | Low   |
|     12   |  10  |  19  | MOSI   | IN   | Low   |
|     13   |   9  |  21  | MISO   | IN   | Low   |
|     14   |  11  |  23  | SCLK   | IN   | Low   |
|     15   |  14  |   8  | TxD     | ALT0 | Low   |
|     16   |  15  |  10  | RxD    | ALT0 | Low   |
|     17   |  28  |   3  | GPIO 8 | IN   | Low   |
|     18   |  29  |   4  | GPIO 9 | IN   | Low   |
|     19   |  30  |   5  | GPIO10 | IN   | Low   |
|     20   |  31  |   6  | GPIO11 | IN   | Low   |
+———-+——+——+——–+——+——-+
pi@rasplay ~/wiringPi $

 

6. WiringPi2-Python 다운로드

드디어 WiringPi2-Python설치에 끝자락으로 가고 있네요.

WiringPi2-Python 설치를 위해 github를 통해 source를 다운로드 받자.

pi@rasplay ~ $ cd ~
 pi@rasplay ~ $ git clone https://github.com/Gadgetoid/WiringPi2-Python.git
Cloning into ‘WiringPi2-Python’…
remote: Counting objects: 573, done.
remote: Compressing objects: 100% (210/210), done.
remote: Total 573 (delta 378), reused 550 (delta 355)
Receiving objects: 100% (573/573), 285.82 KiB | 146 KiB/s, done.
Resolving deltas: 100% (378/378), done.
pi@rasplay ~ $

 

7. WiringPi2-Python 설치하기

pi@rasplay ~ $ cd WiringPi2-Python
pi@rasplay ~ ~/WiringPi2-Python $ sudo python setup.py install
running install
Checking .pth file support in /usr/local/lib/python2.7/dist-packages/
/usr/bin/python -E -c pass
TEST PASSED: /usr/local/lib/python2.7/dist-packages/ appears to support .pth files
running bdist_egg
running egg_info
creating wiringpi2.egg-info
writing wiringpi2.egg-info/PKG-INFO
running install_lib
running build_py
creating build
running build_ext
building ‘_wiringpi2’ extension
creating build/temp.linux-armv6l-2.7
creating build/temp.linux-armv6l-2.7/WiringPi
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c WiringPi/wiringPi/wiringPi.c -o build/temp.linux-armv6l-2.7/WiringPi/wiringPi/wiringPi.o
…..[continue]…..
Installed /usr/local/lib/python2.7/dist-packages/wiringpi2-1.0.10-py2.7-linux-armv6l.egg
Processing dependencies for wiringpi2==1.0.10
Finished processing dependencies for wiringpi2==1.0.1.1

 

[참고사이트]

http://rasplay.tistory.com/14
https://github.com/wiringPi
https://github.com/WiringPi/WiringPi2-Python

 

산딸기마을 포스트 검색

공동제작 공동프로젝트 무상후원 기관

산딸기마을 기부하기

산딸기마을 방문자 현황

Flags Countries Visits Page views
South Korea 626063 1845660
United States 10882 26091
Japan 5011 13204
Germany 2755 5151
India 1897 2902
Canada 1729 4640
United Kingdom 1596 2642
Australia 1240 2901
Russia 1219 1677
China 1077 2239
Total Pageviews: 1936700