Hi, nach dem Google mich immer nur zum V-USB (=HID) schickt, frage ich doch mal hier: gibt es für die kleinen ATMegas ohne eigenes Hardware-USB-Interface auch eine Software-only Implementierung eines seriellen Interfaces über USB? Sprich eine Lösung bei der sich mein Controller dann als COMx bzw. /dev/ttyUSBx bzw. /dev/ttyACMx auf dem Host-PC meldet? Oder scheitert das an der mangelnden Rechenleistung? Danke! Karl
Hallo Karl, schau mal hier: https://www.obdev.at/products/vusb/index.html Für die Rechenleistung ist ein Quarz >= 12MHz notwendig.
Karl K. schrieb: > gibt es [...] eine Software-only Implementierung eines > seriellen Interfaces über USB? Software-only geht nur für Protokolle, die Low-Speed-USB verwenden können. Serielle Interfaces (und praktisch alles andere außer HID) setzen mindestens Full Speed voraus.
Schau mal, ein echtes Full Speed Device für <2€: https://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCEQFjAAahUKEwieu4-cwYrHAhUOKtsKHemkAyo&url=http%3A%2F%2Fwww.microchip.com%2FPIC16F1455&ei=yRu-Vd6yMI7U7AbpyY7QAg&usg=AFQjCNHX3ixfxlyfk4SZVHdR84a5bTi-Yg
Und hier ist doch ein CDC für V-USB: https://www.obdev.at/products/vusb/prjinterface.html http://www.recursion.jp/avrcdc/ Man beachte: > Although it goes somewhat beyond the USB specification, > it works on all major operating systems. Denn, wie oben schon gesagt, verlangt CDC eigentlich Full Speed. Geht aber meistens doch, wenn du nicht gerade Win98 damit beglücken willst.
Karl K. schrieb: > nach dem Google mich immer nur zum V-USB (=HID) schickt Womit Google völlig richtig liegt, denn V-USB ist eben !=HID. Mit V-USB geht alles, allerdings gibt es leider Grenzen, die aber außerhalb der Einflußmöglichkeiten von V-USB liegen. > frage ich doch > mal hier: gibt es für die kleinen ATMegas ohne eigenes > Hardware-USB-Interface auch eine Software-only Implementierung eines > seriellen Interfaces über USB? Klares ja. Und allein die Frage ist der ultimative Beweis, daß du die von Google gefundene Website nicht wirklich gelesen hast, sonst wüßtest du das selber. > Oder scheitert das an der mangelnden Rechenleistung? Nein, es scheitert eigentlich an eine Form von "Paragraphenreiterei" oder "Standard-Schmalspuritis" oder wie immer man das nun nennen will. Es ist einfach so, daß der USB-Standard aus unerfindlichen Gründen einerseits für ein LowSpeed-Geräte (und das ist V-USB) Bulk-Transfers verbietet, sie andererseits aber für USB-ACM (also serielle Schnittstelle in der grundlegendsten Variante) zwingend einfordert. "Unerfindlich" ist das deshalb, weil es keinerlei technischen Grund dafür gibt, LowSpeed-Geräten Bulk-Transfers zu verbieten. Der Beweis dafür ist, daß jahrelang V-USB-Lösungen, die eben dies implementiert haben, mit allen gängigen OS problemlos liefen. Bis dann die "Standard-Schmalspurer" kamen und den USB-Treibern der Betriebssysteme die extrem schwachsinnige, künstliche und technisch sinnlose Durchsetzung der Restriktion auferlegt haben. Der einzige wirkliche Grund sind die wirtschaftlichen Interessen der Mitglieder des Standardisierungsgremiums. Das liebe Geld, wie immer...
Es ist einfach der beschränkte Horizont der Leute, die zur Verbreitung von Pfuschlösungen wie VUSB führen. Es ist ja nicht so, dass es keine Alternativen gäbe. Ein PIC16F1454 kostet genauso viel, hat aber Full-Speed USB Hardware und einen kostenlosen USB-Stack von Microchip. Komplett mit Zertifizierung des USB Implementers' Forums. Wer will, bekommt den Chip auch in DIL. Die minimale Beschaltung sieht man hier: https://hackaday.io/project/6258-two-component-usb-temperature-data-logger Man kann die Leute halt nicht zu ihrem Glück zwingen. fchk
Frank K. schrieb: > Es ist einfach der beschränkte Horizont der Leute Und das ist schlichtweg großkotzige Dummschwätzerei - einfach mal Beleidigungen verteilen ohne auch nur irgend was über die technischen Gegebenheiten zu wissen. Vielleicht kann man gar keinen PIC verwenden? Vielleicht geht es um eine existierende Lösung, die aus 'zig unumgehbaren Gründen nicht modifiziert werden kann? Aber Hauptsache, erst mal auf den Putz hauen.
hihi, in einem Board in dem erwartet wird, daß man Elektromeister ist ind VDE studiert hat um eine Glühbirne zu wechseln wird eine Bastellösung wie VUSB die gegen alle Standards vertstößt verteidigt und jemand der einem der größten Pöbeler hier im gleichen Ton antwortet wird als Dummschwätzer bezeichnet. Lauter Koniferen hier ....
Karl K. schrieb: > Frank K. schrieb: > >> Es ist einfach der beschränkte Horizont der Leute > > Und das ist schlichtweg großkotzige Dummschwätzerei - einfach mal > Beleidigungen verteilen ohne auch nur irgend was über die technischen > Gegebenheiten zu wissen. > Vielleicht kann man gar keinen PIC verwenden? Das liegt dann meistens an der Unfähigkeit oder Bequemlichkeit der Leute, für die es nicht anderes als AVR gibt. Ich lese hier schon ziemlich lange mit und habe so meine Erfahrungen gemacht. Dies ist eine davon. Es gibt auch nette USB-ÄRMchen, so ist das nicht. Aber der PIC16F1454 ist halt die kleinste, einfachste und billigste Lösung, Hardware-USB2 zu bekommen. Nicht einmal einen Quarz brauchst Du hier, weil der USB Host einen exakten Takt liefern muss. Wie gesagt, es ist ja nicht so, dass es keinen Ausweg gibt. Selbst Atmel hat AVRs mit USB-Hardware. Nur eben halt nicht im DIL-Package. > Vielleicht geht es um eine existierende Lösung, die aus 'zig > unumgehbaren Gründen nicht modifiziert werden kann? Unter diesen Umständen sich einen so invasiven Code wie VUSB reinzuholen, wenn möglichst wenig verändert werden darf, ist in höchstem Maße leichtsinnig. Für solche Szenarien gibts USB-Seriell-Bridges. Wenn Du dann ACM-CDC haben willst, greifst Du einfach zu MCP2200 oder MCP2221 (das sind in Wirklichkeit vorprogrammierte PIC18F14K50 bzw PIC16F1455, aber das musst DU ja niemandem erzählen :-)), und fertig ist die Geschichte. > Aber Hauptsache, > erst mal auf den Putz hauen. Genau. Und Wahrheiten aussprechen, die niemand hören will. fchk
:
Bearbeitet durch User
Frank K. schrieb: > Genau. Und Wahrheiten aussprechen, die niemand hören will. Nein, das ist nichts weiter als nutzlose Informationen.
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.