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 Warnungen

    Geil, 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.ZIP

    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



  • 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 geht 🙂

    Grüß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


Anmelden zum Antworten