[an error occurred while processing this directive]
|
unsigned int USART_Receive( void ) но если бит RXB8 не сбросится то второе слово будет считано ошибочно..
{
unsigned char status, resh, resl;
/* Ожидание окончания приема данных */
while ( !(UCSRA & (1<
status = UCSRA;
resh = UCSRB;
resl = UDR;
/* Если ошибка, то возврат -1 */
if ( status & (1<
/* Выделение 9-го бита данных перед выходом */
resh = (resh >> 1) & 0x01;
return ((resh << 8) | resl);
}
Ответы
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание