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

Captures Kategorie: Programmierung (von Günni - 29.11.2012 13:05)


Kann es sein, dass z.B. im eeprom-Modul ein Denkfehler in Bezug auf die vorhandenen Captures
besteht oder habe ich da einen Denkfehler?

Z.B. bei read:

/*************************************/
/* Lesezugriff einleiten             */
/*************************************/
function read(byte eepromaddr,int addr) returns int
{byte i;
 i=0;
 loop
 {
  if i2c.cstart(Addr[eepromaddr]) break;
  i2c.stop();
  if i>=EEwaitLoops return 0;
  i=i+1;
  sleep EEwaitTime;
 }
 i2c.write(addr shr 8);
 i2c.write(addr);
 i2c.start(AddrR[eepromaddr]);
 return -1;
}


Wie geht die C-Control mit den Parametern der Funktion (eepromaddr und addr) um, wenn beispielsweise aus zwei Threads
die Funktion quasi gleichzeitig aufruft? Die Parameter werden doch bestimmt auf den Stack gelegt,
aber die Verarbeitung wird erst bei i2c.cstart(...) geblockt.

Ist das ein Fehler oder ok so?


    Antwort schreiben


Antworten: