QBasic i paralelni port (25,9)
Moderators: pedja089, stojke369, [eDo], trax, LAF
QBasic i paralelni port (25,9)
Pozdrav cijeloj ekipi!
Odmah na pocetku isprike, jer znam i na svojim forumima kad mi dolaze ljudi, regaju se - pitaju nesto sto je sto puta vec postavljeno i sl. Malo, ali doslovce malo sam pretrazio forum no nisam nasao, pa cu postaviti pitanje, nadam se da nece biti problema...
Naime, maturant sam ove godine... I radim iz struke rad "upravljanje električnim uređajima pomocu računala. Da bi pojasnio vama o čemu se točno radi, evo ovdje sheme:
http://img336.imageshack.us/img336/659/ ... ala2fk.gif
Shvatio sam otprilike kako to sve radi i sl. Ali imam problem kod upravljačkog programa kojeg trebam napisati primjerice u QBasicu. Da li ja uopće moram kupiti na shemi signal sa porta i na koji način ili ga samo moram poslati na port (u željeno vrijeme ili recimo pritiskom na neku tipku) pa da poteče struja sklopom?
Ako može mala pomoć, dobro bi mi došla
Unaprijed hvala svima
Odmah na pocetku isprike, jer znam i na svojim forumima kad mi dolaze ljudi, regaju se - pitaju nesto sto je sto puta vec postavljeno i sl. Malo, ali doslovce malo sam pretrazio forum no nisam nasao, pa cu postaviti pitanje, nadam se da nece biti problema...
Naime, maturant sam ove godine... I radim iz struke rad "upravljanje električnim uređajima pomocu računala. Da bi pojasnio vama o čemu se točno radi, evo ovdje sheme:
http://img336.imageshack.us/img336/659/ ... ala2fk.gif
Shvatio sam otprilike kako to sve radi i sl. Ali imam problem kod upravljačkog programa kojeg trebam napisati primjerice u QBasicu. Da li ja uopće moram kupiti na shemi signal sa porta i na koji način ili ga samo moram poslati na port (u željeno vrijeme ili recimo pritiskom na neku tipku) pa da poteče struja sklopom?
Ako može mala pomoć, dobro bi mi došla
Unaprijed hvala svima
A 25 mu sluzi za uzemljenje onda koje spajam na masu optocouplera?...buco wrote:Ne trebas "kupit" nikakv signal , to se vidi iz sheme ! onaj optocoupler je s diakom pa ti ne reba ni sinhro impuls s mreze .
Imas samo preko pina 9 ukljuci iskljuci diodu na optocoupleru ! 25==GND !
Znaci tvoj program treba samo postavljat 1 na pin 9 za ukopcat i 0 za iskopcat !!!
Pa jedinicu saljem putem paralelnog porta naredbom "OUT 888,255" ako se ne varam, a ako zelim nulu poslati, onda umjesto 255 napisem 0... Ako netko zna ili misli da grijesmi - neka me ispravi
tnx
Po ovoj slici dolje, port 9 ima binarnu vrijednost 128...
Dakle, ovako mogu njima upravljati:
gdje pritiskom na neku tipku pozivam funkciju D ili E, ovisno sto zelim... (CLS je tu smao radi reda da mi ocisti ekran pi ispisu svake poruke)
Dakle, ovako mogu njima upravljati:
Code: Select all
D CLS
BEEP: PRINT „Trošilo je upaljeno“
OUT 888,128
E CLS
BEEP: PRINT „Trošilo je ugašeno“
OUT 888,0
http://www.epanorama.net/circuits/parallel_output.html
imas tu programiranje paralelnog porta za dos, linux i windowse. ja sam nekoc pravio u visual basicu za windowse kontrolu 8 ledica preko paralelnog porta i to je radilo.
problem je sto windows operativni sistemi bazirani na NT tehnologiji (windows NT, 2k i XP) ne dozvoljavaju da se direktno radi sa portovima, nego ih operativni sistemski nadzire, te u tom slucaju OUT komanda ne pomaze !!!
klasicna OUT komanda radi na starijim windows sistemima kao sto je wondows 98, 95 ...
ja sam se s tim zaje...ao pa znam, te ti ovo govorim iz iskustva, da ne gubis vrijeme kao ja... ako ces program raditi za novije windowse, moras pribjeci drugim metodama...
imao sam negdje i source code za visual basic, te ti mogu poslati ako budes zainteresovan...
imas tu programiranje paralelnog porta za dos, linux i windowse. ja sam nekoc pravio u visual basicu za windowse kontrolu 8 ledica preko paralelnog porta i to je radilo.
problem je sto windows operativni sistemi bazirani na NT tehnologiji (windows NT, 2k i XP) ne dozvoljavaju da se direktno radi sa portovima, nego ih operativni sistemski nadzire, te u tom slucaju OUT komanda ne pomaze !!!
klasicna OUT komanda radi na starijim windows sistemima kao sto je wondows 98, 95 ...
ja sam se s tim zaje...ao pa znam, te ti ovo govorim iz iskustva, da ne gubis vrijeme kao ja... ako ces program raditi za novije windowse, moras pribjeci drugim metodama...
imao sam negdje i source code za visual basic, te ti mogu poslati ako budes zainteresovan...
Strong SRT 6155
DISEqC 1.2 Motorized H-H Motor
DISEqC 1.2 Motorized H-H Motor
..........
eto ti primjer za LPT u VB 6.0!instrumentom lako izmjeris napone na pojedinom pinu, meni primjer bolje dode od bilo kakvog objasnjenja,pa ako bude od koristi!
http://www.elektronika.ba/forum/uploadz ... playem.rar
http://www.elektronika.ba/forum/uploadz ... playem.rar
Bolje stavi da bude pin 1 nego 9,
Prost primer:
10 CLS /BRISE EKRAN
20 OUT &H378,0 NA LPT SALJE NULU
30 IF TIME$ 19:45:00 GOTO 70 /PITA DA LI JE TO VREME AKO NIJE IDE DALJE
40 OUT &H378,1 /NA LPT SALJE 1
50 END /KRAJ
70 SLEEP 5 /ZAUSTAVLJA SE U TRAJANJU OD 5sekunde
80 OUT &H378,1
90 END
Ako ti treba jos nesto pitaj konkretno...
Pozz
Prost primer:
10 CLS /BRISE EKRAN
20 OUT &H378,0 NA LPT SALJE NULU
30 IF TIME$ 19:45:00 GOTO 70 /PITA DA LI JE TO VREME AKO NIJE IDE DALJE
40 OUT &H378,1 /NA LPT SALJE 1
50 END /KRAJ
70 SLEEP 5 /ZAUSTAVLJA SE U TRAJANJU OD 5sekunde
80 OUT &H378,1
90 END
Ako ti treba jos nesto pitaj konkretno...
Pozz
Bok ekipa... Nije me bilo, malo ucio i evo napravio sklop... Sada jos samo isprogramirati... JA sam to ovako napravio:
Otprilike sada, mislim da mi je to zadnja verzija programa... Ali mi nesto ne radi, ne razumijem u cemu je problem... Sutra ujutro izlazim na obranu rada, pa cu valjda proci. A i citao sam na netu da XP ne dozvoljava manipulaciju paralelnim portom...
Code: Select all
10 CLS
20 PRINT ""
PRINT "- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "
PRINT " Za paljenje trosila pritisnuti 1 (jedan)"
PRINT " Za gasenje trosila pritisnuti 0 (nula)"
PRINT " Za kraj programa pritisnuti 5 (pet)"
PRINT "- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "
PRINT ""
PRINT ""
PRINT ""
INPUT "Unesite zeljenu naredbu: ", A$
IF A$ = "1" THEN GOTO 40
IF A$ = "0" THEN GOTO 50
IF A$ = "5" THEN GOTO 60 ELSE GOTO 10
40 PRINT ""
PRINT ""
PRINT ""
PRINT ""
PRINT ""
PRINT "_________________________ "
BEEP: PRINT " TROSILO JE UPALJENO !"
OUT &H378, 128
SLEEP 10
GOTO 10
50 PRINT ""
PRINT ""
PRINT ""
PRINT ""
PRINT ""
PRINT "_________________________ "
BEEP: PRINT " TROSILO JE UGASENO !"
OUT &H378, 0
SLEEP 10
GOTO 10
60 CLS
PRINT ""
BEEP: PRINT " Hvala na koristenju programa!"
SLEEP 5
GOTO 70
70 END
Otprilike sada, mislim da mi je to zadnja verzija programa... Ali mi nesto ne radi, ne razumijem u cemu je problem... Sutra ujutro izlazim na obranu rada, pa cu valjda proci. A i citao sam na netu da XP ne dozvoljava manipulaciju paralelnim portom...
- MladaNada
- Stariji član
- Posts: 2529
- Joined: 20-05-2006, 14:57
- Location: Banja Luka RS , Novi Sad RS , Herceg Novi CG
Samo , prije kraja stavi melodiju da uljepsas program.
Umjesto komande "input" stavi komandu da odmah po pritisku na dugme izvrsi naredbu tj. bez pritiskanja entera , ja sam zaboravio koja je to naredba
Potrudio si se oko ovog , svaka cast
Dodaj tajmer , da se uredjaj ukljuci i onda iskljuci za onoliko vremena koliko korisnik unese!
Umjesto komande "input" stavi komandu da odmah po pritisku na dugme izvrsi naredbu tj. bez pritiskanja entera , ja sam zaboravio koja je to naredba
Potrudio si se oko ovog , svaka cast
Dodaj tajmer , da se uredjaj ukljuci i onda iskljuci za onoliko vremena koliko korisnik unese!
mislis na ovo:MladaNada wrote: Umjesto komande "input" stavi komandu da odmah po pritisku na dugme izvrsi naredbu tj. bez pritiskanja entera , ja sam zaboravio koja je to naredba
Code: Select all
A$=INKEY$
tnx svima...
Re: QBasic i paralelni port (25,9)
kako bi se u qbasicu napravio kod da kad nesto stisnem on meni prikaze vrijeme