Atmega8L-8PU - попытка прошить :(

Тема в разделе "Микроконтроллеры AVR", создана пользователем van1, 16 мар 2014.

  1. van1

    van1 Нуб

    Доброго дня!
    Попытался прошить сей контроллер, установленный на макетку, воспользовавшись Arduino Uno c Atmega328P и ArduinoIDE 1.0.5
    Перед этим долго курил форумы:
    1. http://mk90.blogspot.ru/2011/01/arduino-3-atmega8a-bootloader.html#comment-form

    2. Соответсвующие статьи о прошивке с помощью платы ардуино на arduino.cc

    3. и здесь
    http://wiki.amperka.ru/программирование:работа-с-attiny-через-arduino

    4. Еще всякое.

    Все останавливается на попытке прошить загрузчик. До заливки какого-либо скетча не дошло, т.е. atmega328 не выдергивал. Ресет atmega8 соединен с пин10, как написано. (а вообще-то.. если честно, как правильно обращаться с ресетом - не понял, пишут очень много - выдернуть-вставить руками, прокинуть через 10ком на *5в и проч. - пробовал все это в разных комбинациях)

    Подключение - как в ссылках
    (http://flank1er.blogspot.ru/2014/03/avr-atmega8-arduino-ide-c-avrdude.html и другие)

    Сначала пробовал просто, не мудрствуя, воспользоваться пунктом Arduino NG or older on /w Atmega8

    Потом пробовал залить те файлы с бутлоадером и boards.txt, которые рекомендованы по первой ссылке.

    Потом менял туда и обратно avrdude с родного на тот, который рекомендован по первой ссылке.

    Потом вернул исходный avrdude и добавил бутлоадер и кусочек в boards.txt вот отсюда

    http://www.hackmeister.dk/2011/01/new-bootloader-file-for-atmega8l/

    (как понял, отличается от NG только частотой кварца)

    Пишет:

    avrdude: Device signature = 0x000000
    Yikes! Invalid device signature.
    Double check connections and try again, or use -F to override
    this check.

    (было в какой-то момент
    avrdude: stk500_getsync(): not in sync: resp=0x00
    но в этом случае, скорее всего ресет я неправильно подключил)


    Так понимаю, что причины могут быть разными. Но, честно говоря, уже готов сдаться - что делать не знаю. Все пишут, что справились с проблемой. Я не знаю, в чем дело.
    Может, кто-то что-то посоветует? Заранее спасибо.
     
    Последнее редактирование: 17 мар 2014
  2. Airbus

    Airbus Радиохулиган Модератор

    "Наш" форум курили?Вот здесь http://tinyurl.com/omp6xjs Как я понимаю Вы пытались залить в Мегу 328 "Лодыря"? Вот здесь http://bit.ly/1qMiUrw я всё подробно описал.
     
    Последнее редактирование: 17 мар 2014
  3. van1

    van1 Нуб

    Не совсем тот случай. Я пытался прошить загрузчик в Atmega8L c помощью UNO . На UNO контроллер свой стоит, прошиваемая 8L - на макетке. Подключение - в варианте без внешнего кварца. Сейчас думаю - может быть, в этом дело? Пробовал фьюзы менять на те, что по идее для кварца 8 МГц (но самого кварца нет) - не помогло.
     
  4. van1

    van1 Нуб

    Да, таки с кварцем прошился. Но скетчи все равно не загрузить. avrdude: not in sync
     
  5. Airbus

    Airbus Радиохулиган Модератор

    Зачем так сложно?Можно ведь так http://tinyurl.com/og4c92p Правда внешний кварц всё таки понадобиться.А потом установить "дефолтные фьюзы" АТМега8 High-D9 Low-E1(зачем только?)
     
  6. Megakoteyka

    Megakoteyka Оракул Модератор

    Неудивительно.
    Если кварца нет, то нужно ставить фьюзы на тактирование от внутреннего осциллятора.
     
  7. Airbus

    Airbus Радиохулиган Модератор

    Вы какую плату выбираете? Надо Arduino NG or older w ATMega8 (не УНО!)Если у Вас Мега-8 Вот здесь я уже всё писал http://bit.ly/1qMiUrw
     
    Последнее редактирование: 17 мар 2014
  8. Airbus

    Airbus Радиохулиган Модератор

    Кстати можно и без кварца есть такая "балалайка" http://zelectro.com.ua/2_digital_pins и работает нормально но при использовании USART не советую будет погрешность в частоте от температуры и вместо букв пойдут кракозяблы
     
  9. van1

    van1 Нуб

    Я выбирал плату, которая у меня появлялась при загрузке файлов отсюда:
    http://www.hackmeister.dk/2011/01/new-bootloader-file-for-atmega8l/
    Потом правил фьюзы (не помогло) и вешал кварц 6 МГц, т.к., насколько я понял, поначалу я прошил фьюзы неправильные, выбрав в первый раз как раз из Arduino NG or older w ATMega8, т.к. там они для внешнего кварца 16 мгц, а подключил я без кварца и ATMega8L (частота 8 МГц, и такого пункта вообще нет в меню Плата) а не ATMega8. После чего таки прошил загрузчик, по крайней мере avrdude об этом оповестил. Потом снова правил фьюзы в боардс и перепрошивал, т.к. они были взяты для загрузчика размером 256, а у меня по факту был 512. И все равно скетч не залить. Честно говоря, уже хочется это дело закончить наиболее простым способом. Я слегка в ступоре.
    На счет дефолтных фьюзов. Откуда такие значения?
    В боардс видим это:
    atmega8.name=Arduino NG or older w/ ATmega8

    atmega8.upload.protocol=arduino
    atmega8.upload.maximum_size=7168
    atmega8.upload.speed=19200

    atmega8.bootloader.low_fuses=0xdf
    atmega8.bootloader.high_fuses=0xca
    atmega8.bootloader.path=atmega8
    atmega8.bootloader.file=ATmegaBOOT-prod-firmware-2009-11-07.hex
    atmega8.bootloader.unlock_bits=0x3F
    atmega8.bootloader.lock_bits=0x0F

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

    И это для 16 мгц кварца. Их-то я и прошил поначалу.
     
    Последнее редактирование: 17 мар 2014
  10. van1

    van1 Нуб

  11. Airbus

    Airbus Радиохулиган Модератор

    Дефолтные-значит заводские те с которыми микросхема продаётся в Магазине High-D9 Low-E1 значит микросхема настроена на работу с внутренним генератором 8Мгц.(Откуда такие значения?Гугл Вам в помощь)В нашем случае внешний кварц 16Мгц и кое какие другие не принципиальные изменения.Локбиты трогать не надо в нашем случае ни на что не влияют.Рад что Вы разобрались.Скетчи работают?
     
  12. van1

    van1 Нуб

    Да, залил blink, диодик мигает.

    Фьюзы сейчас такие:
    0xe4
    0xca
     
  13. lashine

    lashine Нуб

    У меня получилось прошить по этому видео через arduino pro mini