www.mikrocontroller.net

Forum: Compiler & IDEs FreeRTOS und vUSB


Autor: B. H. (bluehazzard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Hat schon jemand mal probiert FreeRTOS und vUSB auf einen ATmega oder 
ATiny gemeinsam zu nutzen? Bin gerade dabei hänge aber bei der usbPoll 
Funktion, denke ich mal, mein Gerät wird halt nicht erkannt, wenn man es 
am PC einstöpselt... Ohne FreeRTOS funktioniert es aber...

Also, meine Frage: Hat das schon jemand mal mit Erfolg probiert?

mfg.

Autor: Ulli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo B. H.,

ich bin gerade auf deinen Beitrag gestoßen. Leider kann ich dir dabei 
nicht helfen, aber ich bin derzeit dabei das FreeRTOS ebenfalls auf 
einen Mikrocontroller zum laufen zu bringen. Mich würde mal 
interessieren wie das mit den Queue's und Semaphroen unter FreeRTOS 
funktioniert.
Hast du dazu eventuell eine kleine Beispielapplikation?
Das wäre echt super von dir.

Bye

Autor: Bernhard M. (boregard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe Zweifel, daß das geht.
vUSB ist sehr zeitkritisch, wenn ich es richtig verstanden habe, müssen 
Interrupts sehr schnell bedient werden, d.h. eine "Applikation" darf 
keine Interrupts sperren, da sonst der USB Bus nicht schnell genug 
bedient werden kann.
RTOS hingegen muß öfter mal Interrupts sperren...

Ich lasse mich aber gerne eines Besseren belehren...

Gruß,
Boregard

Autor: B. H. (bluehazzard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

@Bernhard M.:
Habe jetzt noch ein bisschen weiter experimentiert, und es doch zum 
laufen gebracht. Mit einer relativ niedrigen Tick Rate des OS hat es auf 
Anhieb funktioniert. Aber da ich doch einen Tick von ca. 10kHz benötige 
musste ich nur ein bisschen probieren, und auch die Taskverwaltung durch 
einen Interrupt unterbrechen lassen (nachdem er die gesamten Register 
auf dem Stack gespeichert hat) so geht mir zwar das RT von RTOS 
verloren, aber mir kommt es mehr auf das OS an ;).
Das Funktionieren bezieht sich imo aber nur auf das erkennen am PC, ob 
ich nun Daten empfangen und Senden kann, muss ich erst noch 
ausprobieren...


@Ulli:
Damit habe ich mich noch nicht genauer beschäftigt, dürfte aber kein so 
großes Problem sein oder? Ich finde die API und Manual recht gut... Wenn 
ich aber USB fertig habe, werde ich mich daran machen. Dies ist für mein 
Projekt aber nicht so wichtig, bzw. ich denke, dass ich ohne Semaphroen 
auskomme. Queue's werde ich aber für die Kommunikation brauchen. Mal 
schaun...

mfg.

Autor: zOttel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guck mal hier: http://forums.obdev.at/viewtopic.php?f=8&t=3778 da 
versagte vUSB, wenn andere Interrupts länger als 1µs (bei 12MHz) 
gesperrt wurden..

Autor: B. H. (bluehazzard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen.
Habe es inzwischen aufgegeben... Der Interrupt muss einfach zu schnell 
ab serviert werden, und wenn ich nicht die SFR speichern kann, dann 
bringt mir das die ganzen Tasks durcheinander...
Vielleicht probiere ich es Später noch mal...

mfg.

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.