Interfejs Centronics-I/O
Interfejs Centronics, kt贸rym dysponuj膮 prawie wszystkie PC-ty, umo偶liwia, dzi臋ki wystarczaj膮cemu buforowaniu linii wyj艣ciowych, niemal bezpo艣rednie wykorzystanie tych linii. W zasadzie wszystkie pi臋膰 wej艣膰 tego z艂膮cza mo偶na tak偶e bezpo艣rednio wysterowywa膰 poniewa偶 s膮 zgodne z poziomami TTL. Dla zwi臋kszenia pewno艣ci nale偶y zastosowa膰 ograniczenie pr膮du (w postaci rezystora) i ograniczenie napi臋cia (w postaci diody Zenera). Podana warto艣膰 rezystora dotyczy nowszych PC-t贸w z wej艣ciami CMOS, dla starszych modeli, ze standardowymi wej艣ciami TTL, nale偶y zastosowa膰 rezystor 100om. O tym, jakiego rodzaju jest wej艣cie, mo偶emy 艂atwo si臋 przekona膰 mierz膮c spadek napi臋cia na rezystorze 2,2k: je艣li przy wej艣ciu zwartym na mas臋 wynosi on 0,8V, to mamy do czynienia z wej艣ciem w standardzie TTL. Wtedy warto艣膰 rezystora nale偶y zmniejszy膰 i wej艣cie sterowa膰 z niskoomowego 藕r贸d艂a. Te pi臋膰 wej艣膰 to:聽
BUSY |
BIT 7 n. 11 |
ACK |
BIT 6 n. 10聽 |
PAPER EMPTY |
BIT 5 n. 12聽 |
SELECT |
BIT 4 n. 13 |
n.c |
BIT 3 n. 15 |
Numeracja ko艅c贸wek dotyczy 25-n贸偶kowego z艂膮cza typu Sub-D. Odpowiadaj膮ce im numery n贸偶ek w 36-ko艅c贸wkowym z艂膮czu Centronics, zamontowanym na p艂ytce drukowanej, mo偶na odczyta膰 ze schematu. Poziomy napi臋膰 na tych n贸偶kach daj膮 si臋 okre艣li膰 przez odczytanie stanu bit贸w bajtu o adresie LPT+1. Pozosta艂e trzy bity nie zawieraj膮 偶adnej interesuj膮cej nas informacji. Osiem wyj艣膰 danych na z艂膮czu D25 (k. 2...9) jest w stanie dostarczy膰 pr膮du 2,6mA i pobra膰 24mA. Wyj艣cia te mog膮 zosta膰 wysterowane przez okre艣lenie warto艣ci odpowiednich bit贸w bajtu o adresie bazowym portu LPT. Cztery dodatkowe wyj艣cia s膮 dost臋pne pod adresem LPT+2:聽
STROBE |
BIT 0 n. 1 |
AUTO FEED |
BIT 1 n. 14 |
INT |
BIT 2 n. 16 |
SELECT IN |
BIT 3 n. 17 |
Wyj艣cia te s膮 wyposa偶one w rezystory podci膮gaj膮ce o warto艣ci 4,7k i mog膮 pobiera膰 pr膮d do 7mA. Nale偶y pami臋ta膰, 偶e pozosta艂e cztery bity (4...7) powinny mie膰 warto艣膰 0. Tranzystory Darlingtona BD679 wyposa偶aj膮 nasz interfejs w pot臋偶ne mo偶liwo艣ci: wyj艣cia mog膮 prze艂膮cza膰 pr膮dy do 4A przy napi臋ciu do 80V. Pr膮d nie powinien jednak przekracza膰 2A przy pracy ci膮g艂ej. Je艣li przewidziane jest d艂ugotrwa艂e obci膮偶enie du偶ymi pr膮dami, w贸wczas tranzystory Darlingtona nale偶y zaopatrzy膰 w radiatory. Nale偶y pami臋ta膰, 偶e napi臋cie na nasyconym tranzystorze Darlingtona nie spada poni偶ej 0,6V, a przy pr膮dzie 1...2A poni偶ej 0,8V. Napi臋cie zasilania tranzystor贸w BC547B nie jest krytyczne, powinno wynosi膰 5...15V. Przy 5V maksymalny pob贸r wszystkich tych tranzystor贸w wynosi ok. 50mA. Sterowane przez interfejs obci膮偶enia w艂膮czamy pomi臋dzy kolektory tranzystor贸w Darlingtona a dodatni biegun zewn臋trznego 藕r贸d艂a napi臋cia (80V). Je艣li sterowane s膮 obci膮偶enia indukcyjne, jak np. przeka藕niki, nale偶y pami臋ta膰 o konieczno艣ci w艂膮czenia diod zabezpieczaj膮cych przed przepi臋ciami wywo艂anymi ich od艂膮czaniem. Programowanie naszego interfejsu nie przedstawia wi臋kszego problemu. W dowolnym j臋zyku programowania, np. w Basicu, mo偶na napisa膰 prosty program odczytuj膮cy stany czterech wej艣膰. Wynik pojawia si臋 oczywi艣cie w postaci hexadecymalnej:
REM czytaj wej艣cia Centronics聽
REM wy艣wietlaj kody hex聽
LPT1 adres = &H378聽
WHILE 1
cent= INP(LPT1adres+1)聽
PRINT hex$(cent)聽
WEND
Podobnie 艂atwo jest wysterowa膰 wyj艣cia
REM fala prostok膮tna na D0-D7聽
REM D0 ma najwy偶sza cz臋stotliwo艣膰聽
LPT1 adres = &H378聽
count = 0聽
WHILE = 1
OUT LPT1 adres, count聽
count = count + 1聽
IFcount>255 then聽
count = 0聽
WEND
Wymiary p艂ytki: 81x86mm
Wykaz element贸w:
R1,R3,R5,R7,R9,R11,R13,R15,R17,R19,R21,R23:1k聽 |
|
Ostanie zmiany:
Opracowano na podstawie聽EE 10/94
http://www.elektronika.basnet.pl