www.mikrocontroller.net

Forum: GCC Problem mit USB nach Seriell Konverter

Autor: Gizmo (Gast)
Datum: 05.02.2008 16:21

Hallo

Ich habe das STK500 über einen USB nach Seriell Konverter mit dem Laptop
verbunden. Der Konverter wird in der Systemsteuerung als USB Serial Port
(Com13) erkannt. Das ganze habe ich mit einem Terminal programm und
einem 9 Poligen Sub-D Loopback adapter getestet, fiunktioniert
einwandfrei. Nun habe ich mir mit WINAVR ein Programm geschrieben und
hab versucht das ganze zu flashen geht aber nicht, ich bekomme von
avrdude folgende Fehlermeldung
did not find any USB device "usb".

habe das ganze im make file auch mal auf com13 umgeschrieben das
funktioniert aber genau so wenig. Im Terminal Programm(Realterm) wird
das Interface aber als com13 erkannt. Es wäre nett wenn ihr mir helfen
könntet.

Gruß Gizmo.
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum: 05.02.2008 16:26

"usb" kann nicht gehen, das würde ja bedeuten, dass du über die libusb
direkt auf das USB-Gerät zugreifen können müsstest.

com13 muss dagegen funktionieren.  Was genau bekommst du denn von
avrdue als Fehlermeldung?  Du kannst auch mal folgendes aufrufen:
avrdude -c stk500v2 -p m16 -P com13 -uF -vvvv 2> logfile.txt

und dann logfile.txt hier als Anhang posten.
Autor: Peter Dannegger (peda)
Datum: 05.02.2008 16:29

Stell den Adapter mal auf ne COM1..4 um.


Peter
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum: 05.02.2008 16:47

Peter Dannegger wrote:

> Stell den Adapter mal auf ne COM1..4 um.

Wir sind doch hier nicht bei avrprog.exe.
Autor: Rufus t. Firefly (rufus) (Moderator)
Datum: 05.02.2008 16:54

Probiere mal
avrdude -c stk500v2 -p m16 -P \\.\com13 -uF -vvvv 2> logfile.txt

Serielle Schnittstellen jenseits von COM9 müssen mit dieser geänderten
Syntax angesprochen werden.
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum: 05.02.2008 16:57

Ah, ist das eigentlich eine Windows-Macke?  Der String wird ja am
Ende direkt ins Win32 API durchgereicht...

Ggf. könnte man die Heuristik dafür ja ins ser_open() in
ser_win32.c gleich mit einbauen.
Autor: Rufus t. Firefly (rufus) (Moderator)
Datum: 05.02.2008 17:15

> Ah, ist das eigentlich eine Windows-Macke?

So kann man das auch nennen. Ist uralt* und hat mit den "reservierten
Namen" aus DOS-Zeiten zu tun. Das sind COM, LPT, CON, PRN, AUX und NUL.
Die werden schon immer etwas ... anders behandelt.


*) also bereits in Windows NT 3.1 von 1993 so vorhanden gewesen
Autor: Stefan "stefb" B. (stefan) Benutzerseite
Datum: 05.02.2008 17:30

Die Heuristik könnte man IMHO schon benutzen, sogar für com1 bis com9

Ergänzung zum Nachlesen

HOWTO: Specify Serial Ports Larger than COM9
http://support.microsoft.com/?scid=kb%3Ben-us%3B11...
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum: 05.02.2008 17:43

OK, macht mal bitte einer einen Bugreport bei AVRDUDE dafür auf?
Nur, damit es nicht vergessen wird.  Ich würde dann sowas machen
wie
  if (strncasecmp(device, "com", strlen("com")) == 0) {
    // prepend "\\\\.\\" to name, required for ports >= 10
    cp = malloc(strlen("\\\\.\\") + strlen(device) + 1);
    // handle error
    strcpy(cp, "\\\\.\\");
    strcat(cp, device);
    device = cp;
  }
Autor: Stefan "stefb" B. (stefan) Benutzerseite
Datum: 05.02.2008 20:28

Bugreport ist eingeschickt. Ich hoffe, dass ich mich nicht zu blöd dabei
angestellt habe.
Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum: 05.02.2008 21:10

Nö, danke, ist OK.  Ist ja nur eine Erinnerung, dass ich das mal vor
dem nächsten Release mit mache.  Heute abend wird's nicht mehr.

Antwort schreiben

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

Wichtige Regeln - erst lesen, dann posten!

  • Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
  • Aussagekräftigen Betreff wählen
  • Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
  • JPEG-Dateien (.jpg) nur für Fotos verwenden, Schaltpläne, Screenshots usw. als PNG oder GIF anhängen

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel






webmaster@mikrocontroller.netImpressumWerbung auf Mikrocontroller.net