برنامه LED چشمک زن به زبان Python

با توجه به توضیحات آقای عباسی در این پست یه برنامه با زبان پایتون نوشتم که برای مقدار دهی یک پایه کاربرد داره.

برای شروع یک فایل به اسمه blinky.py بسازید و برنامه زیر را داخلش تایپ کنید.

import os,time
_PIN_EN = ‘/sys/class/gpio/export’
_PIN_DS = ‘/sys/class/gpio/unexport’
_PIN_PA = ‘/sys/class/gpio/%s’

GPIO_PINS = [‘gpio1_pg3’, ‘gpio2_pb19’, ‘gpio3_pb18’, ‘gpio4_pg6’, ‘gpio5_pg5’,
‘gpio6_pg4’, ‘gpio7_pg1’, ‘gpio8_pg2’, ‘gpio9_pg0’, ‘gpio10_ph14’,
‘gpio11_ph15’, ‘gpio12_pi6’, ‘gpio13_pi5’, ‘gpio14_pi4’]

class InvalidPinNumber(Exception):
“””The Pin Number sent is invalid on a Cubieboard”””
pass

def _GetPinName(pinNumber):
if pinNumber in range(1,67):
return GPIO_PINS[pinNumber – 1]
else:
raise InvalidPinNumber

def usleep(ms):
time.sleep(ms/10000.0)

def output(pinNumber, value):
id = _GetPinName(pinNumber)
pin_path=_PIN_PA %id
if not os.path.exists(pin_path):
open(_PIN_EN, ‘w’).write(str(pinNumber))
with open(pin_path+’/direction’, ‘w’) as f:
f.write(‘out’)
with open(pin_path+’/value’, ‘w’) as f:
f.write(‘1’ if value else ‘0’)
while(1):
output(12, 1)
usleep(1000)
output(12, 0)
usleep(1000)

برای مثال می خواهیم LED متصل به پایه 26 سوکت U15 کیوبی را بصورت مداوم خاموش و روشن بکنیم.

برای اجرای برنامه از دستور زیر استفاده می شود.

python blinky.py

برای خارج شدن از برنامه از کلید Ctrl+c استفاده کنید.

اگر دقت کنید داخل برنامه فقط نیاز هست قسمت زیر را بدونیم.

While (1):

            output(12, 1)

            usleep(1000)

            output(12, 1)

            usleep(1000)

در تابع output عدد 12  شماره پایه و 1 مقدار خروجی هست.

در آینده سعی می کنم تابع مربوط به خواندن را هم اضافه کنم.

فایل برنامه را می تونید از این لینک دانلود کنید.

برچسب خورده : , , . Bookmark the پیوند یکتا.

پاسخ دهید