USB- सीरियल केबल के माध्यम से Arduino प्रोग्रामिंग करते समय मैं AVRdude नहीं-इन-सिंक त्रुटि कैसे ठीक कर सकता हूं?


9

मैं पीसी के लिए इस परिवेश प्रकाश व्यवस्था बनाने की कोशिश कर रहा हूँ । यह मेरे Arduino Uno पर त्रुटिपूर्ण रूप से काम करता है। मेरा अगला कदम "ब्रेडबोर्ड पर अरुडिनो" का उपयोग करके इसे बनाना था । इसलिए मैंने एक खाली ATmega328 चिप खरीदी और उस पर Arduino IDE और USBasp का उपयोग करके Arduino बूटलोडर (बोर्ड के लिए "Arduino Duemilanove w / ATmega328") को जला दिया; और मुझे पता है कि यह ठीक से लोड किया गया है क्योंकि यह ATmega चिप ऊनो पर ठीक काम करता है।

तब मैंने FT232RL का उपयोग करके USB-to-serial कनवर्टर बनाया ; लेकिन इसके ड्राइवर मेरे पीसी (विंडोज 7 x64) पर स्थापित नहीं हुए। मुझे संदेह है कि मैंने सतह-माउंट एफटीडीआई चिप को गर्म कर दिया और इसे हाथ से मिलाते हुए मार दिया।

इसलिए, मैंने इसे एक तरफ रख दिया है, और इस यूएसबी-टू-सीरियल कनवर्टर पुल को प्राप्त किया है: (भद्दे चित्रों के लिए क्षमा करें) मैंने अपने ब्रेडबोर्ड पर एक अतिरिक्त ST232CN का उपयोग किया, वोल्टेज स्तर को RS232 से TTL में परिवर्तित करने के लिए, जैसा कि इस में दिखाया गया है पेज । और यह ठीक काम करता है, जैसा कि मैंने लूपबैक परीक्षण से सत्यापित किया है। और मैंने ATmega के 2 पिन करने के लिए ST232 के पिन 9, और 10 को पिन 3 से जोड़ा है।

जब मैंने Arduino IDE से एक ब्लिंक उदाहरण अपलोड करने का प्रयास किया , तो मुझे यह त्रुटि मिली:

Binary sketch size: 1026 bytes (of a 30720 byte maximum)
avrdude: stk500_getsync(): not in sync: resp=0x00

जब मैं क्रिया अपलोड (Shift + अपलोड) करता हूं, मुझे यह त्रुटि / संदेश मिलता है:

avrdude: usbdev_open(): did not find any USB device "usb"

इसके अलावा, मैंने ATmega के पिन 2 और 3 में 1k पुल-अप प्रतिरोधों को जोड़ने की कोशिश की, लेकिन मदद नहीं की। तो मुझे लगता है कि समस्या अब ST232 से ATmega के धारावाहिक संचार में है? और क्या एटीमेगा के रीसेट पिन से कोई विशेष संबंध है? मैंने इसे 10k रोकनेवाला के साथ 5V तक खींच लिया है।


आपके ब्रेडबोर्ड सेटअप का एक योजनाबद्ध और या चित्र मदद करेगा।
sptrks

3
क्या आपने चिप को कुछ समय पहले, जैसे ही या अपलोड करने के बाद कमांड को रीसेट किया था? जब भी मैंने 'सिंक में नहीं' त्रुटि प्राप्त की है, यह उस सापेक्ष समय से संबंधित था। मेरे ब्रेडबोर्ड, और एक्लिप्स / एवीआरड्यूड के लिए, रीसेट पिन को भूमिगत करने से पहले या जैसे ही मैं क्लिक करता हूं अपलोड कमांड सही समय है। लेकिन यह भी जांच लें कि जब आप इसे प्लग इन करते हैं, तो आपका पीसी वास्तव में एडेप्टर को देखता है।
JRobert

1
@potato_in_my_ear - समाधान पोस्ट करने का उचित प्रारूप संपादन नहीं बल्कि उत्तर है। नीचे देखें, और आपको "आपका उत्तर" शीर्षक वाला एक बॉक्स दिखाई देगा जिसमें इसे दर्ज करना है। प्रवेश करने के बाद, लोग आपके उत्तर पर मतदान करेंगे, और आप उत्तर के बाईं ओर चेक मार्क दबाकर इसे 'स्वीकार' कर सकते हैं।
केविन वर्मर

1
@potato_in_my_ear: मुझे खुशी है कि मदद की। आप एक सज्जन और विद्वान व्यक्ति हैं - मैं अपनी टिप्पणी का उत्तर दूंगा।
JRobert

2
समाधान लोगों को टिप्पणियों में उत्तर प्रदान करने से रोकने के लिए है!
केविन वर्मियर

जवाबों:


6

जब भी मैंने 'सिंक में नहीं' त्रुटि प्राप्त की है, तो यह मेरे बस रिसेटिंग टाइम (या पूरी तरह से भूल गया है!) को याद करने से संबंधित था। मेरे ब्रेडबोर्ड, और एक्लिप्स / एवीआरड्यूड के लिए, रीसेट पिन को ठीक से पहले या एक ही समय में अन-ग्राउंडिंग करना क्योंकि मैं अपलोड बटन पर क्लिक करना सही समय है। लेकिन यह भी जांच लें कि जब आप इसे प्लग करते हैं तो आपका पीसी वास्तव में एडेप्टर को देखता है।

बाद में जब कोई सीरियल कनेक्शन हो जाता है, और प्रोग्रामर द्वारा बूटलोडर को रीसेट करने के लिए arduino बोर्ड बनाया जाता है। यह ब्लॉग लेख बताता है कि यह कैसे काम करता है, और इससे भी दिलचस्प बात यह है कि इसे पहले के बोर्डों पर कैसे हैक किया जाए। यदि आप चाहते हैं तो इसे ब्रेडबोर्ड पर रखना बहुत कठिन नहीं होना चाहिए। चिप को एक सुसंगत बूटलोडर होना आवश्यक है, निश्चित रूप से (जो आपने पहले ही अपने में डाल दिया है)। ब्रेडबोर्ड के लिए, मैं बस रीसेट-बटन / माउस-क्लिक नृत्य करता हूं।


मैंने कुछ को यह कहते हुए पाया कि आप avrdude.conf को एडिट करके स्वयं को रीसेट करने के लिए avr टूल चेन प्राप्त कर सकते हैं ; यहाँ (टिप्पणियों में)। लेकिन मुझे यकीन नहीं है कि यह कैसे करना है। क्या आप मदद कर सकते हैं। मुझे हर समय रीसेट दबाने से नफरत है ..
Anubis

इसके लिए Arduino बोर्ड या ब्रेडबोर्ड पर हार्डवेयर समर्थन की आवश्यकता होगी जो बाद में Aduino के बिल्ट-इन है; अकेले कोड नहीं कर सकते। यह धारावाहिक DTR से रीसेट और रीसेट पुल-अप के कैपेसिटर पर आधारित है। यदि आपके पास एक पुराना या एक ब्रेडबोर्ड है, तो आपको इसे जोड़ना होगा। यह EE StackEx प्रश्न और मेरे द्वारा उद्धृत ब्लॉग लेख आपको सही दिशा में इंगित करना चाहिए।
JRobert

2

जैसा कि @JRobert ने टिप्पणियों में कहा, ATmega पर रीसेट पिन को ग्राउंडिंग और अनग्राउंड करने के सही समय ने चाल चली। "अपलोड" पर क्लिक करने पर ATmega के रीसेट पिन को ग्राउंडिंग रखें, और जैसे ही यह "अपलोडिंग" दिखाता है, इसे अलग करें।


बस एक arduino मिनी मिला और मुझे पता था कि मुझे कोड अपलोड करने के लिए रीसेट बटन दबाने की जरूरत है, लेकिन मुझे पता नहीं चला कि कब !!! इसने मेरे लिए काम किया। धन्यवाद।
स्पंज बॉब

0

मेरे पास वही त्रुटियां थीं जो मैंने कई साइटों पर पोस्ट की हैं RE: Arduino संदेश "avrdude: stk500_getsync (): सिंक में नहीं: resp = 0x00" या समान।

मैंने पाया कि अगर मैं D0 ([D0] डिजिटल पिन जीरो) में से जो भी निकालता हूं, वह USB और पॉवर जैक से सबसे दूर होता है, "RX" भी पढ़ता है)।

मैंने दो अलग-अलग कंप्यूटरों की कोशिश की और एक ही तरह की त्रुटियां हुईं और पता चला कि अगर: 1- मैं तार को निकालता हूं या सर्किट को खोलता हूं [D0] 2- Arduino पर अपलोड करें 3- हटाए गए तार को फिर से पैच करें या खुले सर्किट को बंद करें [ D0]

मैंने केवल उस त्रुटि का सामना किया है जब मैं अपलोड करता हूं और यह मेरा समाधान है। अभी के लिए।

आशा है ये मदद करेगा।

अंत में कुछ उपयोगी जानकारी एक समुदाय को वापस देना अच्छा लगता है!


1
प्रतिक्रिया थोड़ा अस्पष्ट है: वाक्य की शुरुआत "मैंने पाया कि अगर मैं ..." अधूरा है, तो निश्चित नहीं कि आप वहां क्या कहना चाह रहे हैं। कृपया संपादित करें, धन्यवाद।
एनिंडो घोष

यह उत्तर आटेमेगा हार्डवेयर सीरियल पिन से जुड़े परस्पर विरोधी सर्किटरी को संदर्भित करता है।
क्रिस स्ट्रैटन

0

इसने मेरी समस्या को ठीक किया, ड्रायवर और सेटअप पर जाएँ, Arduino IDE में Boards.txt को बदलें ...

मेरे पास Arduino MEGA 2560 R3 है और मुझे भी यही समस्या थी

avrdude: stk500_getsync (): सिंक में नहीं: resp = 0x00

http://arduino.cc/en/Main/ArduinoBoardADK


-1

"Avrdude: stk500_getsync (): को सिंक में नहीं: फिक्स = 0x00" त्रुटि को ठीक करने के लिए। बस FTDI ड्राइवर संस्करण 2.8.24.0 स्थापित करें। नए ड्राइवर के साथ कुछ समस्याएँ हैं v2.8.28.0।


-1

अपने कंप्यूटर पर Arduino IDE के कोड को अपलोड़ करते समय, कृपया Arduino कार्ड का RX पिन 0. बाहर निकालें। आपको सफलता कोड अपलोडिंग मिल जाएगी। आरएक्स पिन को प्लग आउट करें और प्रयास करें। या, आपको (शायद) ब्लूटूथ के आरयू को Arduino के RX में रखा जा सकता है ताकि TX एक दूसरे से जुड़े रहें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.