помогите с программирыванием atmega16

ВитГо

а там только OSD ? или еще есть какие нить датчики ?

kedrikov

Ну там можно много чего подцепить к ней.У меня пока будет индикация напряжения силового ака и видо ака,также прикрутил ЖПС от сгоревшей EASY OSD.

kedrikov

Подскажите,если в меге нет бутлоадера то прошить через FTDI я не смогу ?
Дело в том что осд работае все ок,но вот встроенными средствами прошивания в програме от ремзиба прошить не получается.Саму прошивку осдишки я лил через LPT+5 проводков

Я вот непойму,сначала прошиваем бутлоадер,потом саму прошивку сверху бутлоадера затирая его это как …

ВитГо

Про бутлоадер:

бутлоадер получает прошивку через один из интерфейсов (UART, SPI)

поэтому после заливки бутлоадера больше программатором микроконтроллер можно не прошивать !!!
обычно используется спец. программа для прошивки…
либо используется программа программатора (например тот же AvrProg от AVR910) в котором выбирается для прошивки уже не контроллер ATMEGA16, а boot. причем по идее при старте программы программатора он обычно сам определяет что в подключенном устройстве есть бутлоадер и предлагает залить через него

для заливки при помощи бутлоадера нужно еще посмотреть какое событие для загрузчика использовано, бывают:

  1. нажимаем сброс (включаем питание) и в течении 1-3-5 сек должны запустить программатор - в это время работает загрузчик и программу можно залить, потом запускается сама прошивка и уже прошить нельзя
  2. вешаем определенный вывод меги на ноль или наоборот на vcc - дальше будет работать загрузчик
  3. загрузчик активен все время (так я в miniCoder’e сделал) - нужно просто подключить программатор и он увидит boot для прошивки

Таким образом если вы загрузчик не прошивали - то загрузчика (бутлоадера) у вас нет, и следовательно через ftdi вы ничего не зальете, если конечно это не поддерживается самой прошивкой (встроенный бутлоадер)

что именно у вас предположить не могу - смотрите инструкции !!

лучше бы конечно залить загрузчик, но для того чтобы он работал нужно выставить правильно фюзы !!
BOOTRST - как раз отвечает за переход при сбросе в область загрузчика, и еще два фюза (BOOTSZ) указывают на размер загрузчика (он всегда в конце флеша)

если BOOTRST не установить - то даже прошитый загрузчик не стартует !!!

кстати если в меге16 используется порт С то нужно в фюзах отключить JTAG он по умолчанию включен и соответственно не все линии порта C доступны в обычном режиме, они используются под отладку (которую мы например не используем но и выводы использовать пока не отключим не сможем)

kedrikov

Все разобрался.Я оказывается бут затер.Сначала прошил бут потом сверху прошивку,поэтому софт ремзибовский не определял камень так как небыло команды от бута (это как я понимаю).
Заткр камень,прошил бул понипрогом,затем прошил прошивальщиком от ремзиби…

ВитГо

да именно так и нужно было 😃
после бута уже программатором напрямую ничего шить не нужно иначе затираем бут ! (ну если честно это тоже не всегда верно, но для общего правила лучше об исключениях не думать 😃))