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

 
 
> Помогите настроить
MixEr
сообщение Feb 16 2007, 15:29
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 7-03-06
Из: Самара
Пользователь №: 15 040



Проблема в прнцепе простая:
Использую в LPC2124 UART0.
Проинициализировал его, настроил на использование прерываний.
Написал функции приема и передачи, запускающиеся из обработчика прерываний.
Так вот передача работает нормально, передается нужная посылка, состоящая из нескольких байт.
А при приеме возникли проблемы. Прерывание по приему байта не генерится. Причем в том, что данные приходят на RxD сомнений нет.
Может быть кто подскажет как правильно проинициализировать UART для работы и на прием и на передачу.

TUART::TUART()
{
PINSEL0 |= 0x05; //выбираем альтернативную функцию
U0FCR = 0x07; //активируем FIFO буфер для приемника и передатчика и очищаем их
U0LCR = 0x83; //8 бит без контроля четности 1 стоп-бит
U0DLL = BAUDRATEDIVISOR & 0x00ffж //записываем младший байт делителя
U0DLM = (BAUDRATEDIVISOR >> 8) & 0x00ff; //записываем старший байт делителя
U0LCR = 0x03;
U0IER = 0x03; // Rx and Tx interrupt
VICIntSelect &= ~VIC_UART0_bit; // IRQ on UART0.
VICVectAddr5 = (unsigned int)&UART0isr;
VICVectCntl5 = 0x20|isrUART0; // Enable vector interrupt for UART0.
VICIntEnable = VIC_UART0_bit; // Enable UART 0 interrupt.
U0LCR_bit.DLAB = 0;
}


--------------------
Бесплатный файлообменник с выгодой для тебя...
http://depositfiles.com/signup.php?ref=ankudin-off
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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