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

Re: Quelltext Kategorie: Programmierung (von LittleHouse - 4.08.2003 11:44)
Als Antwort auf Re: Quelltext von André H. - 2.08.2003 14:41

Hallo..

Eigentlich dachte ich, ich mach's mit Fettschrift und kursiv übersichtlicher .. naja war wohl 'n Trugschlu�!

So also:

Ja ich benutze die Unit 2 und das applikationdings aber Conrad hat mir noch 'n extra Display reingepackt.
Und so wie ich die Sache verstanden hab bedient lcd den kleinen Display auf der Unit und Station_lcd den extra
display. Bis jetze hat's so funktioniert.

Mit den vielen Threads: das hat mir chefchen gesagt und ich hab mich an Step 13 gehalten!
Die sollen ja nicht einer nach dem anderen laufen, sondern immer wenn sie benötigt werden.
Das hat mittlerweile auch gefunzt!
Völlig ohne Probleme. Wenn der Quelltext besser sein kann, ich bin für alles offen.
Hab's mittlerweile geschafft mittels CC2 mit einem RFID
Leser zu kommunizieren. so weit so gut.

neues Problem: Seit dem ich die neue Software Op_v2.hex( oder so, also das neuste) draufgespielt hab, spinnt meine
auch mitgelieferte Tastatur total rum!
Ich lass mir mit dem Programm...:

thread main
{
string s;
int Mode;
      {
      wait station_io.getkey() != 255;
      sleep 50;
      Mode = ports.adc(7);
      str.putint(s,Mode);
      station_lcd.print(s);
      sleep 1000;
      station_lcd.clear();
      s="";
      }
}

... einfach nur die Spannungswerte der Tasten anzeigen(weil halt irgendwas nich stimmt) und nun passiert folgendes:

obwohl es eigentlich gar nix machen dürfte schreibt mir cc2 immer 1023 ins display danach lauter 3en aber ohne! das
Display zulöschen. Wieso??

Mit ist auch aufgefallen das in der station_io die Spannungswerte nicht stimmen:

/***********************************/
/* Get single Key #                */
/***********************************/
function getkey()returns int
{
//int keycode;
int adcval;
int oldval;
  if (ports.adc(7)< 32){keycode=255;return keycode;}
// let the adc value get stable
  oldval=0;
  while math.abs(oldval-ports.adc(7))>10
  {oldval=ports.adc(7);sleep 20;}
// decode the pressed key
  adcval=ports.adc(7);
  if adcval>32 {keycode=10;}//F1   -  67
  if adcval>98 {keycode=11;}//F2   - 134
  if adcval>161 {keycode=12;}//F3  - 200
  if adcval>229 {keycode=1;} //    - 264
  if adcval>294 {keycode=2;} //    - 330
  if adcval>359 {keycode=3;} //    - 395
  if adcval>424 {keycode=4;} //    - 461
  if adcval>489 {keycode=5;} //    - 526
  if adcval>555 {keycode=6;} //    - 592
  if adcval>620 {keycode=7;} //    - 657
  if adcval>686 {keycode=9;} //    - 727
  if adcval>753 {keycode=8;} //    - 790
  if adcval>820 {keycode=0;} //    - 858
  if adcval>888 {keycode=13;}//CLEAR - 926
  if adcval>957 {keycode=14;}//ENTER - 996
  return keycode;
}

Dies ist ein Auszug aus der Station_io!
Wenn bei mir keine Taste gedrückt wird liegen bei mir immer über 1000 mv(?) an. Aber das Programm denkt das
die 14 dauernd gedrückt ist! Is doch quatsch! Sollte die 255 nicht mit über 1000 festgelegt werden??

Das hab ich testweise auch gemacht aber obwohl ich ober die wait funktion eingebaut hab schreibt mit das Progamm
die 1000 mv hin! Wieso??

Sorry wenn's soviel und unübersichtlich ist, aber ich wei� mal wieder nich weiter..


    Antwort schreiben


Antworten:

Re: Quelltext (von André H. - 4.08.2003 12:09)
    Re: Quelltext (von Rolf - 4.08.2003 16:31)
        Re: Quelltext (von Burkhard Fischer - 4.08.2003 20:44)
            Re: Quelltext (von Rolf - 4.08.2003 21:13)
    Re: Quelltext (von LittleHouse - 4.08.2003 12:30)
        Re: QuelltextTastatur (von Thomas - 5.08.2003 12:56)