avrdude: stk500v2_ReceiveMessage(): timeout

Ini adalah kesalahan utama yang saya dapatkan ketika saya mencoba menjalankan program ARDUINO saya. Daftar lengkap error adalah sebagai berikut:

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer

Kode saya adalah sebagai berikut:

int led=13;
void setup()
{
    pinMode(13,OUTPUT);
}

void loop()
{
    digitalWrite(13,HIGH);
    delay(1000);
    digitalWrite(13,LOW);
    delay(1000);
}

Saya telah mencoba memperbarui driver (mereka sepenuhnya diperbarui) dan mengunduh beberapa program. Saya memiliki Windows 7 dan arduino saya adalah MEGA 2560. Muncul di Device Manager dan semua koneksi saya sudah benar. Lampu PWR hijau menyala dan begitu juga lampu L yang berkedip. Lampu RX dan TX berkedip ketika saya memperbarui. Saya telah mencoba hampir semua yang ada di web. Apa masalahnya?

Pesan kesalahan pada dasarnya berarti bahwa programmer tidak dapat menghubungi bootloader pada perangkat; kode yang Anda coba unggah tidak ada hubungannya dengan masalah.

Apa yang menyebabkan hal ini bisa banyak dan beragam, beberapa masalah yang mungkin terjadi:

  1. Komunikasi UART
  • Kedipan terjadi, jadi semoga Anda tidak menggunakan port yang salah. Mungkin perlu diperiksa lagi, terkadang perangkat USB COM dipasang pada nomor port yang aneh.

  • Hubungkan TX ke RX (dan lepaskan dari AVR jika memungkinkan) kemudian buka terminal pada port COM, Anda akan melihat karakter bergema jika Anda mengetiknya. Jika tidak, ada sesuatu yang salah pada chip, bisa jadi chip komunikasi (saya pikir Arduino 2560 menggunakan AVR sekunder, bukan FTDI untuk beberapa alasan, sehingga bisa rusak, baik perangkat lunak atau perangkat kerasnya)

  1. ATmega* bootloader
  • AVR tidak mengeksekusi bootloader untuk beberapa alasan. Jika programmer tidak mereset mikro sebelum mencoba menghubungkan, ini mungkin alasannya. Cobalah untuk mereset AVR (tekan dan lepaskan tombol) saat programmer mencoba untuk terhubung. Kadang-kadang perangkat lunak yang berjalan dalam loop yang ketat akan mencegah bootloader terhubung.

  • Kecuali itu, sekering mungkin telah kacau atau kode terhapus. Anda perlu melakukan reflash bootloader dan sekring yang tepat, sekali lagi, lihat halaman info yang sesuai untuk perangkat Anda.

  1. Hanya untuk Arduino Mega 2560: Perangkat lunak ATmega8U/16U
  • Mungkin tidak berfungsi dan perlu diprogram ulang. Lihat Bagian Pemrograman pada halaman info, Anda akan memerlukan firmware dan perangkat lunak DFU (pembaruan firmware perangkat) yang kompatibel dengan Atmel di komputer Anda untuk melakukan reflash target.
  1. Kerusakan perangkat keras pada papan, AVR, atau chip FTDI
  • Anda akan rusak; perlu chip baru.

Periksa [posting forum] ini (http://forum.arduino.cc/index.php?topic=83079.0) untuk beberapa ide lagi.

Komentar (1)

Saya mendapat kesalahan ini karena saya tidak menentukan programmer yang benar di baris perintah avrdude. Anda harus menentukan "-c arduino" jika Anda menggunakan papan Arduino.

Contoh perintah ini membaca status hfuse:

avrdude -c arduino -P /dev/ttyACM0 -p atmega328p -U hfuse:r:-:h
Komentar (0)

Ini bukanlah solusi yang benar-benar memperbaiki, tetapi mungkin dapat membantu orang lain. Tidak seperti yang dikatakan Nick untuk saya, hal itu disebabkan oleh kode dalam program saya. Saya memiliki model mega ADK. Masalahnya terkait dengan pernyataan sakelar untuk memproses dan mem-parsing byte[] yang dikembalikan dari koneksi usb ke Android. Ini sangat aneh karena akan dikompilasi dengan sempurna setiap saat tetapi akan gagal seperti yang dinyatakan OP. Saya mengomentarinya dan itu bekerja dengan baik.

Komentar (0)