|
|
|
| SPRZĘT | |
|
INTERFEJS RS-232 DLA C-64 |
1. Wstęp.
Od początku swego istnienia mikrokomputer commodore 64 jest
bardzo elastyczną platformą w rękach programistów oraz
użytkowników. Chyba dzięki temu zyskał sobie zasłużone
miejsce w historii rozwoju informatyki, a napewno w domach wielu
z nas. Jak się okazuje, nie stracił zbyt na funkcjonalności
pomimo swego dosyć sędziwego wieku. Potrafi w mniemaniu wielu
dorównać kroku wyżej zaawansowanym platformom komputerowym,
przeobrażając się ze zwykłej zabawki w narzędzie pracy. Ale
z pewnością nie byłoby to wszystko możliwe, gdyby nie porty i
interfejsy w jakie zaopatrzyli go projektanci. To za sprawą tych
gniazd, cieszymy się z możności słuchania muzyki, drukowania
dokumentów, zapisywania danych na nośnikach i innymi rzeczami.
Ponieważ tematem tego artykułu ma być budowa szeroko
rozpowszechnionego portu RS-232, przystąpmy bezzwłocznie do
dzieła.
2. Trochę teorii.
Pomimo, że szeregowe przesyłanie bajtów nie jest wynalazkiem
szczególnie wydajnym, to jak obserwujemy jest często stosowane.
Obsługa klawiatury, modemu, myszy nadal odbywa się na tym
poziomie i nawet zmiana standardów, w postaci innych portów,
nie wpłynęła na zmianę zasady pracy tych urządzeń. Ale
wróćmy do c-64. Niemała część urządzeń zewnętrznych od
komputera PC będzie także funkcjonowała z commodore, jeśli
wyposażymy się w konwerter poziomów TTL/RS-232. Ta przystawka
gwarantuje poprawne przekazanie informacji w obydwie strony i
musi być zastosowana, skoro podłączamy osprzęt różny od
dedykowanego dla commodore. User port jest zaopatrzony we
wszystkie podstawowe linie, wymagane przy transmisji szeregowej.
Niestety są one w standardzie TTL, czyli poziomy napięć nie
są zgodne z zaleceniami interfejsu RS-232, który pracuje w
technologii CMOS. W technice TTL rozróżniane są napięcia
niesymetryczne +5V oraz masa, zaś w CMOS są symetryczne +-12V
oraz masa. Dlatego dla złącza c-64 stosuje się nazewnictwo
RS-232C i w ten sposób dokonuje się podział na dwie kategorie.
3. Do dzieła.
Zbudowanie interfejsu można zrealizować na kilka sposobów, w
tym wypadku poruszymy tylko jeden, a to za sprawą kilku
niezaprzeczalnych jego zalet. Poniższy układ charakteryzuje
się tym, że:
- jest łatwy do zbudowania (początkujący elektronik nie
powinien mieć kłopotów ze złożeniem),
- wymaga tylko jednego napięcia zasilania +5V (można
pobierać z pinu 2 user portu c-64),
- zajmuje niewiele miejsca (można schować w obudowie),
- nie jest drogi (koszt układu scalonego ok.6 zł)
- fantastycznie współpracuje z oprogramowaniem (NOVATERM
dla c-64).
Do zbudowania potrzebne będą (spis elementów):
element |
ilość |
układ scalony MAX 232 |
1 |
kondensator elektrolityczny 10uF 16V |
1 |
kondensator elektrolityczny 22uF 16V |
4 |
gniazdo DB25 (dziurki) |
1 |
wtyk do USER PORT |
1 |
obudowa DB25 |
1 |
obudowa interfejsu (opcjonalnie) |
1 |
przewód 4-żyłowy w ekranie |
ok. 2m |
Układ MAX 232, wykonany w technologii CMOS, zawiera w swej
strukturze pojemnościowy podwajacz napięcia z układem
inwertera. Z tego właśnie powodu może być zasilany
pojedyńczym napięciem i spełnia jednocześnie wymagania normy
V.28. Kostka jest w stanie pracować z prędkością maksymalną
120 kbit/s (200 kbit/s dla MAX 232A). Według aplikacji
producenta, kondensatory zewnętrzne powinny być pojemności
przynajmniej 1uF, ale można śmiało zwiększyć pojemność do
około 10uF i nie będzie to w niczym przeszkadzać. Interfejs
według założeń normy powinien prawidłowo funkcjonować przy
długości przewodu rzędu kilkunastu metrów lub więcej (od
strony PC). Ale przy tak długich połączeniach przewód musi
być w oplocie, czyli tzw. ekranie, który skutecznie zmniejszy
powstawanie przekłamań. Trzeba pamiętać, że zbyt długie
połączenia będą przyczyną zmniejszenia prędkości
przesyłu, stąd najlepiej ograniczyć je na tyle, na ile jest to
potrzebne. Po stronie TTL, nie możemy już sobie pozwolić na
taki luksus i tutaj rygorystycznie zmniejszamy odległość do
kilkunastu (!) centymetrów maksymalnie. Dlatego może wygodniej
będzie wmontować układ wewnątrz obudowy c-64 i wyrzucić
wtyczkę na tył obudowy (podłączanie w tym momencie innych
urządzeń do user portu może być trochę ryzykowne; będą
podpięte równolegle do portu, poza tym wydajność prądowa
pinu 2 jest przecież 100mA).
Czas najwyższy spojrzeć na schemat:
Widzimy po lewej stronie linie CTS, /DTR, TXD, RXD. Dwie
pierwsze z nich służą do sprzętowego potwierdzenia gotowości
odebrania danych (clear to send) i gotowości terminalu do
transmisji (data terminal ready). Ogólnie przekazują sygnały
sterujące - potwierdzenia typu handshake. Rzeczywiste
dostarczanie danych realizują linie TXD (dane wysyłane) i RXD
(dane odbierane). Są nazywane liniami transmisji i odbioru
danych. Nie są to wszystkie dostępne linie interfejsu 232, ale
że commodore nie korzysta z pozostałych, to z powodzeniem
można ograniczyć się do podanych, a nawet do dwóch: RXD i
TXD.
4. Oprogramowanie.
W tym rankingu PC doczekał się wielu programów do obsługi
transmisji szeregowej. Najlepiej, podczas testów, sprawował
się Norton Commander dla DOS i Terminal dla Windows 3.11. W
przypadku c-64 jest bardzo porządny taki jeden - Novaterm, gdzie
posiadamy sporo opcji konfiguracyjnych. I właśnie w tej chwili
powiemy sobie jak ustawić parametry, aby transmisja przebiegła
bez szwanku.
Najważniejsze, aby oba terminale były ustawione według tych
samych nastaw. W przeciwnym razie wystąpi konflikt i do
połączenia nie dojdzie. Ustawmy następujące opcje:
- dla PC
- port COM2
- prędkość 2400 bodów
- bity danych : 8
- kontrola parzystości : parzystość (lub
nieparzystość)
- bity stopu : 1
- kontrola RTS/CTS : brak
- emulacja terminala : VT 100 (lub ANSI)
- typ terminala : Xmodem-1K (lub Kermit, Punter, Xmodem)
- ustawienia terminala : echo włączone
- dla c-64
- prędkość 2400 bodów
- bity danych : 8
- kontrola parzystości : parzystość (lub
nieparzystość)
- bity stopu : 1
- kontrola RTS/CTS : brak
- emulacja terminala : VT 100 (lub ANSI)
- typ terminala : Xmodem-1K (lub Kermit, Punter, Xmodem)
- ustawienia terminala : echo włączone
Powyższa konfiguracja daje pewne i szybkie połączenie.
Działamy z największą dla commodore prędkością 2400
bitów/s, transportujemy 8 bitów na raz, wymagamy aby
następowało sprawdzenie poprawności danych przez kontrolę
bitu parzystości, zmniejszamy oczekiwanie bitów stopu do
najmniejszej wartości, korzystamy z emulacji VT 100, przez co
otrzymujemy dokładny obraz tego co zostało nadane na ekranie
przeciwległego urządzenia (i na odwrót), typ terminala
Xmodem-1K, który spowoduje wysyłanie paczek danych porcjami po
1 kilobajcie oraz włączamy echo, aby widzieć na naszym ekranie
to co piszemy z klawiatury. Tak po krótce prezentuje się całe
zagadnienie transmisji danych. Jeśli któraś z wyżej
wymienionych opcji nie występuje w użytym programie, koniecznie
należy odszukać parametry wspólne dla obu programów i
sprawdzić poprawność ustawienia. Polecam wykonanie eksperymentów z różnie ustawionymi opcjami.
Autor:
Data realizacji:
Data publikacji:
Data modyfikacji:
Pierwsza publikacja:
|
|
Reiter (Apidya)
-
4.1.2001
-
Filety on-line
|
|
Instrukcja używania systemu komentarzy
- W polu "Podpisz się" umieszczasz swoje Imię, Nazwisko albo Pseudonim używając znaków alfanumerycznych: A-Z, 0-9 oraz znaków specjalnych, np.: !^<>" ' itp.
Tagi HTML są nieaktywne.
- W polu "Wpisz treść" umieszczasz komentarz używając znaków alfanumerycznych: A-Z, 0-9 oraz znaków specjalnych, np.: !^<>" ' itp. Klawisz ENTER tworzy nowy akapit.
Tagi HTML są aktywne. Możesz:
Możliwość:
|
Komenda:
|
Przykład:
|
a. Pogrubić tekst: |
<B></B> |
Pogrubiony |
b. Pochylić tekst: |
<I></I> |
Pochylony |
c. Podkreślić tekst: |
<U></U> |
Podkreślony |
d. Stworzyć indeks górny: |
<SUP></SUP> |
Indeks górny |
e. Stworzyć indeks dolny: |
<SUB></SUB> |
Indeks dolny |
f. Użyć czcionki maszynowej: |
<TT></TT> |
Czcionka maszynowa |
Adresy URL wpisujemy w postaci http://nazwastrony.pl, ftp://nazwastrony.pl.
Adresy email wpisujemy w postaci nazwa@nazwa.pl.
Adresy Gadu-Gadu wpisujemy w postaci gg:1234567 (bez spacji).
Proszę pamiętać o domykaniu otwartych tagów.
Przed naciśnięciem przycisku Komentuj, zaznacz checkboks przy jego prawym boku.
|
|
|