خطأ avrdude - خطأ في بروتوكول stk500_paged_write ()

أنا أستخدم Arduino Uno الخاص بي كمبرمج لبرنامجي ATtiny85. حمّلت رسم ArduinoISP إلى Uno. لقد قمت بمعاينة التوصيلات الخاصة بي ، وقمت ببعض عمليات googling ، لكني مازلت لا أعرف لماذا أحصل على هذا الخطأ ...

avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0x11
avrdude: stk500_cmd(): programmer is out of sync

... عندما أقوم بتشغيل هذا الأمر:

sudo avrdude -p t85 -c arduino -P /dev/ttyACM0 -b 19200 -U flash:w:src.hex\

ثم راجعت لمعرفة ما إذا كان ATtiny يستجيب ، ركضت هذا الأمر:

sudo avrdude -P /dev/ttyACM0 -p t85 -b 19200 -c avrisp -v

النتائج كانت ناجحة.

تصحيح:

فيما يلي الطوابع الزمنية (فقط في حالة):

15:24:29.502445729 E: 
15:24:29.623628385 E: avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85 
15:24:29.761744829 E: avrdude: AVR device initialized and ready to accept instructions 
15:24:29.766251405 E: 
15:24:29.812810614 E: Reading | ################################################## | 100% 0.05s 
15:24:29.821187588 E: 
15:24:29.825324777 E: avrdude: Device signature = 0x1e930b 
15:24:30.171341329 E: avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed 
15:24:30.180631410 E: To disable this feature, specify the -D option. 
15:24:30.334997131 E: avrdude: erasing chip 
15:24:30.495926604 E: avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85 
15:24:30.632387526 E: avrdude: reading input file "src.hex" 
15:24:30.637210000 E: avrdude: input file src.hex auto detected as Intel Hex 
15:24:30.641710226 E: avrdude: writing flash (98 bytes): 
15:24:30.645806835 E: 
15:24:30.712364458 E: Writing | 
15:24:30.718291473 E: avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0x11 
15:24:30.752474103 E: avrdude: stk500_cmd(): programmer is out of sync 
15:24:30.827210626 I: Finished with exitcode 1

لا أستطيع أن أفهم ما هو الخطأ. أي اقتراحات؟

4
لماذا تستمر في تغيير الإعداد -c؟
وأضاف المؤلف Andrew Walker, مصدر
أستخدم مخطط ISP على Uno بدون مكونات إعادة ضبط ، cstk500v1 وليس لديك أي مشكلة في برنامج attiny85 بالرغم من أنني أستخدم أيضًا -pattiny85 كمعرّف الجزء ، باستخدام a avrdude config الذي جاء مع تثبيت arduino (وتحديد المسار لهذا التكوين مع خيار -C).
وأضاف المؤلف Andrew Walker, مصدر
هل أنت متأكد تمامًا أن ملفك صالح لـ 85 دقيقة؟ على سبيل المثال ، قد يحاول وضع الشفرة في عناوين غير موجودة. لن يكون الملف السداسي الذي يمثل 98 بايت طويلاً جدًا لإدراجه في سؤالك.
وأضاف المؤلف Andrew Walker, مصدر
يرجى نشر صورة من الإعداد الخاص بك.
وأضاف المؤلف La raison, مصدر
استخدم إصدار ArduinoISP الموجود في File => Examples => ArduinoISP
وأضاف المؤلف La raison, مصدر
وفقًا لملف programmers.txt في Arduino IDE ، يجب أن يكون الإعداد -c "stk500v1" ، على الرغم من أن "arduino" مشابه جدًا.
وأضاف المؤلف Smith John, مصدر
ثلاثة أشياء أخرى يمكنك تجربتها: (1) أدخل الوضع التفاعلي avrdude مع العلم -t وجرب بعض عمليات الكتابة من هناك. (2) إضافة بعض العلامات -v ، حتى تتمكن من رؤية أوامر ISP الفعلية الصادرة. (3) جرب رسم ScratchMonkey الخاص بي microtherion.github.io/ScratchMonkey ، وهو دبوس متوافق مع ArduinoISP ، ولكن يستخدم بروتوكول stk500v2 بدلا من ذلك.
وأضاف المؤلف Smith John, مصدر
ChrisStratton لا يهم إذا كان arduino أو avrisp ، فهذا هو الشيء نفسه.
وأضاف المؤلف Panagiotis Korros, مصدر
microtherion حاولت stk500v1 بدلاً من arduino ، حدث الشيء نفسه ...
وأضاف المؤلف Panagiotis Korros, مصدر
ChrisStratton لقد حاولت ذلك دون أي مكونات إعادة التشغيل ، التي لم تعمل إما ...
وأضاف المؤلف Panagiotis Korros, مصدر
jippie فعلت ذلك بالضبط
وأضاف المؤلف Panagiotis Korros, مصدر

