С atmega16 на atmega16A я вроде тоже перешёл без проблемм. А вот с заменой atmega8 на atmega8A вышла заминка (извините за тафтологию
). Прошивку залил ту же самую, и устройство стало постоянно сбрасываться. Оказалось (после долгих поисков и читания документации), что у "А" другие требования по записи в конфигурационные биты сторожевого таймера (Watchdog Timer). И вместо того, как задумано было в программе - сброс раз в 2 сек. если таймер не обнулять, он устанавливался на минимальный интервал - 16 мс. А в программе обнуление таймера задумано было реже - вот и сбрасывался контроллер постоянно. Подробно как настроить Watchdog на стр. 42 pdf-ки Mega8A.