Цитата(-=A.N.G.E.R=- @ Jan 10 2007, 08:16)

На 100% согласен, только когда приходится держать все названия регистров в голове, отвлекаешься от алгоритма и можно ненароком потерять ту мысль, которая наконец-то осенила ум. Без знания даташитов никуда, однако, приятно, когда за тебя софт помнит все названия (особенно правильность написания) - мелочь, а какая приятная!
#include <ioavr.h>
Project->Compile
в дереве проекта под файлом появляется список включенных файлов. Там будет ioavr.h и файл с описанием регистров конкретного процессора (например iom8.h). Вот последний и открываем, в нем и смотрим названия регистров/битов. Ведь компилятор свои знания о названиях регистров/битов берет оттуда.
Цитата(-=A.N.G.E.R=- @ Jan 10 2007, 08:16)

Но более всего тяжело упомнить в каком заголовочном файле прописана та или иная нужная тебе функция или макрос - вот в чем суть моей проблемы, я думаю, со мной согласятся те, кто с начинает осваивать IAR
хм. Я в 90% случаев использую три: <ioavr.h> - описание sfr и <inavr.h> - функции __enable_interrupt(), __disable_interrupt() и т.п., <stdint.h> - платформеннонезависимые типы данных. Если вдруг мне понадобилась библиотечная функция - поиск файла содержащего строку в каталоге \IAR\AVR\INC или google->имя функции. Три раза поискал, на четвертый помню что putchar() живет в stdio.h Все остальные заголовочные файлы мои, завязанные на проект, о них компилятор (оболочка) в любом случае не будет знать ничего дополнительного каким бы умным он не был.