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, > > hab mal wieder ein Problem, bin jedoch mit Eurer Hilfe > schon viel weiter in der Programierung. Nun ein bissl. > Code: > > int i,a,u1, u2, key; > byte adr, mask, out, input; > > > //********************************// > function Taste () returns int > //********************************// > { > > //while (ports.adc(7)>900); > u1= ports.adc(7); > u2= ports.adc(7); > if (math.abs(u1-u2))< 4 > { > if u1<901 key=3;//3 > if u1<825 key=6;//6 > if u1<755 key=9;//9 > if u1<690 key=12;//# > if u1<620 key=2;//2 > if u1<550 key=5;//5 > if u1<480 key=8;//8 > if u1<410 key=0;//0 > if u1<335 key=1;//1 > if u1<270 key=4;//4 > if u1<190 key=7;//7 > if u1<110 key=11;//* > if u1>1000 key=-1; > } > return key; > } > //********************************// > function error_on() > //********************************// > { > rblcd.init(); > rblcd.goto(2,4); > rblcd.print("Bus Fehler"); > sleep 5000; > } > //********************************// > function error_off() > //********************************// > { > run 100; > rblcd.init(); > rblcd.goto(2,4); > rblcd.print("PIO-4 OK"); > sleep 1000; > } > > /*******************************************************/ > /*** Thread Schlüsselschalter */ > /*******************************************************/ > thread schluessel > { > do{ports.set(14,1);} > while key==3; > } > > //********************************// > function abfrage_Pio() > //********************************// > { > rblcd.init(); > adr = 1; // PIO-4 Sensor auf Adresse 1 > mask = 0x08; // PA3 (violett) = Ausgang > // PA0 bis PA2 (grau, weiß, pink) = Eingang > // Bitmuster : 0000 1000 > out = 0x08; // Ausgang soll +5V annehmen > // Bitmuster : 0000 1000 > input = twbs.rwport(adr, mask, out); // Digitalport schreiben & lesen > > // Wenn die Drähte grau und weiß mit violett verbunden wurden, ergibt sich : > // input hat den Wert 0x0B > Bitmuster : 0000 1011 // Für PA3 steht das Bit auf > 1, weil das Ausgangsbit mit out gesetzt wurde > > if input==0x0C //Pink PA2 > { > run schluessel; > } > > if input==0x08 //PA3 > {error_off();} > > } > > /*******************************************************/ > /*** Thread Tastaturabfrage */ > /*******************************************************/ > //------------ > thread tast_abfrage > //------------ > { > > rbkeyb.select(0); > lcd.init (); > lcd.goto(0,0); > > //while (rbkeyb.get()==0); > lcd.put(rbkeyb.get()); > sleep 100; > } > > /*******************************************************/ > /*** Thread MAIN */ > /*******************************************************/ > //------------ > thread main > //------------ > { > ports.set(14,0); > twb.init(); > abfrage_Pio(); > run tast_abfrage; > } > > Nun das Problem: > > Im Thread "schlüssel" möchte ich, dass der Port 14 > high geht und dass aber nur solange bis die Taste 3 > betätigt wird. Funktioniert bei mir aber nicht. > > Was mach ich falsch. Sind fehler im Prog.? > > Allergrößten Dank!!! >
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB