Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

Kommentar:
Einfügen von HTML im Kommentar:

Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a>
Bild einfügen: <img src="BILDURL">
Text formatieren: <b>fetter Text</b>  <i>kursiver Text</i> <u>unterstrichener Text</u>
Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b>
C2 Quellcode formatieren: <code>Quellcode</code>
ASM Quellcode formatieren: <asm>Quellcode</asm>
(Innerhalb eines Quellcodeabschnitts ist kein html möglich.)
Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst !  

> > > > Hallo Leute, > > > > nach Studium des Forums und aller mir zur Verfügung stehenden Handbücher möchte ich hier kurz mal > > mein Problem schildern (bin Anfänger in Sachen C-Programmierung). > > > > Ich möchte in einem thread1 auf der oberen Zeile des Stationsdisplays Wochentag, Datum und Uhrzeit > > ausgeben und im thread 2 auf der unteren Zeile verschiedene Statusangaben (abhängig von der Uhrzeit > > und verschiedenen Schalterstellungen an den Eingangsports) > > > > Jetzt mein Problem: wenn beide threads zusammen gestartet werden, werden die Anzeigen für > > Zeile 2 zum Teil in die erste Zeile geschrieben. > > Wenn nur einer der beiden threads gestartet wird gibt es keine Probleme. > > Kann mir jemand sagen, woran das liegt? > > Nachstehend ein kurzer Auszug aus dem Programm. > > > > <code> > > thread thr1 > > { > > > > string std,min,s,tag,monat; > > byte second; > > loop > > { > > if system.dow()==0 > > { > > lcdext.goto(1,0); > > lcdext.print("SO") ; > > </code> > > und so weiter.... > > <code> > > > > thread thr2 > > > > { > > { > > > > byte K1,K2,S1; > > byte outport; > > byte port; > > > > > > > > if K1==0 and K2==0 and S1==0 > > > > { > > > > lcdext.goto(2,0); > > lcdext.print("Normalbetrieb ") ; > > } > > </code> > > > > und so weiter > > > > <code> > > thread main > > { > > > > stports.init(); > > lcdext.init(); > > stports.LCDlight(1); > > > > { > > > > run thr1; > > run thr2; > > halt; > > > > } } > > </code> > > Vielen Dank > > Holger > > > Hallo Holger, > > Du darfst auch nicht von zwei Stellen aus versuchen eine Rescurce anzusprechen. Ist aber generell so. > > Deshalb: > Entweder du verhinderst einen gleichzeitigen Zugriff per Programm. Also Capturen. > Oder: > Du greifts nur von einem Thread auf das Display zu. Je nach Umfang oder Ausbau deines Programmes > könnte ein eigener Thread welcher nur für die Display Ausgabe zuständig ist sinnvoll sein. > Dann müssten Informationen zum Anzeigen in globalen Variablen abgelegt werden, welche sich oberhalb > deines Display Threades befinden. > > > Rene
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB