Курсовая работа: Проектирование удаленного устройства индикации

unsignedcharx;

/* Установитьчастоту */

UBRROH = (unsigned char) (baudrate»8) ;

UBRROL = (unsigned char) baudrate;

/* Включитьприемник UART */ UCSRB = { (1 « RXCIE) | (1«RXEH) ) ;

У/Форматприемаданных: 8 битданных, 1 стоп-бит, проверканачетность UCSRC = (1«URSEL) I (3«UCSZO) | (1«UPM1) ;

/* Обнулитьбуфферприемника */ х = 0;

USARTJbcTail = х; USART_RxHead = х;

)

/* Процедурачтенияизприемника */ BYTEUSART_Receive( void }

{

unsignedchartmptail;

while( USART_RxHead == USART_RxTail ) /* Ждемпоступленияданных */ ;

tmptail = USART_RxTail + 1; /* Рассчетиндексабуффера */ USART_RxTail = tmptail;/* Сохранитьновелииндекс */

return USART_RxBuf[tmptail]; /* Вернутьданные */

>

unsigned char DatalnReceiveBuffer( void )

{

return ( USART_RxHead != USART_RxTail ); /* ВозвращаетОеслибуфферпуст */

}

/* Обработчикпрерыванияотприемника */ #pragma vector=USART_RXC_vect _interrupt void USART_RX_interrupt( void ) {

unsigned char data;

unsigned char tmphead;

/* Прочестьполученныеданные */

data = UDR;

/* Рассчетновогоиндекса */

tmphead = ( USARTJRxHead + 1 };

USART_RxHead = tmphead; /* СохранитьновыйиндексV

if ( tmphead == USART_RxTail ) (

К-во Просмотров: 428
Бесплатно скачать Курсовая работа: Проектирование удаленного устройства индикации