реклама на сайте
подробности

 
 
> printf в IAR 5.5, увидеть выводимое printf с отладчиком JetLink
dkukushkin
сообщение May 14 2010, 07:20
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 14-04-10
Пользователь №: 56 643



Для удобства хочется видеть под отладчиком что печатается с помощью printf. Среда IAR 5.5, контроллер ARM7S, отладчик JetLink 5.

Нашел что вроде как нужно включить C-Spy в опциях проекта, Linker, вкладка Output и смотреть в IO Terminal. Но на этой вкладке у меня почему-то только 1 флаг и 1 текстовое поле: "Output file" и "Include debug information in output" соответственно. Никаких других элементов там нет. В IO Terminal пусто -- никакой информации не выводится вообще. Скачал полную версию -- то же самое.

Собственно, что делать? Как увидеть что выводится с помощью printf? Уже 2 дня бьюсь...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
prottoss
сообщение May 14 2010, 09:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(dkukushkin @ May 14 2010, 14:20) *
Для удобства хочется видеть под отладчиком что печатается с помощью printf. Среда IAR 5.5, контроллер ARM7S, отладчик JetLink 5.

Код
...
volatile char g_print_buffer[HOW_MACH_NEED_BYTES] = {0, };
volatile int idx = 0;
...
int putchar(int c)
{
    g_print_buffer[g_idx] = c;
    g_idx++;
    if(g_idx >= HOW_MACH_NEED_BYTES)
        g_idx = 0;        
}


--------------------
Go to the top of the page
 
+Quote Post
dkukushkin
сообщение May 14 2010, 09:24
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 14-04-10
Пользователь №: 56 643



Цитата(prottoss @ May 14 2010, 12:14) *
Код
...
volatile char g_print_buffer[HOW_MACH_NEED_BYTES] = {0, };
volatile int idx = 0;
...
int putchar(int c)
{
    g_print_buffer[g_idx] = c;
    g_idx++;
    if(g_idx >= HOW_MACH_NEED_BYTES)
        g_idx = 0;        
}


Это все так делают? Или существует человеческое решение видеть все на экране IO Terminal?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение May 14 2010, 10:23
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(dkukushkin @ May 14 2010, 12:24) *
Это все так делают? Или существует человеческое решение видеть все на экране IO Terminal?
Многие выводят в реальный терминал smile.gif
В 4х надо было в настройках линкера на вкладке output включить with runtime control modules и with io emulation modules. Под это отъедалась одна точка останова. Что в новых - понятия не имею. В доке должно быть написано.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 15:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01393 секунд с 7
ELECTRONIX ©2004-2016