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

Re: Probleme mit Multiplexerabfrage Kategorie: Programmierung (von André H. - 16.04.2004 7:56)
Als Antwort auf Re: Probleme mit Multiplexerabfrage von Alfred - 12.04.2004 14:27
Ich nutze:
C-Control II Unit, C164CI-ControllerBoard, CC2-Application-Board, CC2-StarterBoard, CC2-ReglerBoard, OSOPT_V2, OSOPT V3.0
Hallo Alfred,

> Danke für die Beispiele, jedoch so richtig funktioniert dies bei mir nicht.
> Ich bekomme alle 4 Werte von den ersten 4 Ports vom MUX heraus, wobei aber nur am ersten Port
> ein Sensor angeschlossen ist - normalerweise müssten die doch 0 sein, oder?
> --> sie zeigen alle den selben Wert an.
> Normalerweise müsste ich doch mit dieser Abfrage "lcdext.zahl(AD[0])" nur den ersten Sensor
> abfragen können und bei den anderen AD[1] bis AD[3] müsste 0 stehen.

Nein, das ist nicht so.
0 darf nur angezeigt werden, wenn der Port wirklich auf GND-Pegel liegt.
Wenn ein Port unbeschalten ist, hängt der Wert von der Eingangskapazität ab,
und wie sehr sich diese aufgeladen hat bzw. während der Messung auflädt.
Daher sollten unbenutzte Ports immer gg. Masse gelegt werden.(direkt oder mit Widerständen)

> thread getad
>
>  {
>    for i=0...3
>   {
>    ports.set(PortA,i and 0b01);
>    ports.set(PortB,i and 0b10);
>    sleep 25; // Das ist wichtig !
>    AD[i]=pcfad.getAD(0,0);
>    run 255;
>    yield;
>    resume;
>    
>   }
>     //Wertausgabe
>     lcdext.goto(1,0);
>     lcdext.zahl(AD[0]);
>     lcdext.goto(1,8);
>     lcdext.zahl(AD[1]);
>     lcdext.goto(2,0);
>     lcdext.zahl(AD[2]);
>     lcdext.goto(2,8);
>     lcdext.zahl(AD[3]);
>     sleep 1000;
> }


So, wie ich es sehe, willst Du nur den ersten Kanal des AD-Wandlers über den Multiplexer
erfassen. Demnach stimmt der Code so.
Allerdings kann das
 run 255;
 yield;
 resume;

dann wegfallen. Es hat hier dann keinen Sinn mehr.

MfG André H.



Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: Danke André (von Alfred - 15.04.2004 21:14)