[an error occurred while processing this directive]
У меня практически то же самое. Все работает.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Bill 07 ноября 2005 г. 17:51
В ответ на: И опять здраствуйте...=)тут возник небольшой вопрос по RS 232 - уже неделю немогу принять данные с PC на МК,а наоборот-легко!!!программа должна делать эхо PC-->МК-->PC но чтото ей недаёт!!! текст програмулины и подробности внутри!!!Заранее благодарен!!!(+) отправлено <font color=gray>Stas</font> 07 ноября 2005 г. 17:37


//
// ** InitUART -- the routine initiates the UART module
//
void InitUART(void)
{
UBRRL = UBRR_VALUE & 0xFF; // Set the Baud Rate register
UBRRH = UBRR_VALUE >> 8; //
UCSRB |= RXEN_BIT | TXEN_BIT; // Enable UART transiver
UCSRA |= RXC_BIT; // Reset pending interrupt request
UCSRB |= RXCIE_BIT; // Enable UART receiver interrupt
}
//
// ** ReceiveByte -- the function gets one byte from UART
//
char ReceiveByte(void)
{
while (!(IntFlags & UART_BIT)); // Wait for a data
IntFlags &= ~UART_BIT; // Reset rhe flag
return RxByte;
}

//
// ** TxByte -- the function sends one byte to UART
//
void TxByte(char _byte)
{
while (!(UCSRA & UDRE_BIT)); // Wait for the transmitter buffer is empty
UDR = _byte; // Transmit the data
}

//
// **** UART interrupt handlers ***
//
// UART reciever handler
//
#pragma vector = USART_RXC_vect
__interrupt void RX_Int(void)
{
RxByte = UDR; // Get the just received byte
IntFlags |= UART_BIT; // and set the flag
}



Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru