Avatar billede simtex Nybegynder
29. juni 2002 - 12:52 Der er 2 kommentarer og
1 løsning

Simpel styring af LPT port

Hej, jeg leder efter en relativ simpel source code til styring af LTP porten, og jeg håber der er nogen der ligger inde med sådan en. Jeg ved godt at den ikke kan blive helt simpel da man skal have gang i nogle dll-filer eller lignende, men jeg håber alligevel der er nogen der kan hjælpe!

Jeg skal bruge det til at styre et lille print kort med 8 udgange så de pins de er tilsluttet skulle jeg gerne kunne sende til...Et program der ligner meget det jeg gerne vil have koderne til ligger her: http://www.brinck.dk/filer/LptIO.zip (tror ikke det er lavet i VB, men alligevel).

PS. programmet skal gerne virke i win2k, ved godt det er en ekstra udfordring, men ellers har jeg ikke så megen gavn af det...
Avatar billede jespernaur Nybegynder
29. juni 2002 - 16:23 #1
Der er en masse information her:

http://www.lvr.com/parport.htm

Måske kan du bruge noget af det
Avatar billede driis Nybegynder
29. juni 2002 - 19:38 #2
Ja, du skal bruge en DLL. En sådan (som også virker i Win2K) kan du hente her:
http://www.driis.mobilixnet.dk/port95nt.zip

Du skal køre EXE filen, som så installerer den DLL du har brug for, på dit system. Hvis du skal distribuere dit program, skal du bare sørge for, at brugeren også har den relevante DLL fil i sit Windows\System32 bibliotek.

Der er forklaring med til DLL filen, og det skulle være ret nemt at finde ud af. Det, du har brug for, er at kunne skrive en enkelt byte ad gangen til LPT porten, og det kunne eksempelvis gøres ved at deklarere funktionen Outp i et modul:

Public Declare Sub Outp Lib "dlportio.dll" Alias "DlPortWritePortUchar" (ByVal Port As Long, ByVal Value As Byte)

For at sætte de enkelte databen højt eller lavt nu, skal du bare bruge Outp til at sende en værdi til den rette port. LPT1 er på de allerfleste systemer 378 (hexadecimalt), så denne værdi skal du bruge som parameteren Port. De 8 databen på parallelporten svarer til de 8 bits i en byte. Den værdi du skal sende for at sætte +5v på alle ben er derfor 255 idet det binært svarer til 11111111. For at slukke alt sender du 0, for at tænde første databen sender du 1, og så fremdeles. Kommandoen for at sætte alle ben til høj er således:

Outp &H378,255

Hvis du er i tvivl om hvilke ben på porten, der er databen, kan du kigge her:
http://www.driis.mobilixnet.dk/pport.jpg

Håber, du kan bruge det !
Avatar billede simtex Nybegynder
30. juni 2002 - 23:04 #3
Tak for hjælpen driis det var lige netop det du kom med der jeg har ledt efter på så mange sider. Jeg ved der er forholdsvis simpelt men derfor er det jo ikke nødvendigvis nemt at finde på nettet eftersom alle går op i advancerede ting....Så endnu engang tak!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester