Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Info Coronavirus/Vaccinare vs Fake News

Indiana Jones and the Dial of Des...

Ariston Genus One 24kw - sa o aru...

Robot smart cu comanda vocala goo...
 Moduri de a evita anumite persoane

Panouri pe acoperis cu horn

Transformers: Rise of the Beasts ...

Hatufim - Prizonieri de razboi
 Receiver AV 8K

rog un pic de ajutor in legatura ...

Ce defect sa fie ( centrala nu at...

Jocuri - Generals si Generals Zer...
 Video Night mode

Mp5 player auto

Nu-mi vede pc-ul telefonul

Centrala pe peleti Fornello
 

inpout32.dll & vb6

- - - - -
  • Please log in to reply
6 replies to this topic

#1
MembruAnonim

MembruAnonim

    MembruAnonim

  • Grup: Banned
  • Posts: 293,677
  • Înscris: 08.10.2015
salut!

inainte de toate, vreau sa spun ca nu stiu programare!!!

m-am apucat si eu de programarea portului paralel in vb6 (ca in delphi mi-a dat cu virgula :0 ) si am inteles ca trebuie un dll (inpout32) pentru a face programe care functioneaza si in XP
toate bune si frumoase... m-am apucat sa fac un program, care surprinzator merge, dar merge doar pe un singur port.
eu am pus 8 led-uri pe portul paralel si daca vreau sa aprind ledul 1, scriu comanda Out &H378, &H1 iar pentru a stinge ledul, Out &H378, &H0
pentru a aprinde ledul 2 este &H9 parca.... si tot asa mai departe
DAR
daca ledul 1 e aprins si dau comanda cu H9, se aprinde ledul 2 si se stinge ledul 1. daca ar fi doar 2 comenzi, s-ar putea face o conditie.. dar sunt 8 porturi!!! sunt o gramada de combinatii si nu prea am cunostintele necesare pentru atatea conditii...

in fine.. ce vreau eu: sa ma ajutati intr-un fel si sa-mi explicati cum sa fac un algoritm sa comande porturile independent unul de altul... se poate SIGUR deoarece a facut-o un prieten de-al meu, dar nu vrea sa dea sursa... secret profesional :rolleyes:

daca este cineva care a inteles ce am vrut sa zic si e dispus sa ma si ajute, eventual sa explice, dau o bere, doua, cate cere  :cya:

multumesc pentru timp! :yeah baby

#2
MembruAnonim

MembruAnonim

    MembruAnonim

  • Grup: Banned
  • Posts: 293,677
  • Înscris: 08.10.2015
ce naiba.. nu s-a lovit nimeni de problema asta? sau nu are nimeni chef de explicat? :)
va rog, oameni buni, ajutati-ma!

#3
cata_op

cata_op

    New Member

  • Grup: Members
  • Posts: 6
  • Înscris: 08.03.2004
Trimite-mi sursele tale la [email protected]
Si eu am incercat sa fac chestia in Xp dar nu prea mi-a iesit.
Eu mai stiu cate ceva de Vb asa capoate impreuna reusim sa facem ceva!
Salutare.
Catalin!

#4
[email protected]

[email protected]

    Active Member

  • Grup: Members
  • Posts: 1,225
  • Înscris: 07.08.2003
NU stiu exact cum e in vb, dar ideea de baza ar fi cam urmatoare (asta in cazul in care n-ai rezolvat problema deja).

Comanda: Out &H378, &H1   trimite pe portul paralel valoarea: 00000001(B) ceea ce duce la aprinderea primului led si stingerea celorlalte

Comanda: Out &H378, &H2   trimite pe portul paralel valoarea: 00000010(B) ceea ce duce la aprinderea celui de al doilea led si le stinge pe celelalte

Comanda: Out &H378, &H0   trimite pe portul paralel valoarea: 00000000(B) ceea ce duce la stingerea tuturor ledurilor.

Pentru a aprinde si ledul 1 si ledul 2 trbuie sa transmiti pe portul &H378 valoarea: 00000011(B)=&H3=&H1 "or logic" &H2

Nu stiu cum se face acel "or logic" in vb6, dar ideea de baza asta ar fi:

ledul1=&H1;
ledul2=&H2;
ledul3=&H4;
ledul4=&H8;
ledul5=&H10;
ledul6=&H20;
ledul7=&H40;
ledul8=&H80;

pentru a aprinde mai multe leduri trimiti o valoare combinata cu "or logic".

Un ultim exemplu (cu riscul de a ma repeta):

Pentru a aprinde ledul 2 si 4: OUT &H378,&H2 "or logic" &H8

#5
hErr

hErr

    Member

  • Grup: Members
  • Posts: 738
  • Înscris: 16.12.2003
pai atunci e simplu. in VB OR-ul boolean estei si OR logic (pe biti).
deci daca vrei sa aprinzi ledul 1 si 2 simultan tr sa apelezi:

Out &H378, &H1 Or &H9

hot tip: construieste-ti o functie cu 8 parametri booleeni care iti intoarce valoarea codificata pe biti, corespunzator celor 8 porturi. ceva de genul:

Function StareLeduri(bLed1 as boolean, bLed2 as boolean, ...) as Long

#6
MembruAnonim

MembruAnonim

    MembruAnonim

  • Grup: Banned
  • Posts: 293,677
  • Înscris: 08.10.2015
s-a rezolvat :D
a fost destul de simplu... pt bitul 3 citeam starea portului parallel si adaugam 4 ;)

#7
codreanumihai

codreanumihai

    New Member

  • Grup: Members
  • Posts: 1
  • Înscris: 07.06.2005
Salut
Am si eu nevoie de ceva asemanator ... tot in vb6. Trebuie sa scot o tensiune continua pe LPT pe care sa o pot porni si opri dupa bunul plac. Daca crezi ca sursa ta ma poate ajuta... trimite-mi-o si mie te rog la [email protected].
Multumesc anticipat!  B)

Anunturi

Chirurgia spinală minim invazivă Chirurgia spinală minim invazivă

Chirurgia spinală minim invazivă oferă pacienților oportunitatea unui tratament eficient, permițându-le o recuperare ultra rapidă și nu în ultimul rând minimizând leziunile induse chirurgical.

Echipa noastră utilizează un spectru larg de tehnici minim invazive, din care enumerăm câteva: endoscopia cu variantele ei (transnazală, transtoracică, transmusculară, etc), microscopul operator, abordurile trans tubulare și nu în ultimul rând infiltrațiile la toate nivelurile coloanei vertebrale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate