ओके एलईडी को यूजर स्पेस सॉफ्टवेयर से नियंत्रित किया जा सकता है। यहाँ विवरण: पुन: हम पर बोर्ड के नेतृत्व में नियंत्रण कर सकते हैं
ऊपर से सारांशित (ब्रायनडब्ल्यू के लिए सभी क्रेडिट):
ओके एलईडी के रूप में उपलब्ध है /sys/class/leds/led0/
।
कर्नेल एलईडी ड्राइवर में "ट्रिगर" होता है जो कर्नेल के कुछ अन्य भाग को एलईडी को नियंत्रित करने देता है। एलईडी के लिए डिफ़ॉल्ट ट्रिगर ' mmc0
' है, जो एसडी कार्ड एक्सेस किए जाने पर आता है।
root@raspberrypi:~# cat /sys/class/leds/led0/trigger
none [mmc0]
आप mmc0
ट्रिगर को इस प्रकार से निष्क्रिय कर सकते हैं:
echo none >/sys/class/leds/led0/trigger
' brightness
' फ़ाइल का उपयोग करके एलईडी को चालू और बंद किया जा सकता है । न्यूनतम चमक 0 है, और अधिकतम 255 है। जैसा कि कोई चर चमक समर्थन नहीं है, 0 से अधिक कोई भी मूल्य एलईडी को चालू करेगा।
echo 1 >/sys/class/leds/led0/brightness
echo 0 >/sys/class/leds/led0/brightness
चमक को 0 पर सेट करना स्वचालित रूप से "कोई नहीं" के लिए ट्रिगर सेट करता है।
यदि आप चाहते हैं कि एलईडी अपने डिफ़ॉल्ट फ़ंक्शन पर वापस जाए:
echo mmc0 >/sys/class/leds/led0/trigger
कुछ कर्नेल मॉड्यूल हैं जिन्हें आप लोड कर सकते हैं ( ledtrig_timer
और ledtrig_heartbeat
) जो आपके लिए एलईडी फ्लैश करेंगे।
modprobe ledtrig_heartbeat
echo heartbeat >/sys/class/leds/led0/trigger
एक बार जब आप mmc0
ट्रिगर बंद कर देते हैं, तो आप एलईडी को नियंत्रित करने के लिए GPIO16 का उपयोग कर सकते हैं। यह सक्रिय-कम है, इसलिए आपको एलईडी चालू करने के लिए पिन को कम सेट करने की आवश्यकता है, और इसे बंद करने के लिए उच्च है।
पायथन से, आप RPi.GPIO
16 पिन को नियंत्रित करने के लिए मॉड्यूल का उपयोग कर सकते हैं। एक सी # ड्राइवर भी है।
नमूना कोड
#!/usr/bin/python
import RPi.GPIO as GPIO
from time import sleep
# Needs to be BCM. GPIO.BOARD lets you address GPIO ports by periperal
# connector pin number, and the LED GPIO isn't on the connector
GPIO.setmode(GPIO.BCM)
# set up GPIO output channel
GPIO.setup(16, GPIO.OUT)
# On
GPIO.output(16, GPIO.LOW)
# Wait a bit
sleep(10)
# Off
GPIO.output(16, GPIO.HIGH)