www.mikrocontroller.net

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


Autor: Timo (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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


Autor: Severino R. (severino)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Findest Du auf www.codeproject.com zuhauf.

Severino

Autor: Timo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Linkt funktioniert leider nicht.

Aber trotzdem danke :)

Autor: Severino R. (severino)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So:

http://www.codeproject.com

und sonst tippst Du es halt ein...

Severino

Autor: timo (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Wilfried Holzke (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: arc (Gast)
Datum:

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

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: qwx (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.