mr_kot писал(а):Ziper писал(а):Что вы думаете, программатор, тот же Atmega8 в DIP и Atmega8 в TQFP-32, которые, хоть и немного, но всё же разные!!! Программатор, их воспринимает, как одно и тоже?
Просто, у разных программаторов, разная обработка сигнатур контроллеров!!!
Значит так, чтобы расставить все точки над і:
Тип корпуса DIP обозначается буквой P, TQFP - буквой A. На скриншоте есть такие буквы? Я лично не вижу.
Atmega8
A обозначается более новая модель контроллера (исправлены косяки с питанием, которые были в Atmega8), буквой L - модель с пониженным энергопотребление. Что обозначают буквы H и U я не знаю, надо смотреть даташит. Но в данный момент лично мне это не надо. А кому-то не помешало бы хотя бы бегло просмотреть, прежде чем начинать тут что-то доказывать.
Видимо вы не так поняли... Я имел ввиду, не то что каждый корпус имеет свою сигнатуру и каждый корпус должен быть в программаторе.
Я имел ввиду, то что, все различия по железу, у контроллера, имеют свои сигнатуры!!!
тестим:
Attiny85 DIP и SMD имеют, одинаковые сигнатуры 0x1e930b
Attiny13 DIP и SMD имеют, одинаковые сигнатуры 0x1e9007
Есть в наличии, лично проверил в дудке.
Корпуса разные, а сигнатуры одинаковые, так как железо у них, 100% идентичное.
Еслиб у них, было хоть малейшие изменения по железу, тогда и сигнатуры были разные.
То есть, сигнатуры присваиваются, не корпусу, а железу контроллера.

На скрине от программатора CodeVisionAVR, видно, что контроллеры Atmega8 и Atmega8L, это два разных контроллера в списке. Видимо у них разные сигнатуры, так как Atmega8
L, с пониженным энергопотреблением, с пониженной МАХ частотой кварца. По функционалу идентичны, но по потреблению тока и MAX частоты кварца, отличие, видимо разные сигнатуры у них, хоть и корпус одинаковый.
По сути, для программатора, разные сигнатуры контроллеров
= это разные контроллеры, пусть даже, с минимальным отличием по железу, но всё равно разные!!!
А уже как программатор будет обрабатывать сигнатуры контроллеров, брать во внимание, эти минимальные отличия железа, и что делать с ними, это уже дело того, кто писал эти самые программаторы.
По идее, желательно, обрабатывать их и информировать пользователя, обо всех подводных камнях).
Допустим я шью прошивку от Atmega8 в TQFP-32 в Atmega8 в DIP, программатор, должен как минимум, предупредить что сигнатуры контроллеров разные.... что у Atmega8 в TQFP-32 ADC имеет большею разрядность, предупредить, что могут быть траблы, если используется ADC...и спросить, шить всё равно или нет?
Программатор CodeVisionAVR, со скрина, так и делает. Если сигнатуры отличаются, он выдаёт сообщение об этом, и спрашивает, шить или нет.
Atmega8 в DIP и Atmega8 в TQFP-32 имеют отличия не только в корпусе, корпус не влияет на сигнатуры, они имеют отличия в железе, поэтому и сигнатуры у них разные. Программатор должен видеть эти различия и информировать об этом пользователя, при прошивке.
ЗЫ: Как то так наверное...а может и не так... на 100% не уверен, нет времени щас впрягаться, других дел хватает

.