Цитата(vesago @ Mar 17 2006, 13:16)

2 Andy Mozzhevilov А какие ошибки кроме памяти - будьте так любезны?
По своему опыту скажу, что при первом проходе платы обычно вылавливается 3-5 ошибок и/или пожеланий. Для начала производства требуется 2-3 прохода. Так что не расстраивайтесь.
Цитата
Кстати, немаловажный момент, получается, что отключить передатчик драйвера 485 в обработчике прерывания уарта нельзя, так как он контролирует освобождение буфера, но не сдвигового регистра. То есть приведенный код постоянно должен крутиться в основном цикле. Правильно я понимаю?
Код
void UART0_CheckBuferEmty(void)
{
if(uart0.flags.tx_in_progress == 0)
{
if(U0LSR & (1<<U0LSR_TEMT_BIT))
{
IO0CLR |= (1<<RS485_TX); //Отключим передатчик RS485
U0IER |= (1<<U0IER_RBR_Interrupt_Enable_BIT);
U0FCR |= (1<<U0FCR_Rx_FIFO_Reset_BIT);
}
}
}
предостерегу вас сразу от ошибки, связанной с оперированием регистром FCR:
http://electronix.ru/forum/index.php?showtopic=8032&hl=FCRА так, я сейчас на вскидку не вспомню, в какой момент устанавливается THRE.
Пасу котов...