삼성 아틱 GPIO 사용하기 - Blink LED (파이썬 사용시)

메이커 2018-09-11 (화) 09:23 6년전 2742  

이전 포스팅에서는 아틱 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


 

메카리워즈 Image Map


모바일 버전으로 보기