Кстати, есть ещё вопросы к уважаемым участникам форума. В uVision для ARM можно устанавливать три вида компилятора. RealViwe, Keil, GNU. Про GNU слышал только отрицательнее отзывы (в основном по размеру кода и быстродействию, на некоторых сайтах были описаны почти 10 кратное преимущества вышеописанных компиляторов по сравнению с GNU). Хотя я понимаю, что это сильно зависит от версии компилятора и используемых библиотек (например, float оптимизированная), но неприятный осадок остался

. В скаченной среде в папке BIN , почему-то есть только компилятор RealView. Про него читал что это родной компилятор разработанный компанией ARM, которая вроде бы купила компанию Keil? (если я не прав поправьте, а то от перегруза информацией стек уже переполнился в мозгах

)И он вроде как считается наиболее качественным и типа является основным для среды uVision for ARM. Однако на одном форуме прочитал, что кто-то компилировал одну и туже программу в Keil и RealViwe и код в кеил пулучился 400 байт, а в RealViwe 1K. Что наводит на смутные сомнения

. В книге про PHILIPS контроллеры, все примеры используется Keil компилятор.
Из сказанного выше сформулирую вопросы:
1. Где скачать компилятор keil. Конкретно CA.exe AA.exe LA.exe. Искал, не нашёл
2. Если преимущества у какого-нибудь из этих двух компиляторов.
3. Почему _tutmb _arm __task директивы не понимает компилятор RealViwe. Или есть другие способы обозначить подпрограмму как задачу, что бы компилятор не вставлял лишнее сохранение контекста, или обозначить функцию как tumb. Еслиже подобная настройка отпала за ненадобностью то обясните почему?
4. Как в RelaViwe сгенерировать .ELF file, чтобы вставить его в отладку в proteus. Если никак то может ли это сделать Keil компилятор?
Заранее выражаю свой глубочайший

ответившим. Если что-то не так не смейтесь. ARM-ы я изучаю около недели

.
Ну и на последок (извините за наглость). Если кто знает ссылки на русские-аккаунты по ARM. В частности интересует описание регистров Philips контроллеров. А то читаешь их убогий datashet (английский более мнение знаю, со словарем

) и думаешь толи лыжи не едут…

И ещё, пытаюсь разобраться с прерываниями. Есть куча регистров типа VICxxx но в даташите (долгих лет жизни его писателям

) пару скудных строк про эти регистры. Объясните VICIntEnable что включает? Разрешает прерывание каждой ноги порта A, что ли? Не мог бы кто-нибудь привести пример инит- файла с комментариями. Типа запрещаем прерывания, для этого такой регистр так, другой регистр сяк. Инициализируем порты. Инициализируем прерывания и т.д.