Цитата(aspID @ May 22 2012, 19:11)

Предлагаете сделать дополнительный .h ?
Тоже вариант: его можно менять в зависимости от надобности и включить в USART.h - будет как конфиг проекта.
Цитата(aspID @ May 22 2012, 19:11)

Здесь, к сожалению, не понял, что имели в виду. Кроме #pragma once еще дополнять конструкцию ifndef-define?
Просто чаще встречается такая конструкция(хотя кому-то может и наоборот):
Код
#ifndef usart_tx_rx_h__
#define usart_tx_rx_h__
#endif
Цитата(aspID @ May 22 2012, 19:11)

Или я чего-то неправильно понял
Не...это я что-то неправильно понял.
Цитата
USART_BUF_SIZE объявлен через директиву #define в main.c и используется в USART.h - вызывает ошибку.
А точно ошибку, а не warning? У меня откомпилировалось.
P.S. но как Си-проект, а вы хотите Си++?