Linux, a porty szeregowe.: Jak nazywają sie porty szeregowe?
Następna strona
Poprzednia strona
Spis treści
3. Jak nazywają sie porty szeregowe?
Każdy port I/O umożliwia wymianę danych pomiędzy komputerem i
otoczeniem. Istnieje wiele rodzajów portów I/O, porty szeregowe, równoległe,
sterowniki dysków, karty ethernetowe itp. My będziemy omawiać porty
szeregowe, ponieważ modemy i terminale są urządzeniami korzystającymi z
portów szeregowych. Każdy port szeregowy musi posiadać adres I/O i przerwanie
(IRQ). Istnieją 4 porty szeregowe odpowiadające odpowiednio COM1-COM4:
ttyS0 (COM1) adres 0x3f8 IRQ 4
ttyS1 (COM2) adres 0x2f8 IRQ 3
ttyS2 (COM3) adres 0x3e8 IRQ 4
ttyS3 (COM4) adres 0x2e8 IRQ 3
Jeśli podczas startu Linux nie rozpozna żadnego portu
szeregowego upewnij się, że obsługa portów szeregowych jest
wkompilowana w jądro. W tym dokumencie
przyjeliśmy, że ttyS0 odnosi się do portu COM1,
ttyS1 do COM2, ttyS2 do COM3 i ttyS3 do
COM4. Zauważ, że domyślnie porty współdzielą przerwania
IRQ. Jednakże nie można korzystać ze wszystkich portów w konfiguracji
domyślnej, trzeba na nowo przydzielić przerwania. Informacje
na temat ustawiania IRQ znajdziesz w rozdziale
Czy mogę używać więcej niż dwóch urządzeń portów szeregowych?W niektórych systemach tworzone są dodatkowe dwa pliki
urządzeń, /dev/modem dla modemu i /dev/mouse
dla myszy. Oba są dowiązaniami symbolicznymi do właściwych
urządzeń w katalogu dev, które podałeś podczas
Instalacji systemu (chyba, że posiadasz mysz sbus, wtedy
/dev/mouse będzie wskazywać na urządzenie bus mouse).
Wiele dyskutowano na temat użyteczności /dev/mouse i
/dev/modem. Ja mocno odradzam korzystania z tych
dowiązań. W szczególności, jeśli planujesz korzystać ze
swojego modemu do dzwonienia do twojego komputera (dialin), a będziesz
korzystał z /dev/modem, to możesz napotkać na problemy
związane z plikami blokad (lock files). Jeśli ten pomysł podoba Ci się,
korzystaj z niego, lecz upewnij się, że wspomniane dowiązania wskazują na
właściwe urządzenia. Jednakże jeśli usuniesz te dowiązania, wtedy
niektóre aplikacje będą wymagać zmianiy konfiguracji
(np. minicom).
3.1 Urządzenia portów szeregowych i numery w dev.
/dev/ttyS0 major 4, minor 64 /dev/cua0 major 5, minor 64
/dev/ttyS1 major 4, minor 65 /dev/cua1 major 5, minor 65
/dev/ttyS2 major 4, minor 66 /dev/cua2 major 5, minor 66
/dev/ttyS3 major 4, minor 67 /dev/cua3 major 5, minor 67
Proszę zwróć uwagę, że wszystkie dystrybucje powinny same
utworzyć pokazane powyżej pliki urządzeń. Czy tak się stało możesz to sprawdzić
wydając polecenie:
linux% ls -l /dev/cua*
linux% ls -l /dev/ttyS*
Tworzenie plików urządzeń w katalogu /dev.
Jeśli nie znalazłeś pliku urządzenia, musisz go utworzyć za
pomocą polecenia mknod.
Przykład: załóżmy, że potrzebujesz utworzyć urządzenie ttyS0:
linux# mknod -m 666 /dev/cua0 c 5 64
linux# mknod -m 666 /dev/ttyS0 c 4 64
Możesz w tym celu wykorzystać skrypt MAKEDEV, dostępny w
katalogu /dev lub archiwach ftp. Znacznie upraszcza
tworzenie plików urządzeń. Na przykład jeśli chesz utworzyć
urządzenie ttyS0 wystarczy napisać:
linux# cd /dev
linux# ./MAKEDEV ttyS0
Skrypt zajmie się utowrzeniem urządzeń wyjściowych (cua) i
wejściowych (ttyS).
3.2 Uwagi na temat kart wieloportowych.
Pliki urządzeń wykorzystywane przez karty wieloportowe zależą
od rodzaju karty. Szczegóły można znaleźć w
rc.serial, który znajduje się w dystrybucji programu
setserial. Jeśli starasz się uruchomić kartę
wieloportową bardzo polecam zaopatrzyć się w najnowszą
wersję programu setserial. Prawdopododobnie będziesz
musiał własnoręcznie utworzyć pliki specjalne
urządzeń. Skorzystaj albo z programu mknod albo skryptu
MAKEDEV. Pliki urządzeń kart wieloportowych
charakteryzują się tym, że numer główny (major number) jest
równy 64 + numer portu karty. Jeśli chiałbyś utworzyć plik
urządzenia dla portu ttyS17 muszisz wydać polecenie:
linux# mknod -m 666 /dev/cua17 c 5 81
linux# mknod -m 666 /dev/ttyS17 c 4 81
Zauważ, że ``64 + 17 = 81''. Korzystając ze skryptu MAKEDEV trzeba
napisać:
linux# cd /dev
linux# MAKEDEV ttyS17
Uwaga: dokumentacja SIIG dla IO1812 dotycząca portów COM5-COM8
zawiera błąd. Powinno być COM5=0x250, COM6=0x258, COM7=0x260 i
COM8=0x268.
Uwaga: Rejestr stanu (status register) karty DIGI PC/8
znajduje się pod adresem 0x140.
Uwaga: Korzystając z karty AST Fourport może być potrzebne
umiesczenie w skrypcie rc.serial parametru skip_test.
3.3 Uwagi na temat inteligentnych kart wieloportowych.
Przeczytaj dokumentacje dostarczaną ze sterownikiem. Te karty
korzystają ze specjalnych urządzeń, nie ze
standardowych. Informacje ich dotyczące różnią się w
zależności od posiadanego sprzętu.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
Serial HOWTO pl 6 (2)Serial HOWTO pl 1 (2)Serial HOWTO pl (2)Serial HOWTO pl 2 (2)Serial HOWTO pl 8 (2)Serial HOWTO pl (3)Serial HOWTO pl 14 (2)Serial HOWTO pl 7 (2)Serial HOWTO pl 15 (2)Serial HOWTO pl 9 (2)Serial HOWTO pl 11 (2)Serial HOWTO pl 4 (2)Serial HOWTO pl 5 (2)Serial HOWTO pl 13 (2)Serial HOWTO pl 16 (2)Serial HOWTO pl 10 (2)Serial HOWTO pl 12 (2)bootdisk howto pl 8PPP HOWTO pl 6 (2)więcej podobnych podstron