AVR Attiny USB Treiber

OP #5155304
Lesenswert?
• ▲
▼
Hi,
in meinem bisherigen Projekten steuere ich den Attiny über einen 
FTDI-Konverter an, welcher beim Attiny am UART angeschlossen ist.

Nun benötige ich für ein Projekt aber den UART anderweitig und bin auf 
der Suche nach einer Softwarelösung, mit der ich den Attiny direkt an 
USB anschließen kann. Ich möchte aber auf der PC-Seite keine besonderen 
Treiber/Software installieren, die Software auf dem PC soll wie bisher 
einfach den virtuellen COM-Port für die Kommunikation nutzen.

Eine Suche im Forum verweist auf VUSB, dies wird aber in einigen 
Beiträgen z.B. im Beitrag "Re: AVR mit USB steuern" 
als Pfusch bezeichnet. Auch ist mir aus der Doku nicht klar, ob ich 
nicht doch einen speziellen Treiber auf PC-Seite brauche.

Kann mir jemand eine Software-Bibliothek für den Attiny empfehlen, 
welche die Anforderungen erfüllt?

LG Matthias
#5155312
Lesenswert?
• ▲
▼
Matthias T. schrieb:
> Nun benötige ich für ein Projekt aber den UART anderweitig und bin auf
> der Suche nach einer Softwarelösung, mit der ich den Attiny direkt an
> USB anschließen kann...

Wenn der Controller der gleiche bleiben muss, warum dann nicht Software 
UART? Egal ob zum FTDI oder anderweitig. Das ist vermutlich um einiges 
einfacher und Standard konformer wie Software USB Murks.
#5155314
Lesenswert?
• ▲
▼
Matthias T. schrieb:
> und bin auf
> der Suche nach einer Softwarelösung, mit der ich den Attiny direkt an
> USB anschließen kann.
Das ist, wenn man die Spezifikation beachten will, von Vorneherein zum 
Scheitern verurteilt. USB ist differenziell und solche Signale kann man 
nicht ohne extra Hardware erzeugen.

> Ich möchte aber auf der PC-Seite keine besonderen
> Treiber/Software installieren, die Software auf dem PC soll wie bisher
> einfach den virtuellen COM-Port für die Kommunikation nutzen.
>
> Eine Suche im Forum verweist auf VUSB
Mit V-USB kann man ein CDC Device implementieren (Beispiel: 
http://www.recursion.jp/avrcdc/). Das würde dann wie bisher einen 
virtuellen COM Port ohne extra Treiber bereitstellen.

> dies wird aber in einigen
> Beiträgen als Pfusch bezeichnet.
Zu Recht, denn es verletzt die USB Spezifikation, und zwar auf allen 
möglichen Ebenen. Dass es trotzdem funktioniert, liegt nur daran, dass 
die Host-Hardware und Treiber es meistens tolerieren.

Software UART zum FTDI, wie mein Vorredner vorschlägt, wäre definitiv 
die beste Lösung.
#5155807
Lesenswert?
• ▲
▼
Matthias T. schrieb:
> die Software auf dem PC soll wie bisher
> einfach den virtuellen COM-Port für die Kommunikation nutzen.

Damit fällt VUSB aus. Du brauchst einen AVR mit Hardware USB für COM 
Ports.

Falls man noch einen Timer übrig hat, könnte man den UART in Software 
emulieren - das ist um Größenordnungen einfacher als USB.

Felix U. schrieb:
> Mit V-USB kann man ein CDC Device implementieren

Nö, kann man nicht. Modernes OS erlaubt den üblen Hack (Bulk Endpoints 
mit Low speed USB) nicht mehr, d.h. man kann keinen Treiber 
installieren.
Gast #5156554
Lesenswert?
• ▲
▼
Jim M. schrieb:
> Felix U. schrieb:
>> Mit V-USB kann man ein CDC Device implementieren
>
> Nö, kann man nicht. Modernes OS erlaubt den üblen Hack (Bulk Endpoints
> mit Low speed USB) nicht mehr, d.h. man kann keinen Treiber
> installieren.

Also mit XP gehts. Was ist denn ein "modernes OS"?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.