Hallo, für eine Kopplung zwischen einem µC (CII von Conrad) und meinem Pocket-PC (iPAQ 1915) möchte ich über die serielle Schnittstelle eine Langzeiterfassung meiner Solaranlage realisieren. Ich habe auch schon embedded Visual Basic 3.x einigermaßen verstanden und auch eine COM-Applikation auf meinen Pocket-PC draufgekriegt. Das Programm scheint zu funktionieren. Beim Starten der Funktion zum Öffnen der COM-Schnittstelle meldet der Pocket-PC aber einen Fehler "port unavailable". Ich habe den ganzen Pocket-PC durchsucht um so eine Art Systemsteuerung zum Einstellen der COM-Ports zu finden. Leider nicht erfolgreich. Muss man die Einstellungen im System des Pocket vornehmen? In der Routine zum Öffnen des Ports stehen eigentlich alle Sachen drin (Geschwindigkeit, Protokoll ...). Und wenn ja, wo finde ich die Einstellungen? Gruß Jörg
Sicher, dass du die DCB Struktur richtig initialisiert hast? Bei mir ging es sogar mit der Bluetooth-COM Schnittstelle einwandfrei (XDA mini). void CCAN_BTDlg::OnConnect() { hFile=CreateFile(TEXT("COM5:"),GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL ); CString text = "Keine Verbindung!"; if (hFile == NULL)MessageBox(text); else { DCB dcb; COMMTIMEOUTS WTimeOuts; dcb.DCBlength = sizeof (DCB); GetCommState(hFile,&dcb); dcb.fBinary = TRUE; dcb.BaudRate = 115200; dcb.ByteSize = 8; dcb.Parity = NOPARITY; dcb.StopBits = ONESTOPBIT; SetCommState(hFile,&dcb); memset(&WTimeOuts,0,sizeof(COMMTIMEOUTS)); SetCommTimeouts(hFile,&WTimeOuts); } } void CCAN_BTDlg::OnDisconnect() { CloseHandle(hFile); }
Hi Jörg, ein beliebtes Problem unter Windows Mobile sind die im Hintergrund weiterlaufenden Programme, die man vermeintlich beendet hat. Hast Du mal geschaut, ob evtl. ActiveSync noch läuft (Start -> Einstellungen -> System -> Speicher -> Ausgeführte Programme). Das hält nämlich den COM-Port geöffnet, über den Du Deine Daten übertragen müßtest. Er ist dadurch für andere Anwendungen "unavailable". Bist Du außerdem sicher, daß Du den richtigen COM-Port geöffnet hast? COM2: ist i.d.R. die IR-Schnittstelle, COM5: oder auch COM8: sind Bluetooth zugeordnet. Welches der COM-Port der Dockingstation (des Adapterkabels) ist, kann ich Dir aber leider nicht so ohne weiteres sagen, ich habe ihn bislang noch nicht benötigt. Gruß Markus
Hallo Markus, an der Sache scheint was dran zu sein. Ich habe mal das Programm auf verschiedene COM-Port-Nummern geändert. Die Funktion ComOpen funktioniert nur mit der Nummer 3. Das wiederum ist aber wahrscheinlich nicht die Schnittstelle von meinem Kabel. Der gesamte Beipack enthielt nur einen Schnelleinstieg und bla bla bla. Über Eigenschaften der Schnittstellen steht dort leider nichts. Jetzt bin ich zwar schon einen Minischritt weiter, aber von einer Verbindung zu Hyperterminal auf dem Desktop noch weit entfernt. Übrigens hatte ich schon mindesten 2 mal an hp gemailt. Ich habe nie eine Rückmeldung erhalten. Trotzdem vielen Dank Gruß Jörg
Hallo Christian, das sieht mir nach einer C-Funktion aus. Ich hatte mich damals für Visual Basic entschieden, weil mir das einfacher erschien. Gruß Jörg
Ich rate mal wieder zu wxwidgets. Das bekommst Du ohne Umbau sowohl auf den Wn-PCs als auch auf den PDAs rasch zum Laufen.
Hallo Jörg, Com3 wird vermutlich die IR Schnittstelle sein. Besorg dir mal da Programm "PHM Registry-Editor" unter www.phm.lu/products dort kanst du suchen welchen ComPort die Schnittstelle hat.
Jo ist C. Hatte keine Lust auf VB Gefrickel und dann noch die riesen runtime auf den PPC knallen....da is eh schon immer so wenig Speicher frei ;)
welche schnittstelle vom iPAQ nutzt du? Oben den Slot oder unten die USB anschlussstelle? Ich arbeite selber mit so einem modell... COM6 ist die breite schnittstelle oben ;)
Hallo Tobias, endlich mal jemand der so was schon mal benutzt hat. Ich hab mir so ein Verbindungskabel von hp besorgt. Über die die untere Schnittstelle habe ich das ganze mit der seriellen Schnittstelle vom PC verbunden. Über Hyperterminal habe ich keine Verbindung zustande gekriegt. Auch über ActiveSync habe ich mal versucht, aber über die COMs geht gar nichts. Auch die Com-Einstellung von PC habe ich mal auf 19200 angepasst. Auch vergeblich. Oben ist bei mir nur ein Speicherkarten-Slot, kann man da auch einen Adapter reinstecken? Was für eine Verbindung haßt Du aufgebaut? Gruß Jörg
Hi Jörg, ich hatte mir mal ein Programm für meinen Casio Cassiopeia geschrieben, um über die serielle Schnittstelle Daten von meinem Garmin zu laden. Dabei hatte ich erst das gleiche Problem, da auf dem Pocket-PC ständig Active-Sync lief und COM1 blockiert hat. Das mußte ich dann regelmäßig mit einem vernünftigen Task-Manager (aktuell benutze ich "Magic Button") Active-Sync beenden und dann lief mein Programm! Will man mit dem PC+Hyperterm testen, dann muß dort natürlich auch Active-Sync für diesen COM-Port deaktiviert sein. Aktuell benutze ich einen MDA-compact; der hat dummerweise keine serielle Schnittstelle mehr. Aber mit einem Bluetooth/seriell-Modul funktioniert es jetzt auch (nur dass ich da die CommTimeouts nicht so setzen kann und die Übertragung von Einzelzeichen sehr langsam ist).
Hi Jörg, sorry, aber ich hab lange nimmer reingeschaut g In den Speicherkartenslot kann man vieles Stecken. Mann muss nur immer mal was umlöten. Ich steuere damit einen Controller, den ich in einer Hülle einer Compact Flash Karte habe. Also wenn du deine Langzeiterfassung über den Speicherkartenslot laufen lassen willst (COM 6) findest du im I-Net viel hilfe, wie du das richtig umlötest :) brauchst halt eine CF-Card, der du den Anschluss rausnehmen kannst :) Aber jetzt lese ich gerade nochmal von dir "...Da ist nur ein Speicherkartenschacht..." Normalerweisse sind in der kompletten IPAQ - Reihe die breiten Speicherkartenschächte drin. Was kommt denn für eine Meldung, wenn du versuchst den Port zu öffnen? Oder bekommst du den Port auf, erhältst halt bloß keine Daten? gruß Tobias
kann mir da bitte jemand weiterhelfen, hab da riesige probleme. addet mich in icq oder so, shade oder mail an mah09XXX@web.de (ohne die Xe natürlich) danke
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.