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 !  

> Ist mein Problem so einfach oder so dumm, dass keiner antwortet? > bitte ein Tip! > > <hr> > > > Hallo, > > > > ich hab schon wieder eine Herausforderung. > > Mein Programm funzt soweit, dass es den Eingang ausließt, jedoch stoppt es nicht > > den Programmablauf, sondern spilet sofort die Melodien - ich kann sie nicht mehr hören. > > > > <code> > > /* Projekt Ansteuerung Frequenzumrichter */ > > /* Beginn 13.01.2005 */ > > /* Autor: S. Golebniak */ > > > > /* HW-Voraussetzung: > > /* Ein Frequenzumrichter > > /* über PLM0 soll alle 20 ms ein Impuls gehen. > > /* Die Länge des Impusl ist von 1.1ms linker bis 2.1ms rechter anschlag */ > > > > > > > > //------------------------------------------ > > function beep(int ton, int laenge,int pause) > > //------------------------------------------ > > { > > plm.beep(ton); > > sleep laenge; > > plm.beep(plm.TONE_OFF); // Signal abgeschaltet, Analogport wird nebutzt > > sleep pause; > > } > > > > function SetFu(int Kanal,float Value) > > { > > // 0=1.1ms = 1375 Impulse * 800 ns Praxis 700 * 800 = 0.56ms > > // 50=1.6ms = 2000 Impulse * 800 ns > > // 100=2.1ms = 2625 Impulse * 800 ns Praxis 2800 *800ns = 2.24ms > > int outvalue; > > string s1; > > > > // was auf den ausgang geht > > > > outvalue=700+(21*Value); > > plm.out(1,outvalue); > > lcdext.goto(2,0); > > s1 = "fa="; > > str.putfloatf(s1,Value,2); > > lcdext.print(s1) ; > > } > > //--------- > > thread main > > //--------- > > { > > float x; > > string s1; > > float voltage; > > string output; > > float zeit; > > string time; > > int start; > > string anfang; > > > > > > // Initial LCD > > lcdext.init(); > > wait lcd.ready(); > > lcdext.clear(); > > lcdext.home(); > > lcdext.goto(1,0); > > > > // initial PLM > > plm.settimebase(0,1); //Base_800 ns > > plm.setmode(0,0); //Mode=digital > > plm.setperiod(0,2500); //Periodenlänge=Base_800 ns * 25000 = 20 ms oder 50 Hz > > SetFu(0,0); //Servomitte > > //ports.set(8,0); > > > > loop > > { > > > > // Einlesen der Eingänge > > //Spannung > > > > voltage = ports.adc(1) * 0.004; // 4 mV per ADC Digit An Eingang A1 > > output = "Ve="; > > str.putfloatf (output, voltage, 2); > > lcdext.goto(1,0); > > lcdext.print(output); > > > > // Zeit > > zeit = ports.adc(0); // Zeit entspricht Spannung am Eingang A0 > > time = "t="; > > str.putfloatf (time, zeit, 2); > > lcdext.goto(1,8); > > lcdext.print(time); > > > > > > > > // Einlesen der digitalen Eingänge > > //Start > > > > start = ports.get(8); // High-Pegel auf E0 > > anfang = "p="; > > str.putfloatf (anfang, start, 2); > > lcdext.goto(2,8); > > lcdext.print(anfang); > > > > > > //Ausgabe auf Ausgang > > SetFu(0,voltage); > > > > if ports.get(8) >= 0 > > sleep zeit*1000; > > else > > { > > > > // CALLING > > melody.good_bad_ugly(); > > melody.pink_panther(); > > > > } > > > > } > > } > > > > //ENDE > > > > </code> > > > > ich hatte es auch in der fprm versucht einen anderen thread aufzurufen geht aber nicht. > > > > Wird der thread in einem neuen Modul definiert oder im selben? > > > > if ports.get(8) >= 0 > > sleep zeit*1000; > > else > > run = beepen > > > > da gibt es bei beepen immer eine Fehlermeldung, ebal ob der thread beepen im selben Modul > > oder in einen eigenen untergebracht ist. > > > > Wenn ich also Port 8 mittels Sapnnung auf 0 setze bekomme ich <b> sofort </b>diese furchtbare Melodie. > > Gedacht ist das ganze um über Port 8 das Programm zu stoppen, über Port 9 Pause - das aber erst > > wenn ichs kann. > > > > Danke schonmal! > > > >
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB