ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
1 июля
61743
Павел В. (30.06.2006 22:38, просмотров: 4046)
Вопрос к "Сишникам" - насколько корректна такая конструкция? АтМега128. Означает ли команда "UDR1" чтение из приемного буфера, т.е. его очистку? Компилятор - IAR EWAVR. Есть такой кусочек: while (!(UCSR1A & (1<<RXC1))); // ждать приема первого символа UDR1; // очистить приемник TCCR1B=0x05; // запустить Timer1 Смысл в следующем: как только придет первый символ в посл. порт, запустить таймер1, он таймауты разные высчитывает. Сам первый байт не нужен, нужен только факт начала посылки. Вопрос - насколько корректна такая конструкция "UDR1" в плане стандартов языка Си? Просто я не хочу вводить блок, временную переменную, т.к. и так все прекрасно вычитывается: UDR1; 9100009C LDS R16, 156 TCCR1B=0x05; E005 LDI R16, 5 BD0E OUT 0x2E, R16 С другой стороны, не хотелось бы прослыть человеком, который использует "goto". :-)))