AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Operator not applicable to this operand type
Thema durchsuchen
Ansicht
Themen-Optionen

Operator not applicable to this operand type

Ein Thema von flomei · begonnen am 3. Dez 2003 · letzter Beitrag vom 3. Dez 2003
Antwort Antwort
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#1

Operator not applicable to this operand type

  Alt 3. Dez 2003, 02:23
Hallo!
Ich habe versucht einen C# () Quelltext nach Delphi zu portieren. Es scheint mir auch fast gelungen zu sein.
Doch ein Problem besteht.
Folgendes: Ich lese Daten über den LPT Port ein und vergleiche diese dann um so ganz ganz am Ende eine Temperatur zu erhalten (wenn es denn geht was ich da geschrieben habe... ).

Ich erhalte aber immer die Fehlermeldung:
Zitat:
Operator not applicable to this operand type
bei folgendem Code Ausschnitt:
Delphi-Quellcode:
    if PortIn($379) AND $64 = $64 then byteW := 128;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 64;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 32;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 16;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 8;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 4;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 2;

    PortOut($37a, 1);
    PortOut($37a, 0);

    if PortIn($379) AND $64 = $64 then byteW := byteW + 1;

    PortOut($37a, 1);
Bei allen Vergleichen erhalte ich diese Fehlermeldung. Wo liegt der Fehler? Habe schon in der OH geguckt aber weitergeholfen hat mir das nicht wirklich...

Danke im Vorraus!

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: Operator not applicable to this operand type

  Alt 3. Dez 2003, 02:33
Dann liegt der Fehler doch hier:

if PortIn($379) AND $64 = $64 then Denn ansonsten ist der Code identisch und du setzt den anderen Kram anhand dieser Bedingung. Nun meine Fragen: Warum machst Du das in C# und fragst hier ? Woher kommen diese Port Adressen ? Welche Temperatur und welches Gerät soll benutzt werden ?

Last but not least: warum läßt Du $64=$64 nicht einfach weg ? Das gibt immer true.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Operator not applicable to this operand type

  Alt 3. Dez 2003, 02:37
Nein. Das hast du jetzt falsch verstanden!
Ich habe hier C# Quelltext den ich versuche zu übersetzen.
Die Portadressen stammen vom Einlesen der Daten eines IC´s.
Welche Temperatur? Das will ich ja gerade wissen...
Gerät? Verstehe nicht was du mit Gerät meinst. Der IC ist ein LM75 mit integriertem AD Wandler...

MfG Florian

P.S.: Immer true wäre sehr schlecht!
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#4

Re: Operator not applicable to this operand type

  Alt 3. Dez 2003, 02:48
Klammer mal den Spass dann sollte es funzen
Code:
if [color=red][b](([/b][/color]PortIn($379) AND $64[color=red][b])[/b][/color] = $64[color=red][b])[/b][/color] then
// ^^^^^^<--- wenn das 'ne Funktion ist , die 'nen Byte zurückgibt
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Operator not applicable to this operand type

  Alt 3. Dez 2003, 03:02
Geht immer noch nicht. Was kann das denn noch sein?

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#6

Re: Operator not applicable to this operand type

  Alt 3. Dez 2003, 03:20
Zitat von Leuselator:
Klammer mal den Spass dann sollte es funzen
Wie denn ? AND übersehen ??
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz