के लिए मैं gpio interrupts के साथ काम कर रहा हूं। मेरे पास "/ sys/class/gpio/gpio38/value" में एक फ़ाइल है। जब भी मान में कोई परिवर्तन होता है तो मुझे एक अधिसूचना चाहिए। तो मैं इसे उपयोगकर्ता-स्थान में कैसे प्राप्त कर सकता हूं। जैसा कि मैंने पहले ही जानकारी एकत्र की है, मैं चुनिंदा(), मतदान() या एपोल() का उपयोग कर सकता हूं। तो इस एप्लिकेशन के लिए कौन सा सही है? या कृपया मुझे सुझाव दें कि क्या मैं/proc/irq या कुछ उपयोग कर सकता हूं। धन्यवाद :)चयन(), मतदान() या epoll()? sysfs विशेषता
उत्तर
मैं कुछ here कि मदद की हो सकती है पाया है:
GPIO सिग्नल जैसे/sys/कक्षा/GPIO/gpio42/(GPIO # के लिए 42) पथ है और निम्नलिखित पढ़ा है/लिखने के गुण:
"मूल्य" ... 0 (कम) या 1 (उच्च) के रूप में पढ़ता है। यदि GPIO आउटपुट के रूप में कॉन्फ़िगर किया गया है, तो यह मान लिखा जा सकता है; किसी भी nonzero मूल्य को उच्च के रूप में माना जाता है।
पिन बाधा व्यवधान पैदा करने के रूप में विन्यस्त किया जा सकता है और अगर यह बीच में आता है उत्पन्न करने के लिए कॉन्फ़िगर किया गया है ("बढ़त" की विवरण देखें), आप मतदान कर सकते हैं (2) है कि फाइल और सर्वेक्षण (2 पर) जब भी बाधा उत्पन्न हो जाती है तब वापस आ जाएगी। यदि आप मतदान (2) का उपयोग करते हैं, तो ईवेंट POLLPRI और POLLERR सेट करें। यदि आप का चयन करें (2) का चयन करें, तो फाइल डिस्क्रिप्टर को छोड़कर। मतदान (2) रिटर्न के बाद, या तो lseek (2) sysfs फ़ाइल की शुरुआत में और नया मान पढ़ें या फ़ाइल बंद करें और मान पढ़ने के लिए इसे फिर से खोलें।
हालांकि यह कहता है कि यह "gpio42" के लिए है, मुझे लगता है कि यह आपके मामले पर लागू हो सकता है। यदि ऐसा नहीं होता है, तो मेरे उत्तर में एक टिप्पणी करें।
आप इनमें से किसी का भी उपयोग कर सकते हैं। यहां मुद्दा यह है कि आप GPIO लाइन के मूल्य के लिए sysfs फाइल को खोलने है (उदाहरण के /sys/class/gpio/gpio42/value
और फिर उस पर रोक देते हैं।
लाइन राज्य में परिवर्तन बल्कि एक लिखने की तुलना में एक अपवाद शर्त के रूप में संकेत कर रहे हैं (सहज ज्ञान युक्त हो सकता है के रूप में)।
चयन के मामले में:
fd_set exceptfds;
int res;
FD_ZERO(&exceptfds);
FD_SET(gpioFileDesc, &exceptfds);
res = select(gpioFileDesc+1,
NULL, // readfds - not needed
NULL, // writefds - not needed
&exceptfds,
NULL); // timeout (never)
if (res > 0 && FD_ISSET(gpioFileDesc, &exceptfds))
{
// GPIO line changed
}
ध्यान रखें कि सभी GPIOs बीच में सक्षम रहे हैं के लिए मतदान करने के लिए है GPIO हैं?। आप काम कर रहे हैं इंटरप्ट्स का समर्थन नहीं करता है (और यह आपके द्वारा उपयोग किए जा रहे सटीक सीपीयू/एसओसी पर निर्भर करेगा), आपको इसे आवधिक पढ़ने की आवश्यकता होगी y। – duskwuff
इसमें कोई संदेह नहीं है कि यह सच है - खासकर जब GPIO लाइन को I2C परिधीय या ऑडियो कोडेक के साथ कार्यान्वित किया जाता है। हालांकि, उस स्थिति में, आप कभी भी 'select() '' pselect() ',' poll()' या 'epoll()' पर कॉल नहीं करेंगे। ['मतदान()' और उसके भाइयों, वास्तव में वास्तव में मतदान नहीं करते] – marko
हैलो @ मार्को उत्तर के लिए बहुत बहुत धन्यवाद। क्या आप कृपया ऊपर बताए गए चयन के लिए मुझे एक नमूना कोड दे सकते हैं? वास्तव में मैं कैसे कर रहा हूं जब मैं echo 1> file_name करता हूं, तो अधिसूचना मुद्रित करनी चाहिए। यह बहुत उपयोगी होगा। –
- 1. बैश में चयन या मतदान के समतुल्य
- 2. चयन बनाम मतदान बनाम एपोल
- 3. मतदान बनाम एपोल अंतर्दृष्टि
- 4. Win32 चयन/मतदान/eof/कुछ भी?
- 5. लिनक्स ड्राइवर sysfs
- 6. वीका विशेषता चयन
- 7. AJAX मतदान आवृत्ति - लंबे मतदान के लिए या लंबे मतदान के लिए नहीं?
- 8. मतदान
- 9. AJAX/रिवर्स AJAX: मतदान या पुश?
- 10. एक्सएसएलटी - विशेषता द्वारा एक्सएमएल विशेषता का चयन कैसे करें?
- 11. अजाक्स मतदान
- 12. रेफरी विशेषता या XSD
- 13. jQuery: चयनकर्ता सवाल (onclick विशेषता द्वारा चयन)
- 14. तत्वों का चयन करना जिनकी विशेषता XPath
- 15. मतदान चैनल एपीआई
- 16. एंड्रॉइड - सॉकेट बनाम मतदान
- 17. jQuery चयनकर्ता विशेषता या ऑपरेशन
- 18. रेल: लंबे मतदान अभ्यास
- 19. टिप्पणी मतदान डेटाबेस संरचना
- 20. सबप्रोसेस प्रतीक्षा() और मतदान()
- 21. मतदान डेटाबेस के विकल्प?
- 22. सी # सूत्रण और मतदान
- 23. Django अतिथि केवल मतदान के बाद मतदान करते हैं
- 24. स्काला में विशेषता, फंक्शन एन, या विशेषता-विरासत-फंक्शन एन?
- 25. मतदान, धूमकेतु, वेबसाकेट, आदि
- 26. धूमकेतु वी.एस. अजाक्स मतदान
- 27. मतदान (2) घटना कतार
- 28. चयन विशेषता एचटीएमएल चपलता पैक के साथ महत्व देता
- 29. jQuery $ चयन> विकल्प पर .Value जहां कोई मूल्य विशेषता
- 30. अनुपस्थित विशेषता
धन्यवाद @ टोनी-शेर, इसका मतलब है कि मैं किनारे फ़ाइल या मूल्य फ़ाइल –