Forum: PC-Programmierung KontrollProgramm RS232/COM


von Thomas M. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte ein Programm mit Visual C 6.0 schreiben mit dem ich die
Serielle Schnittstelle meines ATmega32 auslesen und an diese etwas
schicken kann. Das Senden funktioniert jetzt schon ganz gut aber das
Empfange noch nicht. Und zwar habe ich ein Dialogfenster mit einem Send
Button und einer Listbox, in der ich mir die empfangenen Daten von
Controller anzeigen lassen kann. Dazu habe ich noch eine Funktion inder
ich das Senden und Empfangen realisiern möchte. Irgendwie kriege ich das
 mit dem Handle nicht hin, wahrscheinlich mache ich etwas grundlegendes
falsch. Über einen Hinweis würde ich mich sehr freuen.

Danke!

von Tobi H. (tobi-) Benutzerseite


Lesenswert?

Hab den Code jetzt nur mal überflogen, aber schon diese Zeile erscheint
mir sehr suspekt:

CloseHandle(hComm);  // Muss nach jedem Senden gemacht werden

Und was genau klappt den jetzt nicht?

von Sepp (Gast)


Lesenswert?

codeguru.com
codeproject.com

Warum neu erfinden?

von Tobi H. (tobi-) Benutzerseite


Lesenswert?

Weil man für manche Aufgaben (z.b auch ein solches Programm) eine stark
angepasste Ansteuerung benötigt, die man nirgendwo findet...

Aber für ein paar Ideen schaden die Sites sicherlich nix

von Thomas M. (Gast)


Lesenswert?

Wie ich schon beschrieben habe funktioniert das Senden aber das Empfange
nicht. Ich möchte die empfangenen Daten in die Listbox (IDC_LIST1)
schreiben. Dazu muss ich an das Handle, was ich dafür extra erzeuge
(hList1 = GetDlgItem(hWnd, IDC_LIST1);), mit (SendMessage(hWnd,
IDC_LIST1, LB_INSERTSTRING, (LPARAM) string);) den String senden.

Das Priogramm hat schon mal als Konsoleversion funktioniert. Das
Problem ist, dass ich nicht weiss wie ich den String an die Listbox
senden kann.

von Karl H. (kbuchegg)


Lesenswert?

Doku zu SendMessage lesen:

SendMessage( hList1, LB_INSERTSTRING, 0, (LPARAM) string );

Warum tust Du Dir das Windows C-API an und verwendest nicht
einfach die MFC?

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.