Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

А глюки в чипах uart-ов есть. Это видно из

Отправлено ++ 20 декабря 2006 г. 17:07
В ответ на: UART SOS(+) отправлено <font color=gray>Rodik</font> 20 декабря 2006 г. 15:05

скорее всего, чип неправильно поддерживается драйвером xp без глюков. Не обязательно, что он 16c550a - (16c750/ 16c950)

Напр, фрагменты кода linux драйвера 16с550


if (lsr & UART_LSR_TEMT && iir & UART_IIR_NO_INT) {
if (!(up->bugs & UART_BUG_TXEN)) {
up->bugs |= UART_BUG_TXEN;
pr_debug("ttyS%d - enabling bad tx status workarounds\n",
port->line);
}
} else {
up->bugs &= ~UART_BUG_TXEN;
}
.......


.............
if (up->bugs & UART_BUG_TXEN) {
unsigned char lsr, iir;
lsr = serial_in(up, UART_LSR);
iir = serial_in(up, UART_IIR);
if (lsr & UART_LSR_TEMT && iir & UART_IIR_NO_INT)
transmit_chars(up);
}

................
/* no MSR capabilities */
if (up->bugs & UART_BUG_NOMSR)
return;



Составить ответ | Вернуться на конференцию

Ответы



Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru