Не забудьте проверить, является ли Ваша версия документации последней на данный момент. Внимательно его изучите. Если обнаружите разночтения (такое было, например, в прошлогодней документации на ATmega103/603) или что-то будет непонятно, обращайтесь к нам.
Не забудьте подать питание на контроллер, поставьте блокировочный кондесатор (керамика, 0.1 мкФ ), подключите по обыкновенной схеме кварц и кондесаторы (мы использовали 22 .. 33 пФ) или подайте сигнал с внешнего генератора.
Если Вы пользуетесь "PonyProg'ом" Клаудио Ланкорелли, получите последнюю версию ПО. Не забудьте правильно проинициализировать указатель стека у тех контроллеров, где стек расположен в ОЗУ (все, кроме AT90S1200 и ATtiny1x). На вершину стека указывает содержимое 2-х портов ввода-вывода с адресами $3D и $3E (символьные имена SPL и SPH). В самом общем случае туда надо записать адрес последней ячейки внутреннего ОЗУ:
LDI R16,high(ramend)
OUT SPH,R16
LDI R16,low(ramend)
OUT SPL,R16 ; НАЧАЛО СТЕКА
Если Вы используете в работе UART, то выводы RXD и TXD будут сконфигурированы (как вход и выход соответственно) независимо от состояния разрядов порта DDRD. Если Вы используете в работе SPI, то выводы MISO, MOSI, SCK и SS' будут сконфигурированы как входы и выходы в зависимости от выбранного режима работы. Частично - автоматически, частично - установкой соответствующих разрядов порта DDRB.