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

Re: I2C-Meßboard auslesen? Anfängerprogrammierfrage... Kategorie: Programmierung (von André H. - 1.01.2009 18:36)
Als Antwort auf I2C-Meßboard auslesen? Anfängerprogrammierfrage... von Franzzz - 31.12.2008 15:40
Ich nutze:
C-Control II Unit, C164CI-ControllerBoard, C-Control II Station, CC2-Application-Board, CC2-StarterBoard, CC2-ReglerBoard, OSOPT V3.1
Hallo Franzzz,

warum nimmst Du nicht das Modul pcfad.c2?
Es befindet sich unter Systemmodule in der IDE.
Ein Testprogramm kann dann in etwas so aussehen:

const pcf8591=0; //Subadresse 0-7
byte AD[4];
thread main
{
 lcdext.init();
 pcfad.init(pcf8591,1,0);
 loop
 {
  pcfad.getAD4(pcf8591,AD);
  lcdext.line(1);
  lcdext.print("0:");
  lcdext.zahl3p(AD[0]);
  lcdext.print(" 1:");
  lcdext.line(2);
  lcdext.zahl3p(AD[1]);
  lcdext.print("2:");
  lcdext.zahl3p(AD[2]);
  lcdext.print(" 3:");
  lcdext.zahl3p(AD[3]);
  sleep 500;
 }
}


MfG André H.


> Hello!
> Bitte um Rat: mir liest die CCIIStation beim I2C-MeÃ?board 1414 nur immer 255 aus... :-(
>
> Da ich leider überhaupt keine Ahnung habe wo ich bei meinem Setup mit der Fehlersuche beginnen
> soll (falsche Variablendeklaration?, zuwenig Strom für Me�board?, etc..),
> frage ich mal hier nach :)
>
> Mein HW-Aufbau:
> CCIIStation an 220V, I2C-MeÃ?board 1414 mit den 12V out der Station angeschlossen. Die 5V nicht.
> Auf dem Me�board stecken 2 Me�adapterbrücken 1400 & ein AnalogKopplerDual 1406
> Der erste MeÃ?adapter auf "Adapter A" ist mit 330 Ohm kurzgeschlossen, sollte also andere Werte als
> "255" produzieren
>
> SW:
> Folgender Code (gestohlen von hier (MartinBinder)) produziert nur "255" als Auslesewert am Display :(
>
> //*******    PCF8591 einlesen - Routine    *************
> //  byte i2caddress;                                 // PCF- Adresse im System
>   int digi;                               // Ausgangswert
>   int ain0, ain1, ain2, ain3;      // Eingangswerte
>     i2caddress = 144; // my PCF adress:  144/145
>     loop
>     {
>          lcdext.print ("Ausgangswert");
>          digi = stkeyb.input(1,0,10000); // ausgangswert - nehme 0 und 1 )
>          sleep 300;
>          pcfa.aout(i2caddress, 0x44, digi);  // output on, increment on
>          loop
>          {
>           ain1 = pcfa.ain(i2caddress); // liest erst Wert 1, dann 0,1,2,3
>           ain0 = pcfa.ain(i2caddress);            // dann Wert 0..
>           ain1 = pcfa.ain(i2caddress);            // dann Wert 1...
>           ain2 = pcfa.ain(i2caddress);            // dann Wert 2...
>           ain3 = pcfa.ain(i2caddress);            // dann Wert 3
>           lcdext.clear();
>           lcdext.line(1);
>           lcdext.zahl3p(ain0);
>           lcdext.zahl4p(ain1);
>           lcdext.zahl4p(ain2);
>           lcdext.zahl4p(ain3);
>           sleep 100;
>           if stkeyb.get() == 13 break;           // Exit menu w. C
>          } // endloop read / print PCF
>          lcdext.clear();
>          sleep 1000;
>       }
>     return 1;
> }
>

> Danke für jegliche Hilfe!
> lgF
>


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

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: I2C-Meßboard auslesen? Anfängerprogrammierfrage... (von Franzzz - 3.01.2009 23:14)