Полная версия этой страницы:
Использование printf() в IAR
vetbaston
Mar 1 2007, 10:01
Помогите разобраться с использованием этой функции. Если я правильно понял, то эта функция выполняет преобразование данных из одного формата в другой удобный для пользователя, в зависимости от заданных параметров. Не понятно где находится результат преобразования после выполнения этой функции?
jorikdima
Mar 1 2007, 11:03
в последовательном порте. в том для которого написана функция putchar(). Я сам то не очень в курсе, но помоему это так. Пусть поправят гуру.
Функция printf вызывает функцию __write. Читайте Compiler Reference:
Цитата
To implement low-level functionality of the stdin and stdout streams, you must write the functions __read and __write, respectively. You can find template source code for these functions in the arm/src directory.
vetbaston
Mar 1 2007, 12:12
Почемуто в примере "VirtualCom" от IAR я описания функции __write
не нахожу, хотя printf() там используется
printf("> %s\n",Buffer);
, может плохо ищу?
rezident
Mar 1 2007, 13:02
Не знаю как в IAR для ARM, а в IAR для MSP430 printf использует putchar.
Сергей Борщ
Mar 1 2007, 13:05
Цитата(rezident @ Mar 1 2007, 12:02)

Не знаю как в IAR для ARM, а в IAR для MSP430 printf использует putchar.
Если не изменяет память, то библиотечная __write вызывает putchar(). Т.е. подменять можно либо одну, либо вторую. А библиотечная putchar() не делает ничего, но как-то позволяет выводить в окно c-spy.
Мусатов Константин
Mar 1 2007, 17:43
printf, как положено, выдает информацию в стандартный поток.
Если надо результат преобразования получить на руки, то использьзуй sprintf
vetbaston
Mar 2 2007, 10:36
Спасибо.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.