Как поставить фьюзы

Тема в разделе "Arduino & Shields", создана пользователем walkrunman, 21 ноя 2016.

  1. walkrunman

    walkrunman Нуб

    Arduino mega 2560
    Микроконтроллер ATmega2560

    Как и какие фьюзы нужно залить в мк, чтобы программировалось через программатор?
    Пытался воспользоваться arduino ide, чтобы залить blink через программатор, итог: снес бутлоадер. Не критично, потому что загружается функцией "загрузить загрузчик".
    В \Arduino\hardware\arduino\avr\boards есть какие-то строки, которые каким-то образом можно изменить, нажать на кнопку "загрузить загрузчик" а потом можно будет заливать блинк и другие проги.
    Как это сделать?
     
  2. Tomasina

    Tomasina Сушитель лампочек Модератор

    при заливке загрузчика через программатор нужные фьюзы установятся автоматически, ничего дополнительно делать не надо.
     
  3. rkit

    rkit Гуру

    Никакие фьюзы не нужны. Код, генерируемый ардуино иде, рассчитан на работу с загрузчиком.
     
  4. walkrunman

    walkrunman Нуб

    но не работает же
     
  5. Tomasina

    Tomasina Сушитель лампочек Модератор

    не работает что?
     
  6. walkrunman

    walkrunman Нуб

    Когда пытаюсь залить блинк или другую прогу - все заливается, но не работает.
    Сносится загрузчик, не горит 13 пин.

    Как мне сказали, дело в том, что фьюзы не те. И если их поменять каким-то образом и нажать "загрузить загрузчик", все будет работать.
    Я уж не знаю, насколько это правда. Но программатор вроде бы и загрузчик загружает, и кристал чистит. Наверное, дело не в нем.
     
  7. Tomasina

    Tomasina Сушитель лампочек Модератор

    когда нажимаешь "загрузить загрузчик", то автоматом проставляются нужные фьюзы и прошивается загрузчик. После этого скетчи загружаются корректно без программатора - через USB.
     
  8. walkrunman

    walkrunman Нуб

    а нужно загружать именно через программатор. Нужные фьюзы, видимо, не загружаются, раз уж ничего не работает.
     
  9. rkit

    rkit Гуру

     
  10. walkrunman

    walkrunman Нуб

    хорошо, как работать с программатором?
     
  11. Tomasina

    Tomasina Сушитель лампочек Модератор

    для загрузки скетча через программатор надо нажимать Shift + Загрузить, а не просто Загрузить.
     
  12. walkrunman

    walkrunman Нуб

    так и делал. Не работает.
     
  13. rkit

    rkit Гуру

    С голыми авр работают через atmel studio. Но это явно не ваш уровень программирования.
     
  14. walkrunman

    walkrunman Нуб

    О Боже, с си я знаком, с плюсами - тоже, с ассемблером - увы, нет. Буду осваивать.
    Да, я второй раз работаю с ардуино, и, извините, не я не понимаю, почему вы не можете ответить на простейшие вопросы, учитывая весь ваш опыт: как прогать через программатор. В конце концов, если, там кнопка есть "залить через программатор". Если он загружает загрузчик под ардуиновскую IDE, то откуда-то он берет загрузчик? Вероятно, его можно изменить.
    Arduino IDE вообще может загрузить тот же блинк через программатор?
    Может я плохо формулирую свои мысли?
     
  15. geher

    geher Гуру

    Во-первых, нужно выставить в IDE тип используемого программатора.
    Добавлю. Проверена работоспособность в качестве программаторов второй ардуины, прошитой как ArduinoISP и USBASP

    Во-вторых, подключить программатор через пины ISP.
    Дальше грузить загрузчик соответствующим пунктом меню.
    Возможно (в зависимости от программатора и особенностей его подключения), потребуется жать кнопку RESET на ардуине примерно в тот момент, когда оно начнет шить загрузчик (тыкается опытным путем, пока не сработает).
    После этого, к\если все было сделано правильно, а плата исправна, в теории, если вернуть в IDE все как было, скетчи должны грузиться обычным порядком.
     
    Последнее редактирование: 21 ноя 2016
  16. rkit

    rkit Гуру

    Берете корректный код, читаете даташит на чип, читаете man avrdude, запускаете с соответствующими вашему железу аргументами.

    На все остальные вопросы ответ один, попобуйте его всё же понять.
     
  17. geher

    geher Гуру

    Загрузчик он берет из недр подкаталогов IDE,
    В линуксовой версии это
    подкаталог развертывания IDE/hardware/arduino/avr/bootloaders
    В виндовой должно быть что-то похожее.

    Добавлю. Возможно, неправильно понял вопрос. Потому распишу немного подробнее.
    Вышенаписанное касается записи загрузчика в плату, когда тот поврежден или его надо заменить измененной версией.
    Когда программирование платы осуществляется штатным образом, через USB разъем платы, то загрузчик берется непосредственно с платы, и прошивка осуществляется во взаимодействии с загрузчиком, исполняющимся на плате. Для его запуска используется специальная процедура перезагрузки платы и скармливания ей правильных данных до того, как загрузчик решил передать управление прошитому скетчу.
    Можно. Там исходные коды вроде есть. Не уверен, что под все ардуины, но что-то точно есть. Можно изменить и собрать новый по инструкции. Только надо разобраться, какой загрузчик какой ардуине соответствует. Там не все очевидно. Например, для леонардо, микро и подобных это caterina, для всех поддерживаемых плат имеются текстовики с инструкцией по сборке. Для других ардуин тоже что-то подобное должно быть.
    Может. Надо только правильно указать среде используемый программатор.
     
    Последнее редактирование: 21 ноя 2016
  18. walkrunman

    walkrunman Нуб

    программатор USBasp. Примерно такой: http://d1gsvnjtkwr6dd.cloudfront.net/large/AC-PG-USBASP_01_LRG.jpg
    Драйвера установил, диспетчер устройств воспринимает.
    Пины поставил правильно - загрузчик же загружается, кристалл чистится. Ну, стало быть, и программатор работает, наверное... Ну да, скетчи грузятся через кабель после того, как я загрузчик загружаю, но хотелось бы через программатор.
    Ну, вот дело в том, что не загружается. В смысле, идет заливка, все загружается, но в итоге не работает.
     
  19. walkrunman

    walkrunman Нуб

    Попробовал AVR Studio 6 - не видит программатор. =(
     
  20. rkit

    rkit Гуру

    Она и не будет видеть не фирменный программатор. В ней пишете код, а с программатором работаете через avrdude.