LINUX.ORG.RU

Это ?

------------------------
#include <sys/io.h>

main(){

  printf("ioperm(): %d\n",ioperm(0x3f8,0x3ff,1));

  int i;
  for(i=0x3f8;i<=0x3ff;i++)
  printf("In 0x%x : 0x%x\n",i,inb(i));
  return 0;

}

xnix ★★
()
Ответ на: комментарий от smartly

За ссылочки спасибо, попытаюсь найти полезное.

> Это ?

Да похоже, правда мне этого не достаточно.
Нужно параметры/чтение/запись/прерывание,
 готовность линии.
Пока не очень получается.
Доку бы с примерами ? 

"через регистры" -> "через порты" 

Есть вопросик.
Если на одном компе, для проверки 
нужен 0-модемный кабель и порт-порт + minicom ?

Может ещё как-то можно ?

anonymous
()
Ответ на: комментарий от anonymous

Я дал ссылку на даташит на микросхему 16C550, точный аналог которой входит во все интегрированые в материнки ком-порты. Там описаны все её регистры.

примеров программирования навскидку не нашёл.

>Если на одном компе, для проверки
>нужен 0-модемный кабель и порт-порт + minicom ?

Можно и так, зависит от того, что тебе нужно в итоге.

Только вот боюсь, линуксовый драйвер ком-порта будет тебе мешать. а без него minicom работать не будет.

Но вопрос, зачем тебе это?

Вот это не лучше будет?
http://tldp.org/HOWTO/Serial-Programming-HOWTO/

smartly ★★★
()
Ответ на: комментарий от smartly

>Только вот боюсь, линуксовый драйвер ком-порта будет 
>тебе мешать. а без него minicom работать не будет.

Уже мешает, читать не получается.

>Но вопрос, зачем тебе это? 

Читать/писать в несколько com-портов, больше 4-х.

anonymous
()
Ответ на: комментарий от anonymous

>Читать/писать в несколько com-портов, больше 4-х.

Это какая-то специальная мультипортовая плата? Если там не 16C550 - то и даташиты на неё не помогут. Если там 16С550 - и все просто включены стандартным для PCI способом - то ядерный драйвер 8250.kо дуолжен уметь с ними работать.

Если по другому - то хорошо бы озадачиться написанием ядерного модуля.

smartly ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.