On Wed, 12 Nov 2003, Daniel Mroz wrote: > > Mam klopot. Chce zrobic sterowanie urzadzeniem z kompa. Wumyslilem > > sobie, ze mozna uzyc do tego portu rownoleglego. Jest tam 8 lini danych > > d0-d7 dzieki ktorym mozna by otwierac i zamykac 8 obwodow. Tu misja > > rozwidla sie na dwa problemy: > > 1). Jak w PLD zapalac i gasic linie danych na wybranym porcie rownoleglym. > > 2). Czy ktos widzial schemat tego typu urzadzenia? > > Bardziej zalezy mi na odpowiedzi na pierwsze. Z drugim poradze sobie nie w > > ten to w inny sposob > Pogooglaj, powinienes wpasc na kilka gotowych rozwiazan. Kiedys w > bodajrze Linux+ byl przyklad oprogramowania portu rownoleglego w C, mam > w domu ten numer, wiec jakby co sluze pomoca. Podejrzewam jednak, ze w > Internecie znajdziesz bardziej szczegolowe informacje na ten temat. > Co do schematu, to kiedys zaprojektowalem sobie cos takiego pod port > rownolegly. Obawiam sie, ze juz nie znajde schematu, ale projekt byl > banalnie prosty (na TTLach), wiec nie sadze zebys potrzebowal pomocy w > tej kwestii :) >
Bezposrednio do D0-D7 podepnij wejscia ukladu np. 7406. Bedziesz mial na wyjsciu otwarty kolektor ktory spokojnie wysteruje np. przekaznik podciagniety do 12V (nie zapomnij o diodzie rownolegle do przekaznika). A pozniej cos w stylu : #define LPT_PORT 0x378 #define RESET_TIME 5 #include <sys/io.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> int lpt_reset () { if ( ioperm ( LPT_PORT, 1, 1 ) == 0 ) { outb ( 1, LPT_PORT ); sleep ( RESET_TIME ); outb ( 0, LPT_PORT ); ioperm ( LPT_PORT, 1, 0 ); return 0; } else { fprintf ( stderr, "ERROR: ioperm ()\n" ); exit ( EXIT_FAILURE ); }; return -1; } main () { lpt_reset (); }; To akurat wystawia najpierw "1" na D0 outb (1,...) a po 5 sekundach 0 outb (0,....). pozdro., Radek -- --------------------------------------------------------------------- Media-Com Sp. z o.o. 43-100 Tychy, ul. Długa 19 http://www.media-com.com.pl/ [EMAIL PROTECTED] --------------------------------------------------------------------- _________________________________________ http://pld-linux.org/ = faq, howto, newsy dostales tutaj odpowiedz na swoje pytanie? podziel sie z innymi i dopisz do FAQ! http://pld-linux.org/FAQ/