www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zu AT90USB1287 und Virt.Com Optimierungen


Autor: Marian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo.
Ich habe es nun endlich geschafft den 90USB1287 über USB als VirtalCom 
zu identifizieren und der Datenaustausch mit dem PC funktioniert auch.

Mein Programm auf dem AT90 ist aber knapp 80kb groß, davon gehen 70kb 
nur für den USB-Kram drauf (ohne Optimierungen des Compilers aber wegen 
Debugfähigkeit möchte ich noch keine Optimierungen aktivieren).

Geht das irgendwie noch kleiner? Kann man da noch was weg lassen?
Immerhin frisst so viel Code ja auch Rechenleistung und meine 
eigentliche Anwendung muss nahezu echtzeitfähig laufen.

Zweite Frage:
Ich habe meine Anwendung auf Basis des Atmel-Demoprogramms gemacht und 
da ist ein Scheduler enthalten, der die Tasks (den USB-Task und mein 
Prgramm) verwaltet.
Gibt es eine Möglichkeit den weg zu lassen, so dass ich einmal in meiner 
Main InitUSB(); schreibe und alles zu USB gehörige dann läuft?
Durch den Enumerationprozess wahrscheinlich nicht, da der priorität hat, 
oder?

...hach, wäre es doch nur so schön einfach wie bei RS232 :-)

Jödel-di-dü und Danke
Marian

Autor: Erwin Reuss (er-tronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na klar geht das alles viel kleiner, wenn man die Atmel-Library wegläßt 
und alles selber programmiert.
Ein komplettes CDC-Bios (also als Virtual-Com) ist spielend in weniger 
als 4 Kilobyte zu bekommen (mit WinAvr kompiliert). Ich hab das hier auf 
einem AT90USB162 laufen.

Der Enumerierungsprozess muß schon separat abgearbeitet werden, aber 
danach reicht eigentlich der regelmäßige Aufruf einer Routine um 
abzufragen, ob Daten über den Out-Endpoint eingetroffen sind. Man kanns 
natürlich auch mit Interrupts programmieren.

Erwin

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.