जवाबों:
आरपीआई के GPIO के बारे में बहुत सारी जानकारी यहाँ है: http://elinux.org/Rpi_Low-level_peripherals
इसके अनुसार, आप I ,C के लिए कोई भी GPIO पिन प्रोग्राम कर सकते हैं, लेकिन:
पिन 3 (SDA0) और पिन 5 (SCL0) I toC इंटरफ़ेस के रूप में उपयोग किए जाने के लिए पूर्व निर्धारित हैं। तो इन पिनों के लिए बोर्ड पर 1.8 किलोहोम पुल को रोकने वाले होते हैं।
उस विकी पृष्ठ में विभिन्न भाषाओं के लिए कुछ निम्न-स्तरीय GPIO कोड उदाहरण हैं जो आपको आरंभ करने चाहिए। यदि आपको I²C वास्तव में क्या है पर एक पुनश्चर्या की आवश्यकता है, तो यहां एक है जो आरपीआई को भी ध्यान में रखता है।
विशिष्ट I libraryC नियंत्रण के लिए, यह अजगर पुस्तकालय सहायक हो सकता है, इस ब्लॉग पोस्ट में इसकी चर्चा की गई है , जिसमें एक कोड नमूना शामिल है।
इसे लेकर काफी चर्चाएं चल रही हैं। यहाँ मेरे पढ़ने और मेरे साथ खिलवाड़ करने के बारे में बताया गया है:
/etc/modprobe.d/raspi-blacklist.confकरते हैं और प्रविष्टि के लिए टिप्पणी करते हैं i2c-bcm2708; फिर संपादित करें /etc/modulesऔर संलग्न करें i2c-dev; फिर रिबूट। अब आपके पास एक /dev/i2c-0विशेष फ़ाइल होनी चाहिए , जिसका उपयोग करना बहुत आसान है।
यहां मैंने कुछ उदाहरण दिए हैं
हार्डवेयर:
जैसा कि टैपिओ ने उल्लेख किया है, हार्डवेयर http://elinux.org/Rpi_Low-level_peripherals पर अच्छी तरह से प्रलेखित है
सॉफ्टवेयर:
लिनक्स यूजरस्पेस ( #include <linux/i2c-dev.h>) में एक i2c-dev हेडर है । इसके अलावा आपको पढ़ने के लिए एक चरित्र निर्णायक की आवश्यकता है। यह सही मॉड्यूल लोड करके किया जा सकता है। i2c_bcm2708निम्न स्तर के चालक के लिए और i2c-devचरित्रों के लिए निर्णय लेने के लिए। लागू करें ...
sudo modprobe -r i2c_bcm2708
sudo modprobe i2c_bcm2708 baudrate=<your preferred baudrate>
मक्खी पर उन्हें लोड करने के लिए। लागू करें ...
sudo sh -c 'echo "i2c-dev" >> /etc/modules'
sudo sh -c 'echo "options i2c_bcm2708 baudrate=<your preferred baudrate>\n" > /etc/modprobe.d/custom.conf
और unblacklist i2c_bcm2708में /etc/modprobe.d/raspi-blacklist.confबनाने के लिए /dev/i2c-0और /dev/i2c-1स्थायी रूप से दिखाई देते हैं।
अब से आप I delC डेल मेस्ट्रो का उपयोग करने के तरीके के संकेतों का अनुसरण कर सकते हैं ।
मैं इस विधि को दूसरों पर पसंद करता हूं, क्योंकि यह प्लेटफ़ॉर्नास्टिक है। आपका linux/i2c-dev.hअन्य उपकरणों के साथ भी उपयोग कर सकता है, जब तक कि निम्न स्तर का I driverC ड्राइवर मौजूद है।
सादर