Hallo, möchte auf einfachstem Wege über den USB-Port Daten zw. yC und PC hin - und herschicken. (als allererstes möchte ich einen analogen Potiwert über USB an einen PC senden, genauer gesagt möchte ich mir eine Applikation in vb.net schreiben, die diese Daten dann verarbeitet). Ich weiß, daß ich einen generischen Treiber (CDC-Driver), der bei Win XP dabei ist, verwenden kann. Ich habe obige Verschaltung gefunden. Es war auch ein Code dabei, nur mit diesem komm ich nicht klar, da er recht umfangreich aussieht. Meine Fragen: 1.Wie initialisiere ich die USB-SS mit einem Atmega8 oder 8515L? 2.welche includes brauche ich und woher bekomm ich diese? 3.wie greif ich auf den CDC-Treiber zu 4.was ,muß ich noch beachten Ich weiß, zur Init gehört eine VendorID und eine DeviceID. Weiters muß ich Endpunkte und Deskriptoren definieren. Welche Methoden gibts dazu? (Device-, Interface-, Endpunkt-Deskriptoren). Ich weiß, was die einzelnen Deskriptoren beinhalten (theoretishc zumindest). Ich möchte euch um einen einfachen BeispielCode für den yC für die Initailisierung bitten, und auch für einen einfachen Datenaustausch. danke im Voraus. Alois
Software USB und CDC geht nicht, CDC braucht Full Speed, Software USB geht maximal mit Low Speed und ist abgesehen davon ohnehin Vollgrütze.
Moin! Warum nicht einfach ein FTDI Chip mit virtuellem Comport, für die paar Potiwerte. Die neuen brauchen nur wenige externe zusätzliche Bauteile. Spart Zeit und unnötiges Gefrickel. Gruß
Es gibt auch AVRs mit USB Schnittstelle, die unterstützen Full Speed und CDC und da gibt es sogar AppNotes für. Wofür der Software USB Kram gut sein soll, habe ich immer noch nicht verstanden.
Simon K. schrieb: > Wofür der Software USB Kram gut sein soll, habe ich immer noch > nicht verstanden. Hast du schon mal einen 8- oder 14pinner mit integriertem USB gesehen?
So viel größer ist ein TQFP 32 Package auch nicht.
A. K. schrieb: > Simon K. schrieb: > >> Wofür der Software USB Kram gut sein soll, habe ich immer noch >> nicht verstanden. > > Hast du schon mal einen 8- oder 14pinner mit integriertem USB gesehen? habe noch nie einen atmega8 mit 8 oder 14 pins gesehen :) TQFP32 (evt. mit QFP32->DIP adapter) atmega8U2 würde mir lieber sein
wieso gehts nicht ohne externen Chip? Wie wurde es denn in diesem Bild, das ich mitgeschickt habe, dann umgesetzt? Ich brauche keine schnelle Datenübertragung oder sowas, nur hab ich halt nur einen USB Anschluß am Laptop.
ortech schrieb: > wieso gehts nicht ohne externen Chip? hmm, natürlich geht es, entweder die atmel usb µC famili nehmen - dann hast du usb und den µC in einem chip, oder soft usb zusätzlich zu deinem projekt in dem µC integrieren. Soft usb ist z.b. http://www.obdev.at/products/vusb/index.html > Wie wurde es denn in diesem Bild, das ich mitgeschickt habe, dann > umgesetzt? Diese bild ist vom usbtenki projekt, anscheinend hast du nicht gesehen was da steht : "I used Objective Development's software only USB implementation for Atmel's AVR microcontrollers..." und Objective Development ist http://www.obdev.at/products/vusb/index.html > Ich brauche keine schnelle Datenübertragung oder sowas, nur > hab ich halt nur einen USB Anschluß am Laptop. ja, soft usb wird ausreichend für dich. Um zu verstehen wie obdev benutzt wird guck dir http://www.obdev.at/products/vusb/prjobdev.html oder den usbtenki.
Hallo Thomas JA GENAU! Das brauch ich! Soft-USB oder VUSB. Ich hab mir das USBTenki Projekt angesehen, aber ich durchblicke den Code nicht. Noch eine Frage zum Soft-USB. 1. brauch ich dazu keinen generischen Treiber wie CDC oder HID? 2. ich hab mir jetzt das vusb-20090415.zip von diesem Link (bei Powerswitch unter DOwnload) heruntergeladen 3. jetz hab ich hier folgende Files und Ordner (siehe Anhang) 4. Um jetzt ein einfaches PRojekt für den Atmel zu machen, brauch ich was? Ich tu mir da schwer als absoluter Anfänger, ich kann zwar vb.net, aber mit C... Könntest du mir das Prinzip kurz schildern? Schönen Gruß, Alois
ortech schrieb:
> Könntest du mir das Prinzip kurz schildern?
Unter Examples die enthaltenen Codes ansehen und modifizieren.
Optional auf der obdev-webseite andere Projekte ansehen und
modifizieren.
habs versucht, aber ich muß zugeben, ich checks nicht ohne daß es mir jemand erklärt... Erklärt mir jemand das Prinzip? Brauch ich nun meinen Windows-Treiber, auf den ich zugreife? Was brauch ich an "Fremdcode", um meine Applikation darauf aufzusetzen? Es muß doch was geben wie: 1. Init USB Schnittstelle 2. Methode Read Data 3. Methode Write Data ?
Unter Linux gibt es dazu eine libusb. Da wird es wohl auch etwas ähnliches (oder gar das gleiche?) für Windoof geben. Ich meine auch, auf den obdev Seiten sowas gelesen zu haben. Suchen musst Du aber selber, da ich dazu weder Zeit noch Lust habe.
Microsoft liefert bereits einen HID-Treiber mit. Unter http://msdn.microsoft.com/en-us/library/ms790932.aspx findest du alle Funktionen um auf HID-Devices zuzugreifen.
ok danke mal. Werd jetzt mal ein paar Tage Urlaub machen und mich dann nächste Woche dem Thema wiederum widmen. Danke für eure Inputs! Alois
In der Elektor-Ausgabe vom März 2007 wurde alles genau beschrieben. Link: http://www.elektor.de/jahrgang/2007/marz/avr-steuert-usb.80948.lynkx Hier werden ebenfalls die AVR-USB-Treiber von obdev verwendet. Den Code für den AVR kann man dort runterladen... grüssse g.
danke für den tipp, gadgaet ! Hab mir den Artikel soeben runtergeladen und werd ihn demnächst ansehen.
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.