LPT - jak udawać drukark
Masz problem? Zapytaj na forum elektroda.pl
From: "Warlock" <Warl0ck_at_nospam_tlen.pl>
Subject: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 08:44:47 +0100
Witam...
Nie dokońca wiem gdzie to pisać...
Mam taki problem... jest sobie urządzenie, niestety nie mogę ingierować
w jego oprogramowanie... do urządzenia powinna być podłączona drukarka
na LPT na której drukowany jest raport z działania urządzenia, ¶rednio
kilkana¶cie linijek na godzinę...
Niestety brak tej drukarki po pewnym czasie powoduje błąd - przepełnienie
bufora.
Mnie ta drukarka potrzebna nie jest...
Czy da się jako¶ wykombinować samą wtyczkę LPT (jakie¶ zworki albo co¶)
aby ustrojstwo my¶lało, że wydrukowało... dodam, że drukarka chodzi jako
IBM Printer.... tylko standardowe kody ASCII... w samym urządzeniu nic się
nie konfiguruje w tej sprawie... w tej chwili mam tam podłączoną MEFKĘ...
ale chciałbym się jej pozbyć całkowicie.
Dzięki za wszelkie sugestie...
Pozdrawiam...
W.
From: "Grzegorz K." <grzesk_at_nospam_post.cross.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 08:57:06 +0100
[...]
Czy da się jako¶ wykombinować samą wtyczkę LPT (jakie¶ zworki albo co¶)
aby ustrojstwo my¶lało, że wydrukowało...
[...]
Ja bym podłączył BUSY (pin 11) na stałe do poziomu wysokiego - sygnał ten
informuje komputer: "stój i czekaj, aż skończę swoje".
A poziom wysoki np. z portu klawiatury +5V przez rezystor np. 4k7 ohm.
Tak przynajmniej kiedy kombinowałem.
Pozdrawiam,
Grzegorz K.
From: "Warlock" <Warl0ck_at_nospam_tlen.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 09:00:42 +0100
Użytkownik "Grzegorz K." <grzesk_at_nospam_post.cross.pl> napisał w wiadomo¶ci
news:d0jlqh$cd0$1_at_nospam_news.supermedia.pl...
[...]
Czy da się jako¶ wykombinować samą wtyczkę LPT (jakie¶ zworki albo co¶)
aby ustrojstwo my¶lało, że wydrukowało...
[...]
Ja bym podłączył BUSY (pin 11) na stałe do poziomu wysokiego - sygnał ten
informuje komputer: "stój i czekaj, aż skończę swoje".
A poziom wysoki np. z portu klawiatury +5V przez rezystor np. 4k7 ohm.
No wła¶nie... to raczej nic nie da... wtedy ustrojstwo będzie czekało
a bufor się będzie wypełniał...
To działa tak dziwnie, że nie sprawdza obecno¶ci drukarki...
ale sygnalizuje przepełnienie swojego bufora... więc je¶li dane się
nie wydrukują - to i tak będę miał błąd :(
Jak więc udawać, że się wydrukowały ???
From: "Marek Dzwonnik" <mdz_at_nospam_WIADOMO_PO_CO_TO.message.pl>
Subject: =?iso-8859-2?Q?Re:_LPT_-_jak_udawa=E6_drukark?=
Date: Tue, 8 Mar 2005 10:01:31 +0100
Użytkownik "Warlock" <Warl0ck_at_nospam_tlen.pl> napisał w wiadomo¶ci
news:d0jmbt$8md$1_at_nospam_nemesis.news.tpi.pl
Ja bym podłączył BUSY (pin 11) na stałe do poziomu wysokiego -
sygnał ten informuje komputer: "stój i czekaj, aż skończę swoje".
No wła¶nie... to raczej nic nie da... wtedy ustrojstwo będzie czekało
a bufor się będzie wypełniał...
To działa tak dziwnie, że nie sprawdza obecno¶ci drukarki...
ale sygnalizuje przepełnienie swojego bufora... więc je¶li dane się
nie wydrukują - to i tak będę miał błąd :(
http://www.connectworld.net/centronics.html
http://www.lvr.com/parport.htm
Je¶li mnie (brak) pamięci nie zwodzi, to handshake na na Centronicsie
wygląda mniej więcej tak:
- Komputer wystawia dane strobując każdy bajt impulsem STROBE. Drukarka, gdy
się udławi nadmiarem danych, wystawia BUSY co oznacza brak gotowo¶ci (a
priori).
- Drukarka potwierdza każdy odebrany (zastrobowany znak) krótkim (rzędu us)
impulsem ACK\. Brak ACK również oznacza brak gotowo¶ci drukarki (post
factum).
Prawdopodobnie potrzeba, żeby¶ po każdym impulsie STROBE (0-1-0) generował
impuls ACK\ (1-0-1). Nie wiem jak z wymaganymi opóźnieniami. Być może
wystarczyłby inwerter na jednym tranzystorze. (ACK\ = ~STROBE). A je¶li nie,
to jaki¶ uniwibrator (7..10us? ) wyzwalany tylnym zboczem STROBE.
--
Marek Dzwonnik, GG: #2061027 - zwykle jako 'niewidoczny'
(Uwaga Gadu-Gadulcowicze: Nie odpowiadam na anonimy.)
From: Lukasz Spychalski <luspych_at_nospam_spamfe.polbox.com>
Subject: Re: =?iso-8859-2?Q?Re:_LPT_-_jak_udawa=E6_drukark?=
Date: Tue, 08 Mar 2005 12:12:39 +0100
On Tue, 08 Mar 2005 10:01:31 +0100, Marek Dzwonnik wrote:
On Tue, 08 Mar 2005 10:01:31 +0100, Marek Dzwonnik wrote:
Je¶li mnie (brak) pamięci nie zwodzi, to handshake na na Centronicsie
wygląda mniej więcej tak:
* Komputer wystawia dane strobując każdy bajt impulsem STROBE.
Drukarka, gdy się udławi nadmiarem danych, wystawia BUSY co oznacza
brak gotowo¶ci (a priori).
Prawie dobrze ;).
Host wystawia dane, i mruga /STOBE. Drukarka wystawia natychmiast BUSY i
trzyma go, dopoki nie bedzie gotowa do przyjecia nastepnego bajtu. Gaszac
BUSY mruga przy okazji /ACKNLG.
Jesli drukarka znajdzie sie w stanie bledu, wystawia BUSY, ERROR\ i
ewentualnie PE (jesli blad dotyczy braku papieru).
Uwaga: /STROBE, /ACKNLG i /ERROR maja logike odwrotna.
Warlock: pierwszym krokiem powinno byc zwarcie BUSY do masy. Moze to
wystarczyc, jesli hosta nie obchodzi /ACKNLG. Jesli nie zadziala, trzeba
bedzie wziac jakies ne555 i generowac /ACKNLG powiedzmy 1 ms po /STROBE.
--
pozdrawiam,
Lukasz Spychalski
From: J.F. <jfox_xnospamx_at_nospam_poczta.onet.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 08 Mar 2005 12:58:38 +0100
On Tue, 8 Mar 2005 10:01:31 +0100, Marek Dzwonnik wrote:
http://www.connectworld.net/centronics.html
http://www.lvr.com/parport.htm
Je¶li mnie (brak) pamięci nie zwodzi, to handshake na na Centronicsie
wygląda mniej więcej tak:
* Komputer wystawia dane strobując każdy bajt impulsem STROBE. Drukarka, gdy
się udławi nadmiarem danych, wystawia BUSY co oznacza brak gotowo¶ci (a
priori).
* Drukarka potwierdza każdy odebrany (zastrobowany znak) krótkim (rzędu us)
impulsem ACK\. Brak ACK również oznacza brak gotowo¶ci drukarki (post
factum).
Prawdopodobnie potrzeba, żeby¶ po każdym impulsie STROBE (0-1-0) generował
impuls ACK\ (1-0-1).
O ile pamietam to ACK sluzy do zgloszenia przerwania, a pod DOS
uzywany byl wylacznie Busy [pod windows byc moze tylko ack, albo
wrecz jakis tryb DMA jest uzywany - bo trzeba przyznac ze obsluga
centronicsa niewdzieczne zadanie w dzisiejszych czasach]
Busy trzeba wystawic po kazdym bajcie. ACK sie generuje w momencie
zejscia Busy.
Sens by nawet mialo zeby komputer musial pczekac z aktywnym strobe na
ustawienie Busy - a drukarka czekala z opuszczeniem busy dopiero jak
sie strob nieaktywny zrobi - wtedy byloby niemozliwe zgubienie
ktoregos sygnalu. Norma ponoc mowi inaczej.
Czyli w sumie konstrukcja na kilku 555 lub 74132 [uwaga - brak
zasilania na porcie :-(]
Do tego jeszcze musisz odpowiednio ustawic linie paper_out ..
J.
From: "Tomasz FANGRAT" <tfangra_at_nospam_sgh.waw.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 09:45:54 +0100
Je¶li nie zależy ci na danych - to jak pisał przedmówca - który¶ z pinów (
albo BUSY albo ACKNOLWLEDGE )do plusa - nie pamiętam dokładnie ale
wielokrotnie wpakowywałem się na sytuację odwrotną - uszkodzony kabel
drukarkowy informował komputer że wydruk idzie prawidłowo mimo że na
drukarce nic nie było - więc trzeba trafić kombinację ACKN i BUSY )
From: "Krzys-iek" <root.a.krionix.ten<->
Subject: =?iso-8859-2?Q?Re:_LPT_-_jak_udawa=E6_drukark?=
Date: Tue, 8 Mar 2005 09:46:13 +0100
Warlock <Warl0ck_at_nospam_tlen.pl> napisal nam:
Witam...
Nie dokońca wiem gdzie to pisać...
Mam taki problem... jest sobie urządzenie, niestety nie mogę
ingierować
w jego oprogramowanie... do urządzenia powinna być podłączona drukarka
na LPT na której drukowany jest raport z działania urządzenia, ¶rednio
kilkana¶cie linijek na godzinę...
Niestety brak tej drukarki po pewnym czasie powoduje błąd -
przepełnienie bufora.
Mnie ta drukarka potrzebna nie jest...
Czy da się jako¶ wykombinować samą wtyczkę LPT (jakie¶ zworki albo
co¶) aby ustrojstwo my¶lało, że wydrukowało... dodam, że drukarka
chodzi jako IBM Printer.... tylko standardowe kody ASCII... w samym
urządzeniu nic się nie konfiguruje w tej sprawie... w tej chwili mam
tam podłączoną MEFKĘ... ale chciałbym się jej pozbyć całkowicie.
a co za system? Kombinuje cos ala konfiguracja drukarki wirtualnej /dev/null
;)? Popytaj na grupach softwareowych?
From: "Warlock" <Warl0ck_at_nospam_tlen.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 09:54:23 +0100
a co za system? Kombinuje cos ala konfiguracja drukarki wirtualnej
/dev/null
;)? Popytaj na grupach softwareowych?
To jest urządzenie przemysłowe... soft nie wchodzi w gre... to musi się
odbyć na zewnątrz...
Na danych mi nie zależy... boje się kombinować w ciemno z tymi zworkami żeby
jaki¶ dym nie poleciał... to troche nie moja dziedzina :(
From: "Amino" <ble_at_nospam_ble.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 15:00:08 +0100
do urządzenia powinna być podłączona drukarka
na LPT
w tej chwili mam tam podłączoną MEFKĘ...
Co¶ mi tu nie pasuje. Przecież Mefka jest drukarką ze złączem szeregowym, a
port LPT jest portem równoległym.
--
Amino
From: "Warlock" <Warl0ck_at_nospam_tlen.pl>
Subject: Re: LPT - jak udawać drukark
Date: Tue, 8 Mar 2005 15:40:16 +0100
Co¶ mi tu nie pasuje. Przecież Mefka jest drukarką ze złączem szeregowym,
a
port LPT jest portem równoległym.
Na zamówienie... opcja z LPTem...
From: Lukasz Spychalski <luspych_at_nospam_spamfe.polbox.com>
Subject: Re: LPT - jak =?iso-8859-1?q?udawa=E6?= drukark
Date: Tue, 08 Mar 2005 15:15:18 +0100
On Tue, 08 Mar 2005 15:00:08 +0100, Amino wrote:
Co¶ mi tu nie pasuje. Przecież Mefka jest drukarką ze złączem
szeregowym, a port LPT jest portem równoległym.
Moze to nie mefka, a kafka cs? Albo mefka z konwerterem?
--
pozdrawiam
Lukasz Spychalski