C++ Builder 2006: Serielle Schnittstelle???
-
Hallo Leute,
ich benutzt derzeit den BCB 6, frage mich aber, ob der neue 2006er die serielle Schnittstelle endlich als vorgefertigte Komponente enthält.
Bei Microsofts neuem Visual C++ Express ist das nämlich schon drin, soweit ich das gesehen habe.
Grüße
RMone :xmas1:
-
AFAIK hat er das nicht, aber es gibt ja Bibliotheken für diesen Zweck, z.B. die hier.
RMone schrieb:
Bei Microsofts neuem Visual C++ Express ist das nämlich schon drin, soweit ich das gesehen habe.
Auch für natives Win32 oder nur im .NET-Framework?
-
Servus!
Über das MS Visual C++ Express kann ich nicht viel sagen.
(Kostenlos bei Microsoft downloaden!)
Es war mir zu unübersichtlich.
Außerdem bin ich von der Schule her eher mit dem Borland Builder vertraut.Ich habe MSVC++ nur mal kurz ausprobiert und da recht schnell die Komponente Serielle Schnittstelle gefunden.
Klar, die empfohlene Bibliothek werde ich demnächst mal ausprobieren - müssen!!!
(Die codeproject-Seite ist speziell für MS-User, wie mir scheint!?)Aber eigentlich sollten es doch auch die großen Compilerhersteller fertig bringen, diese Funktionalität in ihren Produkten zu integrieren!
Grüße
RMone :xmas2:
-
Warum sollten sie die jetzt aufnehmen, wo die RS232 am sterben ist? Ist doch an vielen Computern schon nicht mehr dran.
:xmas2:
-
Hey,
bin auch der Meinung, dass der Compilerhersteller die Packete anbieten sollte. Die Schnittstelle stirbt noch nicht aus. In den Industireanlagen ist sie sehr häufig zu finden. Um Module anzusteuern ist es oftmals erforderlich hierfür Windows-Programme zu schreiben die auf diese Schnittstelle zugreift. Gut das einige noch Bibliotheken anbieten.
-
Radian schrieb:
Hey,
bin auch der Meinung, dass der Compilerhersteller die Packete anbieten sollte.Also ich bin der Meinung ein Compilerhersteller sollte sich um einem guten Compiler bemühen. Dreingaben wie die Abstraktion von Betriebssystem API-Aufrufen sind zwar schön, aber bei weitem nicht nötig.
Abgesehen davon, dass es nicht wirklich schwer ist, die RS232-Schnittstelle anzusteuern mit WinAPI, gibt es doch massenhaft beispiele und Implementierungen? Velleicht nicht so easy to use wie ne Komponente aufs Form klatschen aber das Instanzieren einer Klasse müsste wohl doch drin liegen oder?
-
audacia schrieb:
AFAIK hat er das nicht, aber es gibt ja Bibliotheken für diesen Zweck, z.B. die hier.
@audacia: hast du diese Bibliothek schon mal im BCB6 eingebaut?
Schon alleine das Einbinden mit zum Projekt hinzufügen, ohne eine weitere Zeile Code ist alles andere als toll!
Zum Versuch compiliere man das ganze und erhalte folgende tolle Fehlermeldungen:[C++ Fehler] crtdbg.h(52): E2268 Aufruf der undefinierten Funktion '_T'
[C++ Fehler] crtdbg.h(52): E2034 Konvertierung von 'int' nach 'const char *' nicht möglich
[C++ Fehler] crtdbg.h(52): E2340 Keine Übereinstimmung des Typs beim Parameter 2 ('const char *' erwartet, 'int' erhalten)
[C++ Fehler] Serial.cpp(130): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(130): E2451 Undefiniertes Symbol '_CRT_WARN'
[C++ Fehler] Serial.cpp(184): E2451 Undefiniertes Symbol '_CRT_WARN'
[C++ Fehler] Serial.cpp(184): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(203): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(219): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(249): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(276): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(282): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(299): E2451 Undefiniertes Symbol '_CRT_WARN'
[C++ Fehler] Serial.cpp(299): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(332): E2451 Undefiniertes Symbol '_CRT_WARN'
[C++ Fehler] Serial.cpp(332): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(344): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(364): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(384): E2451 Undefiniertes Symbol '_CRT_WARN'
[C++ Fehler] Serial.cpp(384): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(396): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(419): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(439): E2451 Undefiniertes Symbol '_CRT_WARN'
[C++ Fehler] Serial.cpp(439): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(451): E2268 Aufruf der undefinierten Funktion '_RPTF0'
[C++ Fehler] Serial.cpp(451): E2228 Zu viele Fehlermeldungen oder WarnungenGeil, oder!?
Ich fürchte da läuft was schief.
Schließlich kommt die Lib ja auch von der VC++ Seite!Gibt es keine vergleichbare Bibliothek für Borland?
Hab kein Bock, das alles selbst du schreiben!Grüße
RMone
-
[quote="RMone"]
audacia schrieb:
...Gibt es keine vergleichbare Bibliothek für Borland? Hab kein Bock, das alles selbst du schreiben!
Klar, ist dabei - und zum Entwickeln unter der Entwicklungsumgebung auch noch
kostenlos... und zwar auf der DVD für C++/Delphi Komponenten anderer VCL
Bibliotheken Hersteller - von der Firma TMS, einbinden und loslegen - Fertig!Guckst Du hier: http://www.tmssoftware.com/d2006/tmsasync32d2006.zip
Später, wenn Du ein Programm mit dieser "Toolbox" vertreiben möchtest, kannst
Du dich dann registrieren lassen, um den Hinweis beim Start ohne Entwicklungs-
Umgebung zu entgehen! Das einzige was derzeit kommt, ist ein kleiner Dialog und
das war's denn auch schon...Habe auch schon ein Projekt damit angefangen, ist alles dabei und funktioniert
Tadellos, mit X/Y/Z-Modem und alles, was das Herz eines RS232C'ers höher
schlagen lässt...
-
Danke Reiner!
Ist nur doof, ich habe die Testversion des 6er von der Borland-Homepage.
Im "install.txt" der tms-software steht, dass es nur mit der 2006er Version tut!Habe aber schon weitere Infos gefunden: http://www.tmssoftware.com/ta32.htm
dort stehen die Links zu allen anderen Versionen http://www.tmssoftware.com/TMSA32.ZIPDie Vollversionen kosten ab 50 Euro.
Kommerziell werde ich das eh nie verwenden.Oha, die TMS-FAQs besagen, dass das mit Trial-Versionen von Borland nicht tut
Mal probieren!Grüße
RMone
-
RMone schrieb:
Die Vollversionen kosten ab 50 Euro. Kommerziell werde ich das eh nie verwenden. Oha, die TMS-FAQs besagen, dass das mit Trial-Versionen von Borland nicht tut
Mal probieren! Grüße RMone
Hi,
nun ich habe auch noch keine registrierte Version, arbeite ebenfalls mit Erfolg
mit der Trial-Version, und erhalte halt bei der erstellten einzeln gestarteten
EXE-Datei halt nur nen kleinen Dialog - sonst nichts.Ich werde die 50,- EUR aber auf jeden Fall die Tage investieren, da die es
seitens TMS wirklich verdient haben, alleine wegen der Arbeit die man selbst
dadurch spart, somit nicht mehr mit Geld zu bezahlen ist. Und, warum das
Rad neu erfinden...Was haste denn vor zu programmieren in Verbindung mit der RS232C, wenn man
fragen darf?
-
Also, ich will einen Roboterarm und ein Raupenfahrzeug über ein Lantronix WiPort steuern, welches mir 2 Serielle Schnittstellen zur Verfügung stellt.
Lantronix hat zwar eine API zu dem WiPort (keine Ahnung, ob die tut und was alles enthalten ist), ich will aber auch direkt per Kabel auf die Schnittstellen!Allerdings gestaltet sich die Kommunikation schwieriger als erwartet, weil einfach die Schnittstelle nirgends richtig beschrieben ist.
Ich hoffe mal, dass wenigstens diese Komponente zufriedenstellen funktioniert.
Welche Version des BCB verwendest du?
In der 6er ist die Integration der TMS-Software nämlich auch alles andere als easy.
Ist nicht gerade toll beschrieben.
Die 2006er Version hat de eine Install.exe wie ich gesehen habe.Sicherlich ist das hier nicht der letzte Eintrag von mir
Grüße
Roland
-
RMone schrieb:
...Welche Version des BCB verwendest du? Grüße Roland
Hi,
also ich habe hier die Vollversion von BDS-2006 C++ Builder Prof. im Einsatz.
Selbst habe ich aber auch noch die 6er und die 5er Version vom BC++ Builder
hier liegen, bin mit Borland Produkten schon sehr sehr lange am arbeiten.Irgendwann hat man sich an diese RAD-Entwicklungsumgebungen gewohnt, und
erstellt denn gegenüber dem VC++ (auch mal gehabt) in kürze Anwendungen.Habe mich selbst so auf MySQL-Datenbankprogrammierung gestürzt, sowie als
auch individuelle Software für Firmen auf Anfrage - halt Individuelles.Habe aber auch schon mit TCP/IP eine ganze Menge "gebastelt", sowie als auch
Anwendungen programmiert für Gameserversteuerung und ähnliches - das letzte
was ich mal probiert habe war für das Game BF2/2142.Aktuell schreibe ich eine Auswertungssoftware für den Conrad Charger Manager 2020, daher auch mehr oder weniger die Kenntnis über die TMS Async-Produkte - die Daten vom Lader kommen halt mit 9600 Bps über deren RS232.
-
Hehe, das klingt interessant!
Tja, ich mache z.Zt. Techniker und bin deshalb gerade an der Technikerarbeit.
Microsoft habe ich mir angeschaut und, da absolut unübersichtlich, gleich entsorgt!
Borland haben wir in der Schule.
Daher bevorzuge ich den auch.
Aktuell habe ich mir den 6er runtergeladen, da der immerhin 60 Tage ohne Neuinstallation läuft...
Eventuell werde ich aber noch auf den 2006er umsteigen. Ist der sehr viel anders?Die TMS-Software gefällt mir schon recht gut. Ist halt auch so eine Sache, muss man sich erst mal wieder alles durchlesen!
Aber du sagst ja, dass es ganz flott gehtGrüße
RMone
-
RMone schrieb:
...Aktuell habe ich mir den 6er runtergeladen, da der immerhin 60
Tage ohne Neuinstallation läuft...Eventuell werde ich aber noch auf den 2006er
umsteigen. Ist der sehr viel anders?Hi,
nicht viel anders wenn es um die Funktionalität für die normale Programmierung
geht, halt ein wenig an die Oberfläche von XP angepasst (Dockfähige Fenster),
ne Menge Funktionen und Optionen bezüglich des Compilers mehr integriert.Kann halt nur von der Prof. Version reden, die einfache habe ich bislang durch
die Updates immer nicht in den Händen gehalten so das mir der Vergleich fehlt.Bei der Prof. sind halt auch noch Tools wie InstallShield usw. mit dabei, um
auch Software richtig als "SETUP" mit BDE und dergleichen verteilen zu können.Auf jeden Fall war bislang das Geld für diese Entwicklungstools von Borland gut
angelegt meiner Meinung nach - ist selbstverständlich Geschmackssache.Manche schwören halt auch auf den VC++, aber es ist halt keine RAD-Anwendung,
vieles dort muss man halt "zu Fuß" machen (mehr Tipp-Arbeit, auch in Sachen
Klassen usw.). Die Individualität des BC++ Builders leidet allerdings nicht
darunter, sondern man kann hier halt auch ganz nach "WIN32" Konform (ohne
VCL/CLX) mit Coden... zumal MFC Kompatibilität gewährleistet ist, sowie als
auch in BDS-2006 die MS Dot NET Entwicklungsbasis enthalten ist.
-
Also ich bekomme die TMS-Komponente nicht richtig zum Funktionieren!
Kommen immer viele Fehlermeldungen, schon während des Einbindens.
Nachdem ich den BCB mehrmals neu installiert habe (kann man die Komponenten nicht wieder deinstallieren???) lasse ich es!
Liegt eventuell wirklich an meiner Borland-Testversion, wie in den TMS-FAQ beschrieben?!Habe ebenfalls versucht eine Active-X-Komponente (Adobe-Reader), wie im Buch von Prof. Kaiser beschrieben, einzubinden.
Auch das geht nicht!Tja, da werde ich mir die Serielle Schnittstelle also doch selbst zusammenstricken müssen.
Wenn ich dann fertig bin, kommt die Lösung bestimmt irgendwo her
-
RMone schrieb:
Wenn ich dann fertig bin, kommt die Lösung bestimmt irgendwo her
Vielleicht auch von hier:
http://www.deepsoftware.ru/nrcomm
einen hammer noch...
http://cc.codegear.com/Item.aspx?id=20172
Für den Fall das du keine Komponenten mehr finden solltest...
-
Ah, hehe!!!
Der Link zum Borland-Developer-Network gefällt mir recht gut!
Das ist eine (auf den ersten Blick) sehr übersichtliche und dennoch vollständige Klasse.
Vor allen dingen kann ich den Code sofort und fehlerfrei compilieren und das Beispielprojekt ist sofort lauffähig!
Echt super Sache!
Danke!Habe gerade wenig Zeit zum programmieren, wir sind am verdrahten und Platinen austesten.
Übrigens unsere Lantronix-WiPort-Entwicklung scheint auch auf Anhieb zu funktionieren!
Microprofessor steht auch halbwegs, nun geht es langsam aber sicher ans "Hardcore"-Programmieren.
Mal schauen, wenn noch Zeit bleibt, werde ich das Projekt auf einer eigenen Homepage veröffentlichen!Grüße
Roland
-
RMone schrieb:
Ah, hehe!!!
Der Link zum Borland-Developer-Network gefällt mir recht gut!
Hi,
nun, denn lass mal was von Dir hören, wenn es soweit sein sollte! Bin halt
auch techn. interessiert und genieße denn bestimmt deine Beschreibungen und/oder
Erörterungen zu deinem aktuellen Projekt.
-
Hmmm die Serielle Klasse tut eigentlich ganz gut.
Mit dem USB-Seriell-Adapter 1A!Das WiPort-Teil tut in seinem Terminal auch, aber aus C++ kann ich es (noch?) nicht öffnen. Irgendwo liegt da noch was im argen!
Tja mal schauen, was die nächsten Tage bringen!
-
als alternative kannst du auch readfile und writefile benutzen um auf die serielle Schnittstelle zuzugreifen.
Mußt dir halt nur mal die Hilfe zum overlap Modus durchlesen
MfG