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

 
 
> Proteus + ATmega128 + UART1 из AVRLib, непонятки...
Tigrik
сообщение Feb 20 2007, 23:28
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 77
Регистрация: 18-07-05
Из: Питер
Пользователь №: 6 885



Доброго времени суток, уважаемые...
Есть несколько вопросов, просветите, пожалуйста. Похоже стою на асфальте в лыжах...

Связка Протеус + Атмега + AVRLib. Проблема с UART1.

Скажу честно, воспользовался библиотечкой ARVLib, очень удобной, нужно заметить.
Есть в ней функции инициализации UART:

Код
void uart0Init(void)
{
    // initialize the buffers
    uart0InitBuffers();
    // initialize user receive handlers
    UartRxFunc[0] = 0;
    // set default baud rate
    uartSetBaudRate(0, UART0_DEFAULT_BAUD_RATE);
    // enable RxD/TxD and interrupts
    outb(UCSR0B, BV(RXCIE)|BV(TXCIE)|BV(RXEN)|BV(TXEN));
    // initialize states
    uartReadyTx[0] = TRUE;
    uartBufferedTx[0] = FALSE;
    // clear overflow count
    uartRxOverflow[0] = 0;
    // enable interrupts
    sei();
}

void uart1Init(void)
{
    // initialize the buffers
    uart1InitBuffers();
    // initialize user receive handlers
    UartRxFunc[1] = 0;
    // set default baud rate
    uartSetBaudRate(1, UART1_DEFAULT_BAUD_RATE);
    // enable RxD/TxD and interrupts
    outb(UCSR1B, BV(RXCIE)|BV(TXCIE)|BV(RXEN)|BV(TXEN));
    // initialize states
    uartReadyTx[1] = TRUE;
    uartBufferedTx[1] = FALSE;
    // clear overflow count
    uartRxOverflow[1] = 0;
    // enable interrupts
    sei();
}


С UART0 все хорошо... инициализируется, работает.. никаких проблем вообще...
С UART1 все плохо smile.gif) Сразу после инициализации вываливается в обработчик UART1 Transmit Interrupt... и больше оттудова не выходит smile.gif

Стоит убрать при инициализации 1-го UART'а BV(TXCIE), т.е. разрешение прерывания на передачу, как все начинает работать...

Собственно вопрос, в чем глупость-то? Ведь 0-й работает и с вкюченным TX прерыванием... smile.gif
Или это особенность Протеуса?

Спасибо!
Go to the top of the page
 
+Quote Post



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

 


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


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