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

 
 
> функция (макрос?) DEBUG, отправка сообщений в порт
toweroff
сообщение Sep 20 2015, 18:10
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Добрый вечер!

Хочется реализовать дебажную функцию, чтобы было что-то типа

DEBUG("Var rct=%d\n", rct);

в общем аналог printf

Все упирается в то, что fputc уже переопределен для других целей. Нужно как-то в этой DEBUG задействовать sprintf и отправлять это дело по дебажному USART

Подскажите, как? Или как вообще такие вещи делаются? Где-то встречал подобное некоторое время назад, да позабыл где, никак не найду sad.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
CrimsonPig
сообщение Sep 20 2015, 19:35
Сообщение #2


Местный
***

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



Цитата(toweroff @ Sep 20 2015, 19:10) *
Добрый вечер!

Хочется реализовать дебажную функцию, чтобы было что-то типа

DEBUG("Var rct=%d\n", rct);

в общем аналог printf
Подскажите, как? Или как вообще такие вещи делаются? Где-то встречал подобное некоторое время назад, да позабыл где, никак не найду sad.gif


Google: "variadic macros"
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 20 2015, 20:00
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (CrimsonPig @ Sep 20 2015, 22:35) *
Google: "variadic macros"

Это для другого - для обертки функций с переменным числом аргуменов в макросы. Тоже, конечно, удобно для отладочных макросов, например:
CODE
#define dprintf( debug_flags, args ... ) if( debug_flags & debug_config ){ xprintf( args ); }

но не то, что хотел Автор.



--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 16:51
Рейтинг@Mail.ru


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