mikrocontroller.net

Forum: PC-Programmierung while schleife


Autor: Assassin Specialiste (assassin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe 2 btn.
1 btn ist ein uhr programmiert.
2 btn soll eine enlose schleife.

wenn ich den 2 btn klicke dann funktioniert die uhr nicht mehr.

habt ihr ein idee wie ich die Uhr zum funk bekomme,

Autor: Thomas B. (yahp) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dürfte ne lustige Steinigung werden, ist ein Einheimischer...

Also mir fällt schwer zu verstehen, was du eigentlich willst. Wenn du 
mit dem Knopf in eine Endlosschleife gehst, dann hast du sowieso Pech 
gehabt ("Wer sich schuldig macht in meinem Namen, soll sehen, was er 
davon hat!"). Interrupts könnten eine Lösung für eine weiterlaufende Uhr 
sein. Aber ich spekuliere mal nicht weiter, da ich nicht verstehe, was 
du willst.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schreibe ein Programm mit mehreren Threads (Multithreading). Im ersten 
Thread lässt du die Uhr laufen und im zweiten Thread die endlose 
Schleife. Im dritten Thread bzw. im Hauptprogramm läuft deine grafische 
Benutzeroberfläche ("btns").

http://de.wikipedia.org/wiki/Multithreading_%28sof...
http://www.galileocomputing.de/openbook/visual_bas...

Autor: Assassin Specialiste (assassin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann ich ein uhr erstellen die unabhöngig ist von meinem hauptprogramm?

Autor: Assassin Specialiste (assassin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
stefan wie meinste du das bitte?

Autor: tastendrücker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Programmiersprache?

Eine Uhr mit einem Timer realisieren. Im Timer-Event die Zeit 
aktualisieren.

Autor: Thomas B. (yahp) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie schon beschrieben, ist Multithreading das Zauberwort. Aber das ist 
schon "höhere" Programmierung, mit Verlaub gesagt.

Manchmal hilft auch schon vernünftiges Programmdesign. Im vorliegenden 
Fall muss man sich ernsthaft fragen, was der Zweck besagter 
Endlosschleife ist!

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"wie meinste du das bitte?"

Die von dir geschilderte Aufgabenstellung kann generell mit einer 
Programmiertechnik gelöst werden, die als Multithreading bekannt ist.

Da ich vermutete, dass dir Multithreading bisher noch nicht 
untergekommen ist, habe ich einen Link angegeben, der das Konzept zum 
Nachlesen und Weiterstöbern erläutert.

Und einen Link wie Threads konkret z.B. in Visual Basic programmiert 
werden können.

Das Thema ist IMHO zu umfassend, um es hier in der Tiefe und von den 
Basics her zu erläutern. Aber das braucht man auch nicht, weil es schon 
genug dazu gibt. Man muss nur lesen können ;-)

Die Alternative von Thomas bietet sich bei µC an (Verwendung eines 
Timers und ein intelligentes Programmdesign). Du verlagerst quasi einen 
Thread in die unabhängig laufende Timerroutine. Auf einem PC ist man 
nicht so hardwarenah, um das so zu machen.

Autor: Thomas B. (yahp) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan wrote:
> Die Alternative von Thomas bietet sich bei µC an (Verwendung eines
> Timers und ein intelligentes Programmdesign). Du verlagerst quasi einen
> Thread in die unabhängig laufende Timerroutine. Auf einem PC ist man
> nicht so hardwarenah, um das so zu machen.

So ist es, ich hatte am Anfang nicht darauf geachtet, in welchem Forum 
wir uns befinden :(
Intelligentes Programmdesign würde ich aber auch auf PC-Ebene gelten 
lasse ;-)

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.