PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Eingänge des Druckerports



CorsaGSI16V
22.07.2005, 19:55
Hallo,
ich bin neu hier und hab da gleich mal eine Frage, und zwar bin ich grad am Programm schreiben für meine Relaiskarte!
Das ansteuern der Ausgänge ist kein Problem nur wie kann ich die Eingänge auswerten wenn Pin 15 wenn er einzeln geschalten ist 255 z.b ausgibt und der Pin 10 einzeln z.b. 100 ausgibt. Also einzeln auswerten wäre kein Problem da könnte ich ja mit den Zahlen 255 und 100 arbeiten! Nur wenn ich jetzt bei gleichzeitig schalte kommt ja wieder etwas anderes raus! wie kann ich das machen???
Ich arbeite übrigens unter Delphi!!!

Wäre super wenn einer helfen könnte!
MfG
Christian

Marco78
22.07.2005, 20:17
Ich denke mal du liest da eine Adresse aus. Und ich denke mal, die ist 8 Bit lang. Wenn du dir das ganze mal binär vorstellst wir es evtl klarer wie die dezimalen Zahlen entstehen.
Ich muss dazu sagen das ich nicht weiss ob es tatsächlich so ist, aber gehe mal ganz stark davon aus.
Von Delphi hab ich nicht viel Ahnung, aber in anderen Sprachen gibt es logische Verknüpfungen wie AND, OR, XOR usw... Damit können dann einzelne Bits gesetzt werden. Ich weiss ja auch nicht wie gut deine Programmierkenntnisse sind.

00000001 = 1
11111111 = 255
10000001 = 129
10000010 = 130
10000011 = 131
Mal ein paar Beispiele für binär <--> dezimal.
Wenn die Adresse $379 wäre, könnte jede binäre Stelle einem Pin zugeordnet sein. Mit etwas probieren wirst du bestimmt einen Zusammenhang finden.

Ist vielleicht nicht die absolute Hilfe die du gesucht hast, aber ich denke es ist schonmal ein großer Denkanstoß.

CorsaGSI16V
22.07.2005, 20:19
Ja ist schon ein guter Anfang genau das meine ich nur wie komme ich von 10000001 auf 129??

MfG
Christian

Marco78
22.07.2005, 20:28
00000001 = 1
00000010 = 2
00000100 = 4
00001000 = 8
00010000 = 16
00100000 = 32
01000000 = 64
10000000 = 128

10000001 = 129

Du musst einfach nur die Zahlen addieren wozu die 1 steht. Ist so vielleicht etwas blöd erklärt, aber ist trotzdem so :D

CorsaGSI16V
22.07.2005, 20:44
ok ist kapiert danke werds probieren!
Wenns nicht klappt melde ich mich wieder!

Danke