Цитата(Bosicc @ Feb 13 2007, 11:42)

Вот решил разобраться как работает компилятор и вообще весь аппарат создания прошивки под ARM.
Просмотрев примеры от производителя я обзавелся парочкой вопросов:
1. Как работает функция printf()? Где есть описание что нужно подключить к проекту что б это зароботало.
2. Для чего нужен файл Retarget.c ?
3. Где можно почитать что такое #pragma import(__use_no_semihosting_swi); ?
4. Что происходит когда в настройках проекта я ставлю галочку использования RTX Kernel ? ( Я попробовал использовать в RTOSе функцию printf, а при линковке возникает ошибка bcsp.axf: Error: L6915E: Library reports error: __use_no_semihosting_swi was requested, but _sys_open was referenced )
5. Где можно почитать описание как работают стандартные фунуции и как их инициализировать.
1. Чтобы заработало нужно подключить #include <stdio.h> как и везде
2. Retarget.c - нужен для переназначения стандартных функций С (для того чтобы подставить свою
функцию взамен библиотечной). Я в Retarget.c я переопределяю функции ввода/вывода UARTa, как раз для printf (Файл прилагаю). Кстати в примерах программ поставляемых с Keil есть примеры и с
использованием printf в том числе и вместе с RTL(Если нужно укажу путь).
Сообщение отредактировал mihask - Feb 13 2007, 17:13