Hallo! Ich probiere seit einiger Zeit den USB Port am Sam7h256 Board von Olimex (Sam7S256) zum laufen zu bringen. Habe schon einige Beispielprogramme ausprobiert. Aber mein Rechner erkennt den Controller immer nur als "Unbekanntes Gerät". Wollte aber einen HID oder MSD Treiber verwenden und keinen eigenen erstellen. Hat mir jemand ein einfaches USB-Programm für den Controller das Zeichen empfangen und senden kann, es wäre mir damit sehr geholfen. Ich verwende IAR Embedded Workbench und programmiere in C. Danke vielmals! MfG Benjamin
hallo benjamin, in den examples der workbench findest du ein sog. usb framework. das sollte eine gute basis sein: ...\arm\examples\Atmel\AT91USBFramework\ auf der atmel homepage findest du application notes dazu: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4092 gruss gerhard
Danke habs gleich ausprobiert, hab da n Beispiel gefunden (AT91SAM7S64-BasicUSB-IAR4_11A-1_0). Habe gleich mal das Programm auf den Controller aufgespielt. Meines Wissens müsste doch nach dem auspielen und starten die USB-Schnittstelle als HID oder MSD erkannt werden und nicht als Unbekanntes Gerät (insofern sie richtig initialisiert ist) Mit einem Unbekannten Gerät kann ich ja niemals Daten empfangen/senden. Will dann eigentlich Angangs mit einem USB-Sniffer schauem ob was ankommt oder nicht, später dann die Schnittstelle im PC in einer Oberfläche verankern. Jedoch soweit bin ich noch lange nicht. Hab mal das Beispiel angehäng damit du weisst wovon ich spreche. Kannst du mir da noch n Tipp geben auf was ich achten muss oder wo mein Problem liegen könnte? Tausend Dank! MfG Benjamin
Also habs zumindest soweit hinbekommen das der Controller jetzt richtig erkannt wird. Ich probiere jetzt einfach mal weiter melde mich wieder. Danke nochmals! Benjamin
Ich nochmal! Also habe bemerkt als ich Zeichen an den PC übersenden wollte, dass das Programm in eine Whileschleife zu HID Konfigurierung in der Main stehen bleibt(while (!HID.IsConfigured(&HID));) Kann mir ejmand sagen warum (Hab das Programm im vorvorthread beigefügt). Wär echt super wenn du/ihr mir helfen könntet bin etwas ratlos. Danke! MfG Benjamin
Also so wie ich das sehe bleibt er beim USB-Device Neustart hängen, d.h. er bekommt den Interrupt (AT91C_UDP_ENDBUSRES) nicht, weil der Host nicht zählt. Hat jemand n Denkanstoß oder n Lösungsvorschlag?
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.