Forum: Mikrocontroller und Digitale Elektronik Virtual Com Port mit LPC1769


von Thore T. (Firma: FH Westküste) (thoret)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte mit dem LPC1769 über einen virtuellen com port mit dem pc 
kommunizieren.

Ich habe dazu die CMSIS libary benutzt:
https://github.com/scottellis/lpc17xx.cmsis.driver.library/tree/master/Examples/USBDEV/USBCDC

Anschließend habe ich die lpc_chip175x_6x libary eingebunden.
Da nach einigen usbd...h gefragt wurde habe ich auch den usbd Ordern 
eingebunden.
Jetzt gibt es conflicting erros zwischen der usb.h un der usbd.h. s. 
Bild
Das verstehe ich nicht?

Außerdem habe ich versucht den Treiber für den vcom port zu 
installieren, leider scheint dieser nicht mehr kompatiebel zu sein.
Windows10 hat mir einen Treiber angeboten, leider wird der Fehler code 
10 angezeigt, ich denke ich Standartfehler Code. Kann ich dieser Treiber 
verwenden? s. Bild

von Jim M. (turboj)


Lesenswert?

Da ist was nicht kompatibel. Von dem LPC17xx Sachen gab es selbst bei 
NXP zueinander inkompatible Versionen.

Nimm mal lieber alles aus Github und lass das lpc_chip175x_6x libary 
Zeuchs ganz weg.

Thore T. schrieb:
> Außerdem habe ich versucht den Treiber für den vcom port zu
> installieren

Unter Windows 10 sollte der automagisch installiert werden, Windows kann 
jetzt USB CDC ohne weiteres .inf File.

von Johannes S. (Gast)


Lesenswert?

Wenn es auch C++ dein darf dann empfehle ich dir die mbed Lib.

von Thore T. (Firma: FH Westküste) (thoret)


Lesenswert?

Hi,

ich arbeite mit dem LPC1769, LPCXpresso IDE und Windows10.

Hat jemand ein funktionierendes Beispiel für einen virtual com port über 
usb mit der cmsis libary.

Zum Schluss habe ich dies Beispiel gestartet:
http://www.brc-electronics.nl/virtual-com-port-installation

Leider wird nur ein USB unbekanntes Gerät erkannt.

Mit dem Beispiel vom LPCopen kann ich über usb vcom kommunizieren.
Leider habe ich meine übrigen code mit der cmsis libary gebaut. Mischen 
geht leider nicht.

von Thore T. (Firma: FH Westküste) (thoret)


Lesenswert?

Johannes S. schrieb:
> Wenn es auch C++ dein darf dann empfehle ich dir die mbed Lib.

Wo finde ich die mbed Lib?

von Thore T. (Firma: FH Westküste) (thoret)


Angehängte Dateien:

Lesenswert?

Jim M. schrieb:
> Nimm mal lieber alles aus Github und lass das lpc_chip175x_6x libary
> Zeuchs ganz weg.

Ich habe jetzt nur die Libarys aus der cmsis includiert.
Der letzte Fehler ist:

Description  Resource  Path  Location  Type
make: *** [usb_test.axf] Error 1  usb_test       C/C++ Problem

(s. Foto)

von Jim M. (turboj)


Lesenswert?

Schau Dir das mal an der Console an. Im Bild ist der ursprüngliche 
Fehler nicht zu sehen

von Comporter (Gast)


Lesenswert?


von Thore T. (Firma: FH Westküste) (thoret)


Angehängte Dateien:

Lesenswert?

Jim M. schrieb:
> Schau Dir das mal an der Console an. Im Bild ist der ursprüngliche
> Fehler nicht zu sehen

Könnt ihr Damit etwas Anfangen? (s. Bild)

: Bearbeitet durch User
von Thore T. (Firma: FH Westküste) (thoret)


Lesenswert?


von Thore T. (Firma: FH Westküste) (thoret)


Lesenswert?

Wie ich es gesehen habe war USB_ENDPoint0 nicht deffiniert. Habe eine 
leere Funktionen eingefügt.


Jetzt kann ich es debuggen, aber leider erkennt der Rechner es als 
unbekanntes USB Gerät.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Thore T. schrieb:
> Leider gibt es die Topic nicht

Das hast Du selbst zu verantworten, weil Du zweimal zum gleichen Thema 
einen Thread aufgemacht hast. Wir Moderatoren dürfen hier dann aufräumen 
und fassen solche Dinge zusammen.

Wenn Du Dir mal Deine Beiträge in diesem Thread hier ansiehst, wirst Du 
Deine Doublette finden können.

von Johannes S. (Gast)


Lesenswert?

Thore T. schrieb:
> Jetzt kann ich es debuggen, aber leider erkennt der Rechner es als
> unbekanntes USB Gerät.

unter Win10 könnte es mit dem eingebauten Treiber gehen, siehe:
https://msdn.microsoft.com/de-de/library/windows/hardware/dn707976(v=vs.85).aspx

Dazu müsstes du in der Datei cdc_desc.c in der USB_Devicedescriptor 
initialisierung die class/subclass auf 0x02 / 0x02 ändern.

von Jim M. (turboj)


Lesenswert?

Thore T. schrieb:
> Wie ich es gesehen habe war USB_ENDPoint0 nicht deffiniert. Habe
> eine
> leere Funktionen eingefügt.

Flasch.

USB_EndPoint0 ist als Funtion in usbcore.c enthalten.

Das ist eine nicht-triviale Funtion, die zur Benutzung von USB unbedingt 
funtionieren muss.

von W.S. (Gast)


Angehängte Dateien:

Lesenswert?

Thore T. schrieb:
> ich möchte mit dem LPC1769 über einen virtuellen com port mit dem pc
> kommunizieren.
>
> Ich habe dazu die CMSIS libary benutzt:

Und?
Warum läuft das bei dir nicht?

Thore T. schrieb:
> Anschließend habe ich... eingebunden... eingebunden...
> Jetzt gibt es conflicting erros...
> Das verstehe ich nicht?

Tja.
Es kommt eben nicht drauf an, möglichst flink im "einbinden" sprich 
copy&paste zu sein, sondern das Zeugs zu VERSTEHEN.

Kunst kommt von können_ und nicht von _wollen, denn dann hieße es 
Wunst.

Sei froh, daß ich heute meinen jovialen Tag habe. Deswegen kriegst du im 
Anhang auch ne Sammlung tatsächlich funktionierender USB-VCP's anstelle 
Geschimpftem.

Aber die nötigen Headerdateien für die jeweilige HW machst du dir selber 
- nachdem du die Quellen studiert, mit dem jeweiligen RefManual 
quergelesen und das alles verstanden hast.

W.S.

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.