www.open-tager.ru

открытый лазертаг форум
Текущее время: 25 ноя 2024, 08:15

Часовой пояс: UTC + 3 часа [ Летнее время ]


Реклама

Правила форума


В разделе запрещены - обсуждение оборудования не поддерживающего открытых протоколов, реклама и ссылки на готовые продукты лазертага, обсуждение политики производителей и самих производителей. Виден всем.



Начать новую тему Ответить на тему  [ Сообщений: 11 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 09:26 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Вопрос поднимался многократно, поэтому решил выложить мануал в отдельную ветку.
Прошу комменты пока не добавлять, пока не выложу полностью, дабы не нарушалась целостность изложения.
Что нам понадобиться?
В первую очередь нам нужен программатор.
Самый простой и доступный LPT программатор можно сделать самому по ниже приведенной схеме.
Изображение
Резисторы лучше поставить. Провод не должен быть длинным.
Выводы программатора подключаются к соответствующим выводам разъёма K1 ISP
MOSI к MOSI, MISO к MISO, RESET к RESET, SCK к SCK, GND к GND
То есть на схеме программатора "RESET" не на той ножке разъёма сидит - обратите внимание! А то один в один скопируете и подключите... :?

Изображение

Ножка VCC на K1 ISP должна остаться свободной.
На плату подается питание 5В, можно с того же компа, к которому LPT подключен.
Сначала все подключаем, затем комп включаем.

Не попутайте выводы, а то дымок можете увидеть (я видел :lol: ).
Да и комп лучше взять старый, какой-нибудь, чтобы не жалко, если что...
Пробуйте на свой страх и риск, за погоревшие порты я ответственности нести не собираюсь. ;)

Не сильно запугал, надеюсь? :)
У меня пока ничего в компе не погорело, хоть и умудрялся разъём не так вставлять - видел дым и атмегу спалил.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 09:41 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Будем считать, что программатор Вы спаяли, ничего не напутали.
С позволения iranklim выложу фото его программатора, уж очень мне он понравился (мой страшнее ядерной войны выглядит :lol: ).
Изображение

Теперь нам нужен соответствующий софт.
Выбор тут есть, но я пользовался только PonyProg2000, потому о нем и буду вести речь.
Скачиваем с официального сайта и устанавливаем.
Прямая ссылка на последнюю версию программы.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 10:18 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
При выключенном компьютере подключаем наш программатор к LPT порту и к плате "Аскета".
Вставляйте разъём правильно!
Иначе дым и оплавленные провода Вам гарантированны (проверено на собственном опыте :) )!
К сожалений "защиты от дурака" нет и действуем внимательно!

После того, как все подключили включаем комп и запускаем программу.
Первым делом необходимо указать программе, с каким программатором ей придется работать.
Находим в главном меню пункт Setup и выбираем в выпадающем подменю пункт InterfaceSetup
Изображение

Теперь укажем в открывшемся окошечке в выпадающем списке наш программатор - AVR ISP I/O
Предварительно нужно нажать на "радиокнопку" Parallel

Изображение


После того, как мы указали PonyProg используемый программатор, проверим, а видит ли она его - жмем кнопку Probe
Если все в порядке, увидим сообщение - TestOK
Изображение

Теперь надо сделать калибровку.
В чем смысл калибровки для меня тайна великая есть, но надо, так надо...
Опять жмем на вкладку Setup, затем на Calibration
Изображение

В всплывающем окне жмем Yes
Изображение

Калибровка завершена
Изображение

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 11:57 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Далее надо указать, какой микроконтроллер мы собрались прошивать.
На панели инструментов есть два выпадающих списка.
В первом надо выбрать AVR micro, во втором - Atmega32.

Теперь у нас все готово, чтобы приступить непосредственно к прошивке.
Прошивка представляет из себя файл с расширением .hex

Давайте откроем файл прошивки (или бутоадера) - в пункте меню File нажимаем вкладку Open Program (FLASH) file

Изображение


В проводнике находим и выбираем файл прошивки (бутлоадера).

Изображение



После открытия файла программа демонстрирует нам его содержимое в шестнадцатеричном и текстовом форматах

Изображение

Левый столбик из красных цифр - это адреса ячеек памяти, справа - их содержимое.
В нижней строку риводится CRC файла.
CRC поможет нам легко оценить, не пострадали ли данные при считывании или записи прошивки.


Прежде чем записать новые данные в контроллер необходимо удалить старые.
В пункте меню Command нажимаем вкладку Erase
Изображение

Теперь память программ контроллера чиста и готова к приему новых данных.
Изображение

Давайте запишем нашу прошивку (бутлоадер) в контроллер.
В пункте меню Command нажимаем вкладку Write Programm (FLASH)
Изображение

Процесс пошел
Изображение

Данные записаны
Изображение

На всякий случай проверим, а правильно ли все записалось?
В пункте меню Command нажимаем вкладку Verify Programm (FLASH)
Изображение

Команда Verify сравнит открытый файл с данными, записанными в контроллер, и если данные не отличаются, то выдаст сообщение Verify successful
Изображение

Если данные повреждены, появится сообщение Verify Failed
Изображение

Даже если Вы с первой попытки увидели сообщение Verify Failed - не спешите снова перезаписывать данные.
Программатор весьма капризен, и результат его работы зависит от фазы луны, погоды на Марсе и ещё Бог знает от каких факторов.
Вполне может быть, что это только ошибка чтения, а сами данные записаны нормально.
Сделайте проверку ещё разок, а уж если после нескольких попыток будет один и тот же отрицательный результат - ничего не поделаешь, придется все стереть и записать по новой.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 12:02 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
в этот раз обойдусь без комментариев
http://dvrobot.ru/shop/i356.Programmator_AVR-_Atmel.htm


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 12:07 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
mail_robot писал(а):
в этот раз обойдусь без комментариев
http://dvrobot.ru/shop/i356.Programmator_AVR-_Atmel.htm

Хорошая вещь, кто спорит?
Набросайте мануальчик, как этим прошить Atmega32 и можете выложить тут же.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 12:21 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 15 окт 2012, 12:24
Сообщений: 1246
чего там набрасывать то) одну сторону в комп, вторую к плате. Запускаем прогу в которой 2 кнопки - открыть прошивку/залить прошивку
для ОСОБО одаренных внизу есть кнопка - документация :lol: :lol:


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 12:41 
Не в сети
Местный

Зарегистрирован: 21 фев 2013, 19:18
Сообщений: 417
Откуда: Украина
Собрал программатор AVRusb500 by Petka, прошиваю через USB.
Прошиваю версию 3.0 из AVR Studio. Обращаю внимание, что фьюзы в разных программах могут отличаться, ниже выложены именно для AVR Studio. Заливка прошивки производится из вкладки Program. С JTAGEN снимается галочка если у вас версия 3.1 или на схеме убран разъем JTAG.
Заголовок: LTAscetik

Pingvin писал(а):
Если ИСПОЛЬЗУЕМ БУТЛОАДЕР фьюзы такие (ну и сам бутлоадер не забываем залить)

Вложение:
fuses_to_bootloader.png
fuses_to_bootloader.png [ 22.76 KiB | Просмотров: 14440 ]

Заголовок: LTAscetik

Про бутлоадер описано тут http://www.open-tag.ru/forum/viewtopic.php?f=5&t=1565&p=21574&hilit=%D0%B1%D1%83%D1%82%D0%BB%D0%BE%D0%B0%D0%B4%D0%B5%D1%80#p21574
Вложение:
программатор.zip [325.12 KiB]
Скачиваний: 524

Вложение:
программатор прошиви.zip [70.62 KiB]
Скачиваний: 522


Последний раз редактировалось Sabbah 12 апр 2015, 02:49, всего редактировалось 7 раз(а).

Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 12:42 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Теперь самый ответственный момент!
Нужно сконфигурировать так называемые "фьюзы".
Фьюзами определяется, как будет тактироваться контроллер, какие интерфейсы будут использоваться, с какого адреса начнет контроллер считывать инструкции после сброса и т.д.
С фьюзами надо работать очень осторожно и внимательно, иначе контроллер может стать "аутистом" и до него потом ни чем не "достучишся"... :(
Или залочите прошивку, и больше её не поменяешь потом.

Для начала считаем фьюзы с контроллера.
В пункте меню Command нажимаем вкладку Security and Configuration Bits
Изображение

Откроется вот такое окошко
Изображение

Прежде чем приступить к каким-либо манипуляциям с битами, сначала нужно считать их значение из контроллера
Жмем кнопку Read
Фьюзы в самой верхней строке (которые содержат в себе Lock) - вообще не трогаем!
Хрен знает почему, но когда считываю фьюзы с зеленой платки (версия 3), то они у меня все отключены, а если с синей (версия 3.1) - то все установлены. :?
Не знаю, почему так!
Короче их не касаемся!

Теперь, для зелёной платы (версия 3) фьюзы выглядят, как на выше приведенном рисунке.
Код:
OCDEN — fuse разрешает работу схемы внутреннего отладчика (On Chip Debug ENable).

Выставляем этот бит - может дебажть придется, да и прошивку не считать из контроллера без него.

Код:
JTAGEN — fuse бит разрешает работу интерфейса программирования-отладки JTAG. По сравнению с SPI-интерфейсом, JTAG обладает расширенными возможностями, но при  его использовании потребляемый МК ток возрастает.

На зеленой плате JTAG используется, поэтому для неё тот фьюз выставляем.
На синей JTAG не используется - для неё отключаем.

Код:
CKOUT — fuse бит, разрешающий вывод тактовой частоты на один из выводов МК (для тактирования других устройств).

Нам ничего внешнего тактировать не надо, отрубаем.

Код:
EESAVE — fuse бит, после установки которого при стирании памяти МК содержимое EEPROM данных будет сохраняться нетронутым, т. е. не будет стерто.

Пусть eeprom тоже очищается, сбрасываем этот фьюз.

Код:
Группа fuse битов BOOTSZ — два fuse бита, определяющие размер области памяти программ, выделяемой для загрузчика (Boot Loader). Комбинация этих битов, в частности, определяет точку начала исполнения программы после сброса, если установлен бит BOOTRST.


Если хотим пользоваться бутлоадером, то выставляем все три этих фьюза, если нет - сбрасываем BOOTRST (в таком случае состояние двух остальных - по хрен).

Код:
Группа fuse битов BODLEVEL. Может быть либо один такой бит, либо несколько, тогда они нумеруются, начиная с нуля. Значение этих fuse битов определяет порог срабатывания схемы BOD — детектора уровня питающего напряжения, при снижении напряжения питания ниже этого уровня произойдет "сброс" МК.

BODEN — fuse бит, включающий схему аппаратного детектора недопустимого уровня
питающего напряжения, т.е. схему BOD.


отрубаем эту хрень - сбрасываем все эти фьюзы.

Код:
SUT1 и SUT0 — fuse биты, управляющие режимом запуска тактовых генераторов МК. Связаны с нижеописываемыми битами, определяющими тип и частоту тактового генератора, причем связь весьма хитрая и запутанная. При ошибочной их установки возможны ситуации неустойчивого запуска генератора или неодногратного сброса МК в процессе подачи на него питания.
CKOPT — бит, определяющий режим работы встроенного генератора тактовой частоты для работы с кварцевыми резонаторами. Реально изменяет коэффициент усиления встроенного инвертора в схеме генератора и значит выходное напряжение на ножке XTAL2.  Ошибочная установка может приводить к неустойчивому запуску кварцевого генератора, вплоть до возбуждения его не на той гармонике, что надо (из-за этого бита кварц запускался или только при питании МК напряжением не выше 3,6В, или только после прикосновения к выводу XTAL1 пинцетом)

Группа битов CKSEL0…CKSEL3 — fuse биты, комбинация которых определяет тип и частоту работающего тактового генератора. Всего возможно до 16 комбинаций, однако не все определены для всех типов МК. Ошибочная установка комбинации этих битов может сделать МК «мертвым» — он не будет работать в схеме без подачи тактового сигнала на ножку XTAL1.


Выставляем как на скриншоте - все CKSEL сброшены, SUT1 сброшен, SUT0 установлен.
Все!

Для синей платы (версия 3.1) при использовании бутлоадера фьюзы выглядят так
Изображение

Если не будете использовать бутлоадер, а заливаете сразу прошивку, то так

Изображение


Для особо одаренных ещё раз повторю - Фьюзы в самой верхней строке (которые содержат в себе Lock) - вообще не трогаем!
Как они у вас считались с контроллера, так их и оставьте! Не зависимо от того, как они выставлены на приведенных скриншотах!

Ну все, записываем фьюзы - жмем кнопку Write

Всё - дело сделано!

Выключаем комп, отключаем программатор.

Подаем на плату "Аскета" питание, и если Вы заливали прошивку, она должна заработать.
Если бутлоадер - читайте в следующих выпусках, как пользоваться бутлоадером.

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Чем и как "прошить" "Аскета?"
СообщениеДобавлено: 20 июн 2013, 18:50 
Не в сети
Аксакал форума
Аватар пользователя

Зарегистрирован: 12 авг 2011, 16:55
Сообщений: 7514
Откуда: Барнаул, Алтайский край (не путать с республикой Алтай) :-)
Как пользоваться бутлоадером?

Сначала идем на сайт конторы chip45 и скачиваем архив с бутоадерами

Качаем именно версию архива chip45boot2 Hexfiles V2.95!
Другие версии не уверенно запускали основную прошивку (контроллер просто "зависал") и проявляли другие глюки.

Кроме того, скачиваем программу для компьютера, позволяющую грузить прошивку через бутлоадер.

На память не скажу, какой версией я пользуюсь (комп в конторе), но думаю, можно использовать последнюю версию.
Софтина называется chip45boot2 GUI - установите её.

Распаковываем архив с бутлоадерами, находим среди них для Atmega32 - chip45boot2_atmega32_uart0_v2.95.hex
Именно этот hex и заливаем в контроллер.
Как зашить - описано выше.

Далее все просто.
Подключаем к "Аскету" модуль интерфейса RS232
Изображение
Подключаемся к COM-порту компьютера, запускаем софтину chip45boot2 GUI
Выбираем нужный Com-порт (тот, к которому плата подключена).

Что делать дальше - можно посмотреть на видео.

Только, все же, вроде сначала питание на плату подаем, а затем жмем кнопку "коннект" в софтине.
И с кнопки "старт апликейшин" иногда криво стартует, лучше все же выключить плату и включить снова.
Но... пробуйте! ;)

_________________
Ваше оружие становиться значительно эффективней, если его снять с предохранителя!


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 11 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB