Autor Beitrag
angel324
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 17.05.05 08:11 
Hallo,
ich möchte mit Hilfe 2er Lichtschranken und meines PC die Geschwingkeit meine Ferngesteuerten Autos Messen.
Nun meine Frage:
Wie kann ich die Lichtschranke am bessen an meinen Pc anschließen? (Ich dachte mir über den Parallelport?)
Und sie andere Frage wie überwache ich mir Delphi den Parallelport?

Ich danke euch jetzt schon mal für eure Hilfe.

Gruß

Mathias
Hansi@OMG
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 304

Vista
Delphi 2006 Prof., Lazarus
BeitragVerfasst: Di 17.05.05 08:20 
Hier ein bisschen Code aus dem Swissdelphicenter. Habs noch nicht getestet, müsste aber wie immer funktionieren.
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
procedure Out32(portadresse: Word; wert: Byte);
var
  val: Byte;
begin
  val := Byte(wert);
  asm
    push dx
    mov dx,portadresse
    mov al,val
    out dx,al
    pop dx
  end;
end;

function Inp32(portadresse: Word): Byte;
var
  val: Byte;
begin
  asm
    push dx
    mov dx,portadresse
    in al,dx
    mov val,al
    pop dx
  end;
  Inp32 := Byte(val) and $00ff;
end;


// Example/Beispiel:

  Out32($3780)  {= Dataport all 8 Bit Low}
  Out32($378, (Inp32($378or 1); {Dataport Bit 1 High}
  Out32($378, (Inp32($378and 254);  {Datap. Bit 1, Low}

_________________
Who doesn't know the Micrsoft developer "Mahatma Fatal Error"?
Muetze1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 346



BeitragVerfasst: Di 17.05.05 11:29 
Moin!

user profile iconHansi@OMG hat folgendes geschrieben:
Hier ein bisschen Code aus dem Swissdelphicenter. Habs noch nicht getestet, müsste aber wie immer funktionieren.


Ja, aber nur unter Windows 9x und ME, da ab NT direkter Hardwarezugriff verboten ist und entsprechend von Windows auch bestraft wird...

Und selbst unter Win9x/ME ist dieser direkte Zugriff strafbar, da du den Windows Funktionen - u.a. dem Parallelporttreiber, dem Spooler etc dazwischen funkst. Nutze lieber die vorhandenen WinAPI Funktionen!

MfG
Muetze1

_________________
49 63 68 68 61 62 65 6B 65 69 6E 65 41 68 6E 75 6E 67 21
angel324
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 21.05.05 13:42 
Ja das habe ich auch herrausgefunden.
Ich habe auch herrausgefungen das ich eine Treiber brauch und zwar den io.dll. (den habe ich auch schon)
Aber wie überwache ich jetzt mit dem Treiber und Delphi einen einzelnen Pin solange bis ein Stomenpluz kommt?

Mathias