ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
7 июля
211843
z00f (20.09.2010 16:03, просмотров: 11072)
Как сделать, чтобы после передачи последнего бита по USART менялось состояние ноги. Необходимо подключение RS485 драйвера и переключать с приема на передачу и наоборот. С использованием прерывания ISR(USART1_TX_vect) задержка перевода ноги в "0" слишком велика. делал: так: RS485_DE_HI(); далее передаем байт... while(!gbi(UCSR1A,UDRE1)){asm volatile("nop");} // Data Register Empty RS485_DE_LO(); и так тоже: RS485_DE_HI(); далее передаем байт... while(gbi(UCSR1A,TXC1)){asm volatile("nop");} // Transmitt complete RS485_DE_LO(); но не работает, либо сжевывает половину на выходе, либо вообще черти как работает... Подскажите как лучше всего реализовать?