www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Hindergrund Routine


Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey, weiß jemand von euch ob man mehrere Prozesse in BASIC parallel 
ablaufen lassen kann, also den einen für eine bestimmte Zeit und im 
Hintergrund den anderen??

Brauch man da eine While-Schleife? For?

Anja

Autor: Buddl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich gehe mal davon aus weil du in BASIC programmierst redest du von 
AVRs?
Sowas ist nicht möglich. Ein AVR kann immer nur einen Prozess zu einer 
Zeit machen, nie mehrere gleichzeitig. Einzige Ausnahmen sind spezielle 
Features (Watchdog, Brown Out,...) und Interrupts (Timer).

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja Avrs. Schade..

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Anja (Gast)

>Hey, weiß jemand von euch ob man mehrere Prozesse in BASIC parallel
>ablaufen lassen kann, also den einen für eine bestimmte Zeit und im
>Hintergrund den anderen??

Nein.

>Brauch man da eine While-Schleife? For?

Eher While. Du musst deine einzelnen Prozesse so programmieren, dass sie 
nur kurze Zeit arbeiten und dann wieder beendet werden (Als Funktionen). 
Dann kannst du in einer Endlosschleife nacheinander deine Prozesse 
aufrufen und hast damit kooperatives Multitasking geschaffen.

MfG
Falk

Autor: ARM-Fan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wirklich Parallel nicht, aber quasi-parallel.
Das macht zum Beispiel der Scheduler eines Betriebssystems.
Das geht auf jedem Rechner.

Autor: Frank Link (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Anja,
schaumal in die Codesammlung da gibt es einen Scheduler. Vielleicht 
reicht er ja für Dich

Gruss
Frank

Autor: 1315 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da kam schon viel Geschwaetz den Bach runter. Ja, man kann mehrere 
Prozesse laufen lassen, und nein ein Betriebssystem mit Scheduler 
braucht man dazu nicht.
Die Prozesse sind logisch fast unabhaengige Gebilde. Da heisst sie haben 
voneinander unabhaengige Variablen und ein unabhaengiges Timing.
Das einfachste ist die Prozesse auf ein gemeinsames Raster zu bringen, 
das von einem Timer vorgegeben wird. Der eine Prozess kommt vielleicht 
alle zwei Takte vor, der andere alle 5 Takte. Im Main, und nur im Main 
wartet man auf den Timer, der das Timing vorgibt und laesst dann eine 
Scheibe des Prozesses laufen. Der Prozess darf nirgendwo warten und muss 
schneller fertig sein als das Interval indem er gestartet wird.

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.