Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

jak miec dostep do LPT przez /dev/lp1

56 views
Skip to first unread message

BartekK

unread,
Apr 19, 2004, 11:24:08 AM4/19/04
to
pytanie moze glupie, ale szukalem od i/o-port-programing-howto,
cofee-machine-howto, printing... ale nigdzie nie ma napisane tego co chce,
albo ja nie rozumiem....

potrzebuje wyslac bajt, albo ciag bajtow prosto z shela (bash, sh,
obojetnie) do lp1 (na ktorym bedzie wisialo urzadzenie, ktore dopiero
zrobie, wiec moge sie dostosowac dowolnie)

jest sobie lpt, ma jakis tam adres, linuch go widzi jako /dev/lp1
ok
pod gupim dosem moge zrobic C:\copy plik.txt > lpt i na liniach DATA mam to
co trzeba
a pod linuchem ?
robie np. echo "tekst" >/dev/lp1 i stoi..... dopiero ctrl+c przerywa zwis, a
na porcie nic sie nie pojawia wogole...
podobnie z wyslaniem jednobajtowego znaku...

nie chce nic robic z ioperm, outb itd - nie tedy droga, przeciez od tego sa
pliki urzadzen, by przez nie sie komunikowac z sprzetem....

czy istotne jest moze zeby linie ACK (lub inna?) w porcie lpt odpowiednio z
zewnatrz sterowac, zeby wiedzial ze cos jest na porcie i moze odebrac bajt,
i dlatego nie chce wyslac bo mysli ze tam nic niema?


--
Bartlomiej Kuzniewski tel +48 696 455098
si...@sibi.cfu.com.pl GG# 23319
[sprawdz moje aukcje!
http://www.allegro.pl/show_user_auctions.php?uid=338173 ]


Hoppke

unread,
Apr 19, 2004, 1:36:42 PM4/19/04
to
Message <c60qt4$81h$1...@nemesis.news.tpi.pl>
has been fingerprinted by BartekK:

> potrzebuje wyslac bajt, albo ciag bajtow prosto z shela (bash, sh,
> obojetnie) do lp1 (na ktorym bedzie wisialo urzadzenie, ktore dopiero
> zrobie, wiec moge sie dostosowac dowolnie)

Aha...

> jest sobie lpt, ma jakis tam adres, linuch go widzi jako /dev/lp1

^^^^^^
Linux.

Niektórzy uważają, że "linuch" to zdrobnienie, ale ostatni sobór[1], po
zbadaniu szerokich opinii publicznych uznał, że "linuch" jest
zdrobnieniem tej samej klasy co mówienie "bękart" o małym dziecku :)

[1] - Sobór odbył się trzydziestego października 2002 roku.
Potwierdzają to artykuły:
<slrn.pl.art4bg.vg.dormitor@lupercal>
<slrn.pl.artg5...@quatrin.pl>

> robie np. echo "tekst" >/dev/lp1 i stoi..... dopiero ctrl+c przerywa zwis, a
> na porcie nic sie nie pojawia wogole...

Bardzo dziwne, bo robisz wszystko dobrze - właśnie tak należałoby.
W zasadzie to trudno mi teraz wyobrazić sobie sytuację w której całość
by się mogła powiesić - tzn. całość powinna się zawiesić chyba tylko
wtedy, jeśli port by nie odbierał danych. Masz w ogóle podpięty jakiś
odbiornik do tego portu?

PS. Zamiast "echo" lepiej jest użyć "printf". Bo echo standardowo
dokleja na końcu ciągu jeszcze znak '\n', co może być niepożądane.
Ostatecznie można też użyć "echo -n", ale ogólnie polecam jednak printf
do takich spraw. Echo jest trochę... nieprzewidywalne. Np. zwykle zżera
podwójne spacje itp. Dobre do drukowania na ekranie, ale zbyt luzackie
do wysyłania bajtów na

> czy istotne jest moze zeby linie ACK (lub inna?) w porcie lpt odpowiednio z
> zewnatrz sterowac, zeby wiedzial ze cos jest na porcie i moze odebrac bajt,
> i dlatego nie chce wyslac bo mysli ze tam nic niema?

Takimi sprawami powinien się zajmować kernel... Bo na normalnie
działającym sprzęcie np. wydrukowanie pliku tekstowego może sprowadzać
się po prostu do "cat plik.txt >/dev/lp0". Na drukarkach postscriptowych
można w ten sposób posłać postscript do wydrukowania, a ja na swoim
małym Hewleciku czasem drukuję w ten sposób binarne pliki PCL.

W Twoim przypadku przypuszczałbym raczej problemy z samym urządzeniem,
ewentualnie z modułami obsługującymi port. Bo cała reszta jest poprawna
- dokładnie tak jak to robisz, dokładnie tak powinno się robić.
Ustawieniami portu praktycznie nigdy też nie powinieneś się samodzielnie
musieć zajmować, no bo to już raczej działka kernela i sterowników
parport i lp.

--
Na górze róże, na dole bez
Grepi wysysa z małych dzieci krew
http://lubuska.zapto.org/~hoppke/

PaPA

unread,
Apr 21, 2004, 8:57:20 AM4/21/04
to
BartekK wrote:

>
> czy istotne jest moze zeby linie ACK (lub inna?) w porcie lpt odpowiednio z
> zewnatrz sterowac, zeby wiedzial ze cos jest na porcie i moze odebrac bajt,
> i dlatego nie chce wyslac bo mysli ze tam nic niema?
>
>

Musis zrobic 2 mostki ale nie pamietam dokladnie jakie.
Cos chyba, ze urzadzenie jest podpiete oraz, ze odebralo znak.
Kiedys to robilem, ale teraz nie moge sprawdzic, bo urzadzenie jest caly
czas w serwerze. Pamietam, ze wpadlem na to czytajac specyfikacje portu.

PaPA

BartekK

unread,
Apr 22, 2004, 8:50:24 AM4/22/04
to
> Musis zrobic 2 mostki ale nie pamietam dokladnie jakie.
> Cos chyba, ze urzadzenie jest podpiete oraz, ze odebralo znak.

tak wiec tez zaczelem czytac specyfikacje portu ;)

interesujace sa nastepujace koncowki (/ oznacza negacje, czyli zwarcie do
masy wlacza dany sygnal)
Wyjscia z komputera:
/Strobe =>
/AutoFeed =>
/Init =>
/SelectIN =>

Wejscia do komputera
/ACK <=
Busy <=
PaperEnd <=
Select <=
/Error <=

no i teraz pytanie - ktore do ktorych podlaczyc, kombinacji jest duzo :)
chyba pora przeniesc pytanie na pl.misc.elektronika albo pl.comp.pecet ?

PaPA

unread,
Apr 23, 2004, 4:56:43 AM4/23/04
to
BartekK wrote:
>>Musis zrobic 2 mostki ale nie pamietam dokladnie jakie.
>>Cos chyba, ze urzadzenie jest podpiete oraz, ze odebralo znak.
>
>
> tak wiec tez zaczelem czytac specyfikacje portu ;)
>
> interesujace sa nastepujace koncowki (/ oznacza negacje, czyli zwarcie do
> masy wlacza dany sygnal)
> Wyjscia z komputera:
> /Strobe =>
> /AutoFeed =>
> /Init =>
> /SelectIN =>
>
> Wejscia do komputera
> /ACK <=
> Busy <=
> PaperEnd <=
> Select <=
> /Error <=
>
> no i teraz pytanie - ktore do ktorych podlaczyc, kombinacji jest duzo :)
> chyba pora przeniesc pytanie na pl.misc.elektronika albo pl.comp.pecet ?
>
>

Chcac Ci pomodz podejzalem lekko swoja plytke i to co zobaczylem:

piny:
1 - pusty
2-9 - wyjscia
10 - pusty
11 - z masa
12-13 pusty
14-18 - pusty
19-25 - z masa

jest jeszcze jeden mostek - ale go nie widze skad-dokad.
z tego co pamietam bez tego mostka chodzi pod winda ale pod linuxem nie.

PaPA

0 new messages