이전 포스팅에서는 아틱 IDE과 아두이노 IDE를 이용한 LED를 깜빡이는 예제를 구현해보았습니다.
이번에는 파이썬을 사용해보도록 하겠습니다.
본 튜토리얼의 전체 PDF는 다음의 링크에서 참고하실 수 있습니다.
https://goo.gl/JVMp9q
3) 파이썬을 사용하는 경우
아틱에 내장된 빨간색 LED와 파란색 LED는
다음의 예제를 통해서 깜빡이게 만들 수 있습니다.
빨간색 LED를 깜빡일 때는, ledpin = 28
파란색 LED를 깜빡일 때는, ledpin = 38
nano blink.py
#!/usr/bin/python
import time
import sys
print "Blink an LED"
ledpin = 38
#export GPIO pin by opening file and
writing the pin number to it
pinctl =
open("/sys/class/gpio/export", "wb", 0)
try:
pinctl.write( str(ledpin))
print "Exported pin", str(ledpin)
except:
print "Pin ", str(ledpin), " has been exported"
pinctl.close()
#set GPIO pin to be digital output
filename =
'/sys/class/gpio/gpio%d/direction' % ledpin
pinctldir = open(filename,
"wb", 0)
try:
pinctldir.write("out")
print "Set pin ", str(ledpin), " as digital
output"
except:
print "Failed to set pin direction"
pinctldir.close()
#unexport GPIO pin when we are done
def exit_gpio():
pinctl = open("/sys/class/gpio/unexport", "wb", 0)
try:
pinctl.write( str(ledpin))
print "Unexported pin", str(ledpin)
except:
print "Pin ", str(ledpin), " has been unexported"
pinctl.close()
#change GPIO pin value every 10 seconds
filename =
'/sys/class/gpio/gpio%d/value' % ledpin
while True:
try:
pin = open(filename, "wb", 0)
pin.write( str(1) )
time.sleep(1)
pin.write( str(0) )
time.sleep(1)
pin.close()
except:
exit_gpio()
sys.exit(0)
python blink.py