Forum: PC-Programmierung Ansteuerung der seriellen Schnittstelle mit C++


von Timo (Gast)


Lesenswert?

Hallo,
Ich schreibe gerade ein Projekt mit einem AVR - Mikrocontroller. Ich 
möchte dem Projekt nun eine serielle Schnittstelle geben. Den Controller 
programmiere ich in 'C'.

Ich möchte über die serielle Schnittstelle (eigentlich USB - 
Schnittstelle ... ist der FT232 drin ... Treiber sind auf dem Pc 
installiert) Daten (z.B. Float-Werte) senden und diese Daten dann in 
meinem C++ Programm verarbeiten z.B. inform einer Messwerttabelle, 
Grafik etc.

Zum Erstellen der Software auf dem PC wird der Borland Builder 6 
verwendet.

Nun habe ich mir es wie folgt vorgestellt:

Ich drücke auf einen Button "Lesen". Dann werden die Daten in einer 
bestimmten Tastrate ausgelesen und in einem Array gespeichert.

Ich suche also nach einer "Funktion", welche es mir erlaubt den 
seriellen Port auszulesen und nach einer Funktion die es mir erlaubt 
über diese Werte zu senden.

Gruß Timo


von Severino R. (severino)


Lesenswert?

Findest Du auf www.codeproject.com zuhauf.

Severino

von Timo (Gast)


Lesenswert?

Der Linkt funktioniert leider nicht.

Aber trotzdem danke :)

von Severino R. (severino)


Lesenswert?

So:

http://www.codeproject.com

und sonst tippst Du es halt ein...

Severino

von timo (Gast)


Lesenswert?

hmm danke .. bräuchte eher ne funktion ..zum senden und lesen ..
naja schade ...wollt mich in die materie bisschen einarbeiten und keine 
fertigen Quellcodes ... gerade weil ich borland builder 6 verwende finde 
ich nichts im internet ... ich möchte ja auch dass programm auf dem 
rechner in c++ schreiben..
naja trotzdem danke

von Stefan (Gast)


Lesenswert?

"Die" Funktion gibt es nicht.

Du kannst (musst grundsätzlich) für diese Funktionalität mehrere 
API-Funktionen vom Betriebsystem zusammenfassen. Wie das geht, kann man 
auf codeproject in anderen Projekten schön sehen.

Oder du kannst auf fertige, oft kommerzielle Libraries ausweichen, die 
dir einige kniffelige Schritte abnehmen. So stark reduziert, dass es nur 
eine Funktion zum Schreiben und Lesen ist... denke eher nicht, dass es 
das gibt.

Tipp: Mach dich frei davon, dass du eine Lösung exakt für den Borland 
Builder 6 findest. Entweder findest du das Gesuchte in dessen Doku (was 
anscheinend nicht der Fall ist) oder du musst vorhandenes für andere 
Compiler auf dein System anpassen. That's life.

von Tim (Gast)


Lesenswert?

Ich habe den Port mit CreateFile, BuildCommDCB, SetCommState usw. 
geöffnet
und über WriteFile geschrieben
und mit COMSTAT.BcInQue, ReadFile gelesen.
Denke wenn du dich einarbeiten willst, sind das die Schlagworte die dich 
erst mal weiterbringen.

Das funktioniert für eine Bastelei leidlich aber um sich eine 
professionellere Funktionalität zu erstellen, ist das (für einen 
unerfahreneren Windows Programmierer) glaube ich gar nicht mal wenig 
Aufwand.

von Wilfried Holzke (Gast)


Lesenswert?

Falls es nicht unbedingt Windows sein muss gibts die LibSerial 
(http://sourceforge.net/projects/libserial/), aber vielleicht kannst Du 
das so modifizieren das es auch unter Windows läuft.

von Thomas (Gast)


Lesenswert?

Ich habe letztens mal diese Klasse verwendet:

http://www.winapi.net/index.php?inhalt=t3

Nach öffnen des Com-Ports kann man einfach mit ReadData Daten aus der 
seriellen Schnittstelle auslesen.

von arc (Gast)


Lesenswert?

Passende VCL-Komponenten - auch für den C++Builder - gibt's z.B. bei 
http://www.torry.net/pages.php?id=198

von Dirk (Gast)


Lesenswert?


von qwx (Gast)


Lesenswert?


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.