Forum: PC-Programmierung Serialport in embeddedVisualC++


von SupaChris (Gast)


Lesenswert?

Ich hab schon bissl bei Google gesucht, aber nix so richtiges gefunden.
ich möchte von meinem PocketPC 2003 Gerät (XDA mini) über die virtuelle
serielle Schnittstelle, die mir Bluetooth zur Verfügung stellt, mit
einem seriellen Bluetooth-Gerät "sprechen". Es reicht der Austausch
von einfachen ASCII Strings. Die Gegenstelle befindet sich nach dem
Verbindungsaufbau im Transparentmodus, unter WinXP kann ich völlig
einfach über Hyperterm dann mit der reden.
Wie macht man das in eVC++?
Hab im Netz 2 DLLs gefunden, die kosten aber massenhaft Geld. Gibts da
nicht sowas einfaches wie die CSerial Klasse vom Codeguru? Hat sowas
schon ma jemand gemacht?

von Peter (Gast)


Lesenswert?

Selbiges versuche ich grad in eVB. Ich verwende die MSCOMM die ja bei
den Embedded Tools schon dabei ist. Bei mir gibts aber folgendes
Problem und ich weis ned warum. Nach dem öffnen der Schnittstelle am
Pocket-PC kann ich 2 Zeichen via Bluetooth übertragen und dann ist
schicht im Schacht?? Schließe ich die Schnittstelle und öffne sie
danach wieder gehen wieder 2 Zeichen zu übertragen.
Woran liegt das??

von SupaChris (Gast)


Lesenswert?

Geht die MSCOMM auch mit eVC++? Dann würd ioch das mal probieren und
Meldung geben. Hab auf die Schnelle nix gefunden, wie man die da
einbindet (jnd überhaupt wo man die erst mal findet). Ist doch aber nen
ActiveX Control, oder?

von Simon K. (simon) Benutzerseite


Lesenswert?

Hm, weiß ich  nicht. Aber unter C konnte man das doch ganz einfach mit
fopen() machen.

von Georg (Gast)


Lesenswert?

Hi,

probier es mal mit der CFSerial von:  http://www.hardandsoftware.net/
funktioniert bei mir(xda mini s, Mobile 5.0) super. Auch die DLLs für
GPS sind super.

Viel Spaß damit!

Gruß Georg

von Wolfram (Gast)


Lesenswert?

>>Ich hab schon bissl bei Google gesucht, aber nix so richtiges
gefunden.

Mit fopen hättest du in C auf jeden Fall den Port öffnen können ,
egal wie alt dein C Buch ist, das sollte drin stehen.

Die MSDN hätte dich darauf hingewiesen das du bei der
Windowsprogrammierung statt fopen auch CreateFile benutzen kannst.
Wenn du die Hilfe von eVC++ (MSDN) benutzt hättest wärst du beim ersten
Eintrag auf

CreateFile
This function creates, opens, or truncates a file, COM port, device,
service, or console. It returns a handle that you can use to access the
object.

gestoßen. Da gibt es auch noch einen speziellen Artikel der sich mit
serieller Kommunikation auseinandersetzt.
Auch eine Suche hier im Forum sollte dir mehr als genügend Artikel
bringen. (Das Thema kommt so alle paar Wochen wenn es von der ersten
Seiten verschwunden ist).

MSCOMM kommt mit VisualBasic 6.0 mit ,außerdem ist es in der
Runtimeumgebung enthalten die man bei Microsoft downloaden kann.
(steht auch in der MSDN)

Ich würde dir für Visual C aber nicht unbedingt MSCOMM empfehlen,
Wenn du schon Probleme bei CreateFile hast, dann wird die Verwendung
von MSCOMM dir noch wesentlich größere Probleme bereiten.

von SupaChris (Gast)


Lesenswert?

Danke für eure Antworten. Werds am WE mal probieren.

von SupaChris (Gast)


Lesenswert?

Mit CreateFile hat es funktioniert. War zwar recht aufwendig und ich hab
erst mal nur schreiben gebaut. Lesen ist ja ziemlich komplziert, wenn
man das nicht-blockierend machen will.
Dachte es gibt sowas wie die Wrapper-Class von GodeGuru, aber die geht
ja auf PPC2003 nicht. Darauf zielte meine Frage eigentlich ab, hätte ja
sein können, jemand hat schon mal was für PPC in der Art geschrieben.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.