2012-01-02 11 views
5

नहीं पढ़ सकता है मुझे एक Arduino मेगा 1280 मिला है और फर्मता के माध्यम से इसके साथ संवाद करना चाहते हैं। यह आसान लगता है ...Arduino मेगा 1280 के साथ फर्मटा, सभी इनपुट पिन

तो मेरी समस्या: अगर मैं Arduino 1.0 के लिए मानकफर्मटा फर्मवेयर का उपयोग करता हूं, जो Arduino 1.0 में शामिल है, तो मैं आउटपुट पिन सेट कर सकता हूं, और उन्हें एक संकेत भेज सकता हूं (पिन पर नेतृत्व को हाइलाइट करना 24):।

arduino.digitalWrite(24, Arduino.HIGH); 

लेकिन मैं अपने मेगा से किसी भी डिजिटल इनपुट नहीं पढ़ सकते हैं के रूप में मुझे पता चला, कुछ लोगों को 13. मैं यह सत्यापित नहीं कर सकता की तुलना में अधिक बंदरगाहों पर पढ़ने के साथ समस्या थी, मेरी इनपुट संकेतों शुरू बंदरगाह पर 23 उदाहरण:

if (arduino.digitalRead(25) == Arduino.HIGH){ 
    println("is high"); 
    } 

अब मैं Inst मेरे मेगा पर AllInputsFirmata को संबोधित किया, यह Arduino 1.0 में भी पूर्वस्थापित है। अब यह एक डिजिटल इनपुट से पढ़ने के लिए कोई समस्या नहीं है: उदाहरण:

if (arduino.digitalRead(25) == Arduino.HIGH){ 
    println("is high"); 
    } 

लेकिन इस बार, मैं किसी भी संकेत बाहर नहीं भेज सकते।

तो, क्या चल रहा है?

(हाँ, मैं यह FirmataTest सॉफ्टवेयर के साथ परीक्षण किया है, और वहाँ सब कुछ ठीक हो जाता है!)

+0

आप Arduino सॉफ्टवेयर के विभिन्न संस्करणों के साथ की कोशिश की? शायद 0022 या 0023? – fuzz

+0

क्या आप [मेगा विशिष्ट लाइब्रेरी] (http://arduino.cc/playground/uploads/Nilseuropa/processing-arduinomega.zip) का उपयोग कर रहे हैं [Arduino Playground] (http://www.arduino.cc/playground/ इंटरफ़ेस/प्रोसेसिंग)? – JAMESSTONEco

उत्तर

0

यकीन नहीं लेकिन Arduino C++ पहले आप, पिन की विधा निर्धारित करने की आवश्यकता से पहले आप डेटा बाहर भेज सकते हैं। पहले मोड को सेट करते समय डिजिटल रीडिंग भी बेहतर होता है। क्या यह वही लागू हो सकता है?

यदि ऐसा है तो इस सहायता का हो सकता है के लिए आप http://arduino.cc/en/Reference/Firmata