в протеусе собрал простую схемку с atmega16 + виртуальный терминал
синхронизация МК внешная - кварц на 8мГц
reset - через 10кОм на +5
далее, в бесплатной версии cvavr создаю простую программку которая через uart должна выводить строчку на терминал (стандартная ф-я библиотеки stdio - puts)
пока дело не касается работы с этой библиотекой все вроде работает, порт Б в цикле мигает, ошибок нет...
но как только разкомментируешь putchar('Q') - начинается затык...
код инициализации взят из хелпа cv
Код: Выделить всё
//Настройка параметров UART
/* quartz crystal frequency [Hz] */
#define xtal 8000000L
/* Baud rate */
#define baud 9600
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART0 Receiver: On
// USART0 Transmitter: On
// USART0 Mode: Asynchronous
// USART0 Baud Rate: 9600
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x86;
/* initialize the USART's baud rate */
UBRRH=(xtal/16/baud-1) >> 8;
UBRRL=(xtal/16/baud-1) & 0xFF;Код: Выделить всё
while (1)
{
PORTB=0;
for (i=0;i<60000;i++);
PORTB=0xff;
for (i=0;i<60000;i++);
putchar('A');
}