7 إجابة

I solved exactly the same problem by upgrading arduino IDE from 1.00 to 1.05 from http://code.google.com/p/arduino/downloads/list

هذا الإصدار من اردوينو IDE يحتوي على نسخة جديدة من رسم ArduinoISP.

1
وأضاف

كنت أتلقى هذا الخطأ مع Arduino Uno

avrdude: stk500_paged_write(): (a) protocol error, expect=0x14, resp=0x11 

كان لدي اتصال protoshield وعندما انفصل كل شيء protoshield بدأ العمل بشكل جيد.

تصحيح

After some additional trouble shooting I found that it wasn't the protoshield, it was that the protoshield didn't have TX/RX marked for Digital PWM pins 0 & 1. Once I unplugged cables from 0(tx) & 1(rx) that resolved my issue.

1
وأضاف

كان لدي أيضا مشكلة: "avrdude: stk500_paged_load (): (أ) خطأ في البروتوكول ، ونتوقع = 0x14 ، والتنفس = 0x00. avrdude: stk500_cmd (): مبرمج خارج التزامن".

نعم .. ثم قمت بفصل جميع الاتصالات في البلوتوث .... بعد أن قمت بتجميع البرنامج ثم قمت بتوصيل البلوتوث الخاص بي إلى Ardiuno uno .... ثم لم أحصل على أي خطأ.

0
وأضاف

كان لدي أيضا مشكلة: "avrdude: stk500_paged_load (): (أ) خطأ في البروتوكول ، ونتوقع = 0x14 ، والتنفس = 0x00. avrdude: stk500_cmd (): مبرمج خارج التزامن".

في وقت لاحق. ثم استخدمت كبل USB آخر (مناسب) بدلاً من كبل USB رفيع مزود بموفر خدمة Pololu ISP لشيء آخر وأدركت أن الكبل الذي استخدمته مع Arduino Nano قد يكون ذو جودة رديئة. غيرت كابل و- يتم حل جميع مشاكلي!

0
وأضاف

كان لي كابل USB طويل (10 ') متصلاً بمحور USB 9 منفذ بالطاقة.

ربط الاتصال المباشر بجهاز Mac الخاص بي حل هذه المشكلة على الفور.

لقد لاحظت أنه بناءً على مزاجه ، يمكن أن يؤدي الاتصال مباشرةً بالجهاز إلى إصلاح مشكلات التحميل.

0
وأضاف

في حالتي تثبيت "AVR-GCC Toolchain" عبر Homebrew ثابتة كل هذه القضايا.

All necessary details here: http://maxembedded.com/2015/06/setting-up-avr-gcc-toolchain-on-linux-and-mac-os-x/

0
وأضاف

افصل جميع الاتصالات على جهاز لوحة اردوينو الخاص بك ، وحاول تحميل الرمز على لوحة اردوينو الخاصة بك. أنا حل هذه المشكلة. قد يكون هناك واحد من الأجهزة الخاصة بك إشكالية ، متصلة بلوحة اردوينو الخاصة بك.

0
وأضاف