IAR Embedded Workbench IDE, переопределение функций getchar и putchar |
|
Написал microsin
|
30.11.2007 |
Переопределение функций getchar и putchar важно для использования мощных возможностей ввода/вывода встроенных библиотек Си (например, функции printf). Это позволяет выводить на LCD-индикатор или в последовательный порт какие-то данные, что можно использовать для отладки или в работе программы.
Получить какие-то данные из первоисточника по этому вопросу можно, если открыть pdf-файл EWAVR_CompilerReference.pdf (вызывается из меню Help\AVR C/C++ Compiler Reference Guide), и начать читать раздел Part 1. Using the compiler\The CLIB runtime environment\Input and output.
Функции определены в inc\clib\stdio.h (или в inc\dlib\stdio.h) следующим стандартным образом:
int putchar(int);
int getchar(void);
Переопределение рассмотрим на примере функции putchar. Процесс по шагам:
1. Копируем файл src\lib\clib\putchar.c в корень вашего проекта.
2. Делаем необходимые изменения в putchar.c (тут должен быть вывод данных, привязанный к вашей имеющейся аппаратуре, например, это может быть LCD-индикатор GDM1602A, подключенный выбранным вами образом к микроконтроллеру).
3. Добавляем измененный файл putchar.c в проект (Project\Add Files...).
4. Добавляем строчку #include <stdio.h> в файл main.c (если именно там будем вызывать putchar).
5. Вставляем внужных местах вызовы printf.
6. Перекомпилируем проект.
|