Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: как с помощью stk500 отключить некоторые фьюзы
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Br.Misha
Привет!
Мне до завтрашнего вечера нужно нужно запрограммировать несколько Atmega16. Прикол в том, что нужно защитить МК от считывания прошивки, при таком условии: разрешить LPM и SPM области основной программы, разрешить только LPM для области бутлоадера(тоесть SPM запретить), запретить считывание прошивки с помощью любого программатора(последовательного, паралельного, высоковольтного). Программатор у меня есть только STK500 в котором работает только SPI-режим. Ну я запустил программатор в AVR Studio, загрузил прошивку, поставил лок биты на флеш, установил значения лок-битов для области основной программы и загрузочной области. Далее я отключил JTAG и SPI, но АВР студио вообще не захотела отключать SPI, пишет что нету связи с МК но когда я считываю фьюз-биты, то МК откликается и програма показывает, что SPIEN установлен. Я решил отключить через кодевижен но там вовсе бита SPIEN нету.
Помню, что когда то, когда программил ЛПТ программатором, в кодевижине был этот бит, я бы сделал и сейчас ЛПТ программатор но ЛПТ порта нету и магазин, в котором я могу купить конектор находится в 50 км от меня.
Ну тут я еще подумал, что если установлены лок-биты на флеш, то прошивку нельзя будет считать, я попорбовал через студию и считать получилось, но считаная не соответствует той, которая была в АТмегу16 загружена(я сравнивал по адресам, которые указываются в hex файле). Я так понял, прошивку считать никто не сможет, но возможно я ошибаюсь...
Короче говоря, я прошу помощи!

Спасибо!
Br.Misha
разви никто не знает как SPI отключить?
Сергей Борщ
Цитата(Br.Misha @ Sep 5 2010, 10:14) *
разви никто не знает как SPI отключить?
"Читайте доки, они - рулез!". При последовательном программировании фуз SPIEN недоступен, об этом написано в описании этого бита в даташите.
А все, что вы хотите получить достигается фузами LB1, LB2, BLBxx.

Цитата(Br.Misha @ Sep 4 2010, 23:18) *
но считаная не соответствует той, которая была в АТмегу16 загружена
А не эту ли цель вы преследовали, когда хотели защитить от чтения?
Br.Misha
просто я думал что если заблокировать флеш то программатор вообще не сможет ее считать, оказываеться что он считывает, но не флеш а какие то левые биты, этот вопрос решен.
Еще кое что интересует:
Я разработал устройсво и хочу сотрудничать с одним мастеркитовским магазином, они делают девайс а я продаю им запрограммированые микроконтроллеры. Проблема в том, что микроконтроллеры они будут мне давать, я их потом буду прошивать, лочить и отдавать им. А могут ли они дать мне какой то микроконтролер, с которого они потом смогут считать прошивку, даже когда я установлю лок-биты?
Сергей Борщ
Цитата(Br.Misha @ Sep 5 2010, 21:42) *
А могут ли они дать мне какой то микроконтролер, с которого они потом смогут считать прошивку, даже когда я установлю лок-биты?
"Даже если вы не параноик - это еще не значит, что Они за вами не следят" biggrin.gif Как вы думаете, фирма Атмел враг себе, чтобы выпускать такие кристаллы? А если кто-то смог разработать копию кристалла да еще и с закладкой - будет ли он мелочиться добыванием вашей програмы? Ходят слухи, что программу можно считать даже если вы купите контроллер сами. Но стоить такая операция будет многие тысячи зеленых денег. Стоит ли девчинка вые овчинка выделки?
Dimmix
вопрос даже не в том как прошить по SPI... а какие фузы должны быть включены для прошивки по SPI

Цитата(Br.Misha @ Sep 5 2010, 22:42) *
микроконтролер, с которого они потом смогут считать прошивку, даже когда я установлю лок-биты?


если заказать эмулятор контроллера на какой нить ПЛИС и сделать маркировку что это типа атмега то запрасто
Br.Misha
Люди, еще вопрос:
если мне нужно запрограммить к примеру 100 микроконтроллеров (АТмега32), каким способом это можно сделать?
_Ivan_33
существуют промышленные программаторы, которые позволяют программировать по несколько микроконтроллеров за раз...
Сергей Борщ
Цитата(Br.Misha @ Sep 10 2010, 21:05) *
запрограммить к примеру 100 микроконтроллеров (АТмега32), каким способом это можно сделать?
Ну, AvReal поддерживает функцию "программировать при нажатии внешней кнопки". Сделайте так, чтобы при подключении микросхемы замыкалась кнопка, 100 шт. запрограммируете сами за пару часов, на следующую 1000 наймете девочку, на следующие 10000 закажите прошивку прямо у Амела. Они даже напишут на корпусе "Слава Br.Misha, победителю драконов" smile.gif вместо "ATmega32"
ReAl
Каких пару часов? Час максимум.
Бум считать, что кварц 7.3728. Зашивка + верификация 128К в мегу128 при этом без проблем в 15 секунд укладывается. Т.е. мега32 будет ну секунд пять. Ещё пусть аж пятнадцать секунд на перетыкивание хвоста программатора с платы на плату и перекладывание плат с одного конца стола на другой. Итого три платы в минуту.
33 минуты на 100шт. Ещё 27 минут на чесание затылка, замену на столе коробок с платами, отвечание на телефон и джаббер. Итого час.
Сергей Борщ
Цитата(ReAl @ Sep 10 2010, 23:49) *
Ещё пусть аж пятнадцать секунд на перетыкивание хвоста программатора с платы на плату
Я тоже сначала час написал - потом исправил. У Br.Misha, судя по сообщению №4, контроллеры не впаяны, а на установку в панельку потребуется существенно больше времени.
Br.Misha
Упс, забыл написать:
У меня не будет готового устройства, мне нужно запрограммировать микроконтроллеры и отдать их на завод, а там они будут устанавливатся на устройства. Поэтому надо сделать маленькую платку, в которую я буду устанавливать микроконтроллер, при этом, нельзя гнуть ножки микроконтроллера, поэтому плата с обычной панелькой отпадает.
ReAl
Ну тогда нужна ZIF-панелька, обычная действительно не дело для большого количества втыков-вытыков, и с ногами возня (они же слегка разогнуты поначалу, просто так в панельку не воткнёшь), и риск погнуть, и панелька раздалбывается. Тут и двух часов может не хватить.
С ZIF будт тот же час.
С обычной панелькой - перед её впайкой выдернуть из неё все ноги, которые не нужны для программирования - будет гораздо легче вставлять-вынимать микросхему. Неплохо бы роликовоую ровнялку выводов. На производстве может быть такая.

p.s. или «нельзя гнуть» означает и «нельзя ровнять», они должны остаться слегка разведёнными в стороны?
Br.Misha
Цитата
p.s. или «нельзя гнуть» означает и «нельзя ровнять», они должны остаться слегка разведёнными в стороны?

да, их нельзя ровнять, иначе они не подойдут для автоматического монтажа.
Я вот думаю сделать на плате какие то пружинистые контаты. Потом прижать к ним атмегу и запрограммировать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.