Für dieses Forum muß Javascript im Browser aktiviert werden!
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 Hix, > das ist bereits bekannt. > Es handelt sich aber <u>nicht</u> um einen Bug. > Es hat mehr mit der Elektronik zu zun. > > Mehr siehe im Archiv, Kategorie Programmierung: > <i>Probleme beim Aufruf mehrerer Threads Kategorie: Programmierung (von Thomas Einzel - 16.4.2002 10:31)</i> > > Ich schreibe in meine Module auch keine Capture, da viele > Anwendungen mit einem, max. zwei Threads auskommen, > und es dort dann keine Resourcen-Überschneidungen gibt. > > Du brauchst jetzt nicht alle Module der Station durchsuchen ! > Das "Problem" betrifft nur das LCD im Zusammenhang mit den > schieberegistererweiterten Ausgängen.(u.a auch Relais und LEDs) > (siehe auch Schaltplan) > > Aber Du hast dennoch recht. Im Handbuch hätte zumindest ein Hinweis > stehen sollen. > > MfG André H. > > > Hallo, > > > > nach den ersten Programmierversuchen der CC2-Station war ich doch sehr erstaunt, dass bei einer multi-threading Anwendung die LED's wild durcheinander > > blinkten, und die Relais klapperten, obwohl vom Programm nicht geschaltet. > > > > Den Fehler fand ich recht schnell. Die Relais, die LED's, die Beleuchtung der LCD und fuenf Ausgabeports werden ueber eine Variable bitweise gesteuert. > > Diese Variable wird durch Funktionsaufrufe (z.B. station_io.LEDon() ) veraendert, > > danach wird der Wert der Variablen in ein Schieberegister rausgetaktet. Dieses > > Raustakten erfolgt durch statio_io.shiftout(). Diese Funktion (und auch alle > > anderen CC2-Station Schaltfunktionen) ist meiner Meinung nach nicht > > multi-threading faehig, weil nicht durch 'capture' geschuetzt. Der Zugriff > > auf die Schaltvariable, die Schaltfunktionen und die shiftout-funktion > > koennen beliebig unterbrochen werden. Das ist besonders interessant, wenn > > man z.B. die LED's und Relais durchverschiedene Threads ansteuern > > moechte. > > > > Ich finde es schade, dass der Ersteller (DIE HARD ???) der CC2-Station Zusatz-Routinen ueber multi-threading nicht nachgedacht hat. > > Ich habe nun die leise Befuerchtung, dass ich saemtlichen Code der CC2-Station auf diesen Bug genau untersuchen muss. Stichproben > > bei verschiedenen Funktionen der CC2-Station Zusatzmodule zeigen, > > dass die Befehle capture/release ueberhaupt nicht verwendet wurden! > > > > Es gibt weiterhin im Modul station_lcd einen Fehler bei showdate(), die > > Jahreszahl wurde hier fest auf 01 gesetzt! > > > > Die Module station_lcd, station_io, station_2wsm, station_plm und > > station_twb sind wohl 'offizielle' Module, da sie im Handbuch der CC2-Station > > mit ihren Funktionen aufgefuehrt sind. > > > > Meine Frage: sind bei den 'klassischen' Funktionen der CC2 (nicht Station) > > auch solche 'Features' festgestellt worden. Auf den ersten Blick sieht es > > fuer mich so aus, als ob diese Module 'sauber' sind. > > > > Zusatzinfo: Die CC2-Station Module stammen von der CD-ROM > > "C-Control Utility Collection, Release 11/2001". > > > > Hix > >