GPIO 출력(쉘 스크립트, 파이썬 이용) 라즈베리파이/GPIO2016. 2. 8. 04:50
쉘 스크립트
1. LXTerminal아이콘 더블 클릭~
2. 커맨드라인에 sudo su 입력
pi@ raspberry ~ $ sudo su
커맨드 프롬프트가 root@ raspberrypi:/home/pi# 이렇게 바뀐다.
3. 25번 핀의 LED를 켜고 끄기에 앞서 사용하려는 핀번호를 내보내기 파일(export)에 쓴다.
root@ raspberrypi:/home/pi# echo 25 > /sys/class/gpio/export
export파일에 핀 번호를 쓰면 해당 핀용 제어파일이 담길 새로운 디렉터리가 /sys/class/gpio/에 만들어진다.
여기서는 /sys/class/gpio/gpio25라는 파일이 만들어진다.
4. cd 명령을 사용하여 그 디렉터리로 이동한다.
root@ raspberrypi:/home/pi# cd /sys/class/gpio/gpio25
l(소문자 L)s 명령을 사용하여 현재 디렉터리에 어떤 파일과 폴더들이 있는지 본다.
root@ raspberrypi:/sys/class.gpio/gpio25# ls
actuve_low direction edge power subsystem uevent value
지금부터 작업해야 할 파일은 direction과 value파일이다.
5. direction 파일은 해당 핀을 입력이나 출력으로 설정하는 방식이다. LED를 켤려면 출력으로 설정.
root@ raspberrypi:/sys/class.gpio/gpio25# echo out > direction
6. LED를 켤려면 value파일에 1을 써야한다.
root@ raspberrypi:/sys/class.gpio/gpio25# echo 1 > value
엔터를 눌리면 LED가 켜진다!
7. LED를 끄려면 valud파일에 0을 쓴다.
root@ raspberrypi:/sys/class.gpio/gpio25# echo 0 > value
8. 루트에서 나갈려면 exit 입력
파이썬
LED를 켜는 것은 이번에는 파이썬을 이용해서 구현 할 수 있다.
1. File Manager(파일 관리자)를 연다. 홈 디렉터리 /home/pi/에 있는지 확인한다.
2. 마우스 왼쪽버튼을 눌러서 Create New > Blank file 을 클릭하여 파일을 만든다. (이름, 맘대로).py 라고 이름을 지정한다. .py꼭 있어야됨. 나는 blink.py라고 했다.
3. 파일을 더블클릭하고 코드를 넣는다.
import RPi.GPIO as GPIO //GPIO제어에 필요한 코드를 가져온다.
import time //sleep함수에 필요한 코드를 가져온다.
GPIO.setmode(GPIO.BCM) //칩의 신호 번호를 사용한다.
GPIO.setup(25, GPIO.OUT) //25번 핀을 출력으로 설정한다.
while True: //들여쓰기를 한 코드 조각으로 무한 루프를 만든다.
GPIO.output(25, GPIO.HIGH) //LED를 켠다.
time.sleep(1) //1초 기달
GPIO.output(25, GPIO.LOW) //LED 끈다.
time.sleep(1)
4. LXTerminal을 열고 홈디렉터인지 확인한 다음 파일을 실행하자
pi@ raspberrypi ~ $ sudo python blink.py
LED가 깜박일 것이다.
5.Ctrl + C를 누르면 스크립트 종료하고 다시 커맨드 라인으로 돌아간다.
파이썬 언어 참고
'라즈베리파이 > GPIO' 카테고리의 다른 글
C언어를 이용한 GPIO 출력 (wiringPi ) (0) | 2016.02.08 |
---|---|
사운드 보드(파이썬) (0) | 2016.02.08 |
GPIO 입력(파이썬) (0) | 2016.02.08 |
GPIO 설치하고 테스트하기 (0) | 2016.02.08 |