Langsamer Serial auf USB-Adaper

Gast #5198323
Programm zum Flashen: AvrOspII
Hardware nach AVR910

Szenario 1

Flashen eines ATTinys direkt über die COM-Schnittstelle 2 - 3  Sekunden.

Szenario 2

Flashen eines ATTinys über einen USB-Adapter 15 - 20  Sekunden.

Kann das durch eine geeignete Wahl eines besseren USB-Adpater/Treibers 
auf die 2 - 3 Sekunden der Direktverbindung gebracht werden?
Gast
Hallo Pascal,
da die von dir verwendete Schaltung auf einer klassischen seriellen 
Schnittstelle basiert, kommst du um deren Nachteile bei Verwendung eines 
USB-Adapters nicht herum.
Die USB-Kommunikation geschieht paket-basierend. Für die Kommunikation 
mit deinem Programmieradapter muss jedes Byte einzeln in ein USB-Frame 
verpackt werden und dadurch mit viel Overhead zum Adapter verschickt 
werden. Die Signallaufzeiten sind dadurch sehr lange. Es gibt Adapter 
die das besser lösen, jedoch sind die sehr teuer und dein Programmer 
wird die nicht erkennen. Da du mit heutiger Hardware auf die Verwendung 
von USB angewiesen bist, solltest du einen USB-Programmer verwenden.
Wenn du selbst bauen oder günstig kaufen willst, schau dir mal die 
USBasp-Programmer an. Ansonsten macht das programmieren mir erst so 
richtig Spaß, wenn ich auch mal debuggen kann, um zu prüfen, wie die 
Register so stehen. Die Tinys haben je nach typ verschiedene 
Debug-Schnittstellen. Ich würde mir also den passenden Programmer für 
die jeweilige Schnittstelle besorgen. HV-Programming sollte da auch drin 
sein. Vielleicht findest du irgendwo bei ebay einen alten Dragon oder 
so.
Persönliche Seite
stromverdichter schrieb:
> Die USB-Kommunikation geschieht paket-basierend. Für die Kommunikation
> mit deinem Programmieradapter muss jedes Byte einzeln in ein USB-Frame
> verpackt werden und dadurch mit viel Overhead zum Adapter verschickt
> werden.

Und der entscheidende Punkt ist hierbei der, daß maximal ein Paket pro 
Millisekunde übertragen werden kann, was die auf diese Art und Weise 
erzielbare Übertragungsrate auf bestenfalls 1000 Bytes/sec beschränkt.
Rufus Τ. F. schrieb:
> Und der entscheidende Punkt ist hierbei der, daß maximal ein Paket pro
> Millisekunde übertragen werden kann,

Witzigerweise sind es 4 Pakete pro 1ms, wenn ein USB2.0 Hub dazwischen 
hängt. Und ja, das hab ich selbst ausgemessen. Hat was mit damit zu tun, 
das der Hub das auf USB High Speed übersetzt.

Heutzutage hat man sowas eigentlich fast immer rumfliegen, wäre also 
einen Versuch wert...
Gast
Jim M. schrieb:
> Rufus Τ. F. schrieb:
>> Und der entscheidende Punkt ist hierbei der, daß maximal ein Paket pro
>> Millisekunde übertragen werden kann,
>
> Witzigerweise sind es 4 Pakete pro 1ms, wenn ein USB2.0 Hub dazwischen
> hängt. Und ja, das hab ich selbst ausgemessen. Hat was mit damit zu tun,
> das der Hub das auf USB High Speed übersetzt.

Das hängt mit den Microframes zusammen, die dauern nur 125 Mikrosekunden 
statt 1 Millisekunde.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.