Я думаю, что наиболее вероятной проблемой является то, что ваш funduino не делает автоматического сброса, когда AVRDUDE загружает эскиз. Вторая проблема заключается в том, что ваш funduino не содержит правильного загрузчика.
Эти виды устранения проблем объясняются here on arduino.
Для загрузчика вы будете перенаправлены на этот arduino page.
Я детализирую правильное время сброса, потому что это не очень точно в некоторых местах. На платах arduino есть загрузчик, который упрощает загрузку эскиза. Это небольшая часть программы, которая может прослушивать последовательный (через USB) порт и загружает эскиз. Программное обеспечение загрузчика выполняется только при запуске и имеет тайм-аут около 1 с. В этот момент в среде IDE Arduino необходимо загрузить эскиз, иначе avrdude будет жаловаться на «неработающий программист».
Для большинства плат arduino, когда вы открываете последовательный порт, это вызывает автоматический сброс платы, поэтому загрузчик выполняется и может получать новый эскиз.
Вы можете видеть сообщения в своей среде разработки arduino. При нажатии на загрузку:
- IDE компилирует ваш код.
- IDE открытый последовательный порт, так что плата автоматически перезагружается и запускает загрузчик.
- IDE (с инструментом avrdude) отправляет эскиз на борт.
Если вы не доверяете автоматическому процессу, вы можете вручную нажать кнопку сброса в то время, когда IDE готова загрузить эскиз (сразу после компиляции).
Это не проблема * программирования *, попробуйте спросить на [arduino.stackexchange.com] (http://arduino.stackexchange.com) или [superuser.com] (http://superuser.com/). –