AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TComPort - TXD

Ein Thema von CaptainAwsome · begonnen am 25. Sep 2009 · letzter Beitrag vom 7. Okt 2009
Antwort Antwort
CaptainAwsome

Registriert seit: 12. Jul 2008
8 Beiträge
 
#1

TComPort - TXD

  Alt 25. Sep 2009, 19:30
Hallo,
ich hoffe ich hab das richtige Unterforum für die Frage gefunden.

Ich hab mir das 'Lernpaket MSR mit dem PC' von Franzis gekauft und direkt ein paar Schaltungen gesteckt und die beiliegenden Programme dafür benutzt.
Diese sind allerdings in Visual Basic programmiert und der Quellcode liegt bei.
Da ich mich aber nicht in VB einarbeiten will, weil ich mich mit Delphi inzwischen gut zurecht komme wollte ich die Programme einfach analog in Delphi übertragen.
Dafür habe ich mir TComPort installiert(das 10er Package). Damit hab ich es jetzt auch schon geschaft über den DTR und RTS Pin eine LED zum leuchten zu bekommen.
Im Lernpaketprogramm geht das auch über TXD, leider hab ich das noch nicht hinbekommen weil ich keinen Befehl für hab.
Bei -> http://www.hsg-kl.de/faecher/inf/msr...owo04/TCPD.php hab ich gesehn, dass es eigentlich eine procedure gibt, die TXD ansteuert, allerdings funktioniert die bei mir nicht bzw existiert nicht. Hab auch schon versucht einfach die procedure von der genannten Seite zu kopieren, aber das geht leider auch nicht.
Muss ich evtl. ein anderes package installieren?
Hoffe mir kann jemand helfen

PS: Ich habe relativ ausführlich mein Problem geschildert, da ich mich nur Hobbymäßig damit beschäftige kenn ich mich nich bei allem so super aus und hab zu vielem nur Halbwissen, deswegen fände ich es nett, wenn auch ihr eure Antworten so formulieren könntet, dass auch Halblaien sie verstehen.
  Mit Zitat antworten Zitat
Klaus01
Online

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: TComPort - TXD

  Alt 25. Sep 2009, 19:53
.. aber unter dem angegeben Link ist doch ein komplettes TComPort zu finden?

Wo ist denn da das Problem?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
CaptainAwsome

Registriert seit: 12. Jul 2008
8 Beiträge
 
#3

Re: TComPort - TXD

  Alt 25. Sep 2009, 20:52
Hab das mal kopiert und eingebunden, da funktioniert schon direkt das Port öffnen nicht -> "Project LED.exe raised exception class EAccessVilation with message 'access violation at address 0044D8C2 in module 'LED.exe'. Read of address 00000004'. Process stopped. use Step or Run to continue.

Edit: Habs mir mal angeguckt, das liegt glaub irgendwie daran, dass mit ComPort.Open, PortHandle verglichen wird, ohne dass PortHandle je einen Wert zugewiesen bekommen hat. Ich weiß aber auch nicht wo und wie ich das machen muss.
  Mit Zitat antworten Zitat
Klaus01
Online

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: TComPort - TXD

  Alt 25. Sep 2009, 21:30
.. mit welcher Delphi-Version arbeitest Du denn?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
CaptainAwsome

Registriert seit: 12. Jul 2008
8 Beiträge
 
#5

Re: TComPort - TXD

  Alt 25. Sep 2009, 21:52
Delphi7
  Mit Zitat antworten Zitat
Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: TComPort - TXD

  Alt 25. Sep 2009, 22:13
Hatte mal nen ähnliches Problem...

Das hier war meine Lösung: http://www.delphipraxis.net/internal...t.php?t=136188
Hoffe das hilft auch dir!

Gruß vom LDer.
"Clicking this button you agree with our Verantwortungsverzicht und Abkommen."
Zitat von Ein unentschlossener Programmierer:
Enabled:=true or false or true or false or true or false;
  Mit Zitat antworten Zitat
CaptainAwsome

Registriert seit: 12. Jul 2008
8 Beiträge
 
#7

Re: TComPort - TXD

  Alt 25. Sep 2009, 22:46
Da ist nur leider keine procedure zum ansprechen von TXD enthalten. Und um mir die selber zu schreiben blick ich da noch nicht genug durch.

EDIT: Ok habs mit der TComPort von der Inetseite hinbekommen.
Eine Sache interessiert mich noch:

der Befehl
ComPort := TComPort.Create(2); funktioniert im gegensatz zum Befehl:
 ComPort := TComPort.OpenCom('COM2'); Obwohl der 1. Befehl auch nur folgendes hervorruft:
Delphi-Quellcode:
constructor TComport.Create (AutoInit : Integer);
begin
 case AutoInit of
  1 : OpenCOM('COM1');
  2 : OpenCOM('COM2');
  end; {CASE}
end;
Weil mit dem Create kann ich nur COM1 und 2 ansteuern, mit OpenCom jeden beliebigen. Gibt es eine Möglichkeit irgendwie direkt OpenCom aufzurufen? Natürlich könnte ich auch einfach AutoInit mit mehr Zahlen erweitern, aber das is irgend wie ne unsaubere Lösung.
  Mit Zitat antworten Zitat
Klaus01
Online

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: TComPort - TXD

  Alt 26. Sep 2009, 10:05
Guten Morgen,

so wäre der Befehl zum Öffnen richtig:
ComPort.OpenCom('COM2'); Den kannst Du aber solange nicht aufrufen wie die
Instanz ComPort noch nicht erzeugt wurde.

Rein theoretisch sollte es auch so gehen
(ohne am Quelltext von uComPort.pas etwas zu ändern):

Delphi-Quellcode:
ComPort := TComPort.Create(5);
ComPort.OpenCom('COM5');
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#9

Re: TComPort - TXD

  Alt 26. Sep 2009, 14:13
Zitat von CaptainAwsome:
Da ist nur leider keine procedure zum ansprechen von TXD enthalten. ...
Hallo,

vielleicht suchst du das Falsche - TxD kann man nicht auf 0 oder 1 setzen, sondern über TxD kann man nur Zeichen senden. Ich kenne TComport nicht, weil ich eigene Komponenten für COM schreibe, aber es muss da eine Methode "Senden" geben oder 2 davon, eine für ein char und eine für Strings. Solange man nichts sendet, ist TxD immer 1.

Gruss Reinhard
  Mit Zitat antworten Zitat
CaptainAwsome

Registriert seit: 12. Jul 2008
8 Beiträge
 
#10

Re: TComPort - TXD

  Alt 7. Okt 2009, 07:29
Habs hinbekommen, in der verlinkten Komponente ist so eine Methode enthalten.
Trial and Error ist eine legitime Lernmethode, oder so ähnlich hat nen Lehrer von mir immer gesagt xD
Das Problem dabei ist leider nur, dass ich dadurch oft nur sehr grob weiß was ich mache obwohl ichs eigentlich gern richtig verstehen würde :/
  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 12:28 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