Jak sterować drukarką atramentową przez port równoległy w Bascom?
drukowanie w Bascom
From: <piano2_at_nospam_poczta.onet.pl>
Subject: drukowanie w Bascom
Date: 21 Oct 2001 18:48:27 +0200
Witam wszystkich
czy ktoś może mi pomóc jak z poziomu Bascoma sterować drukarką atramentową
przez port równoległy. Czy są gdzieś informacje na ten temat ?
dzięki
Bogdan
--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
From: "Marek Lewandowski" <locust_at_nospam_poczta.onet.pl>
Subject: Re: drukowanie w Bascom
Date: Mon, 22 Oct 2001 14:40:47 +0200
Użytkownik <piano2_at_nospam_poczta.onet.pl> napisał w wiadomości
news:7316.0000098c.3bd2fc5a_at_nospam_newsgate.onet.pl...
Witam wszystkich
czy ktoś może mi pomóc jak z poziomu Bascoma sterować drukarką atramentową
przez port równoległy. Czy są gdzieś informacje na ten temat ?
Musisz sobie sam napisać obsługę, obawiam się
Potrzebujesz w zasadzie prawie wszystkich lini proa, chyba, że wstawisz
jakiś bufor pośredniczący.
Dane idą 8x1bit równolegle (pin 2 - 9), strobowanie są sygnałem STROBE
(pin1), do tego dochodzi SELECT (do drukarki), PAPER_EMPTY, BUSY (to do
proca) i jeszcze parę linii - nie pamiętam dokładnie, poczytaj w necie o
porcie Centronics. wszystkich linii nie musisz obsłużyć.
Druk tekstowy - po prostu piszesz text do dorukarki. Niektóre drukarki
wymagają posłania znaku końca strony, żęby wydrukować, inne poczekają 20s i
same wypuszaczą stronę z zawartością bufora dotychcczas załadowaną.
--
Marek Lewandowski ICQ UIN: 10139051
uyh0_at_nospam_rz.uni-karlsruhe.de
http://locust.republika.pl
From: "milosz k" <news_at_nospam_mikrobit.prv.pl>
Subject: Re: drukowanie w Bascom
Date: Tue, 23 Oct 2001 00:52:58 +0200
<piano2_at_nospam_poczta.onet.pl> wrote in message
news:7316.0000098c.3bd2fc5a_at_nospam_newsgate.onet.pl...
Witam wszystkich
czy ktoś może mi pomóc jak z poziomu Bascoma sterować drukarką atramentową
przez port równoległy. Czy są gdzieś informacje na ten temat ?
Sama transmisja jest bardzo prosta . Bascom'a nie używam ale schemat
rozwiazania w C (np. dla 89C2051) powinien Ci pomóc :
#define PORT P1
#define STROBE P3.7
#define BUSY P3.5
void send_char(char c)
{
/* oczekiwanie na wolny port */
while(BUSY) ;
PORT = c ;
STROBE = 0;
/* opoznienie 5 ms */
delay(10);
STROBE = 1;
}
Powyzsze wystarczy do obslugi drukarki w trybie tekstowym. (pod warnkiem że
drukarka działa spod DOS'a)
Miłosz.