Китайский Arduino UNO R3 с ATmega8A

Прикупил я случайно в Китае плату Arduino UNO для опытов.  Оказалось что это творение сумрачного гения почему-то вместо микроконтроллера ATmega328 построено на базе ATmega8A.  Обидно, но для моих экспериментов это не имеет никакого значения.  Вопрос был только в том, как заставить это работать.  Оказалось что очень просто:

Arduino UNO на ATmega8A

Arduino UNO на ATmega8A

В Linux драйвер последовательного порта обнаруживает сей девайс без каких-либо проблем по умолчанию.  В Windows все несколько сложнее: по умолчанию порт не видится в системе.  Для решения это проблемы необходимо пройти по ссылке http://wch-ic.com/download/list.asp?id=126, скачать и установить драйвер для микросхемы порта CH340.  После этого порт немедленно обнаружится и будет готов к работе.

Дальше самое интересное — необходимо заставить работать с микроконтроллером Arduino IDE.  Для этого нужно добавить описание этого чуда в файл boards.txt.  В Linux он обычно находится в каталоге /usr/share/arduino/hardware/arduino/, а в Windows его следует искать в папке C:\Program Files (x86)\Arduino\hardware\arduino.

Добавить к конец файла boards.txt нужно следующие строки:

opti8.name=Arduino Optiboot8
opti8.upload.protocol=arduino
opti8.upload.maximum_size=7680
opti8.upload.speed=115200

opti8.bootloader.low_fuses=0xbf
opti8.bootloader.high_fuses=0xcc
opti8.bootloader.path=optiboot
opti8.bootloader.file=optiboot_atmega8.hex
opti8.bootloader.unlock_bits=0x3F
opti8.bootloader.lock_bits=0x0F

opti8.build.mcu=atmega8
opti8.build.f_cpu=16000000L
opti8.build.core=arduino
opti8.build.variant=standard

После этого остается только выбрать в Arduino IDE плату с именем Arduino Optiboot8, и можно приступать к работе.

Теги: , .

17 комментариев : “Китайский Arduino UNO R3 с ATmega8A”

  1. avatar Олег:

    Спасибо! Помогло!!! ))))))

  2. avatar Коля:

    Огромное спасибо. Работает. драйвер установился. Китаец начал работать. 🙂

  3. avatar Александр:

    Спасибо тебе большое.
    Моя китайская плата заработала!!!
    Еще раз тебя благодарю:)

  4. avatar Григорий:

    Спасибо Вам огромное!!!

  5. avatar Kwent:

    Шел четвертый час заводки с толкача этого чудо, большое спасибо тебе, добрый человек)

  6. avatar Макс:

    все как надо сделал, выбрал плату, пишет ошибку компиляции file included from C:\Users\Maxim\Downloads\arduino-1.5.6-r2-windows (1)\arduino-1.5.6-r2\hardware\arduino\avr\cores\arduino\HardwareSerial.cpp:32:
    C:\Users\Maxim\Downloads\arduino-1.5.6-r2-windows (1)\arduino-1.5.6-r2\hardware\arduino\avr\cores\arduino\/HardwareSerial_private.h: In member function ‘void HardwareSerial::_rx_complete_irq()’:
    C:\Users\Maxim\Downloads\arduino-1.5.6-r2-windows (1)\arduino-1.5.6-r2\hardware\arduino\avr\cores\arduino\/HardwareSerial_private.h:98: error: ‘UPE’ was not declared in this scope

    This report would have more information with
    «Show verbose output during compilation»
    enabled in File > Preferences.

  7. avatar nekolyan:

    Спасибо, товарищ! Все заработало.

  8. avatar Арсений:

    Огромное спасибо! Всё заработало!

  9. avatar Сергей:

    Спасибо. заработало. правда у меня стоит все-таки ATmega328 и последнее действие не пришлось делать. Подскажите, пожалуйста, как его в DFU загнать?

  10. Брал тут Китайская платка Ардуино. В 1.5.6 среде выдает как тут уже и говорил Макс ‘UPE’ was not declared in this scope. Как лечить?

  11. вдогонку — а в 1.0.5 среде все нормально…

  12. avatar Михаил:

    Сделал все как написано, но выдавало ошибку как уже описывалось выше. Почитав комментарии решил попробовать перебрать версии Arduino. Изначально была установлена Arduino 1.0.5 r2, заменил на Arduino 1.0.4 и все заработало. Спасибо большое Автору за статью и всем кто писал комментарии!

Оставить комментарий