Go Down

Topic: doppia icsp (Read 3793 times) previous topic - next topic

gianni88

usando giustamente la libreria #include <PixyI2C.h>

brunello22

ma lo hai cambiato lo sketch, per usare l'I2C ?

gianni88

si si ho usato il loro esempio:

Code: [Select]

#include <Wire.h>
#include <PixyI2C.h>


PixyI2C pixy;
// PixyI2C pixy(0x55); // You can set the I2C address through PixyI2C object

void setup()
{
  Serial.begin(9600);
  Serial.print("Starting...\n");
 
  pixy.init();
}


void loop()
{
  static int i = 0;
  int j;
  uint16_t blocks;
  char buf[32];
 
  blocks = pixy.getBlocks();
 
  if (blocks)
  {
    i++;
   
    // do this (print) every 50 frames because printing every
    // frame would bog down the Arduino
    if (i%50==0)
    {
      sprintf(buf, "Detected %d:\n", blocks);
      Serial.print(buf);
      for (j=0; j<blocks; j++)
      {
        sprintf(buf, "  block %d: ", j);
        Serial.print(buf);
        pixy.blocks[j].print();
      }
    }
  } 
}

astrobeed

#18
Feb 19, 2015, 02:49 pm Last Edit: Feb 19, 2015, 02:49 pm by astrobeed
si si ho usato il loro esempio:
Verifica l'address I2C della tua Pixy.
Scientia potentia est

brunello22

Quote
The I2C address can be configured in the "Interface" tab of the Configure Parameters dialog in PixyMon

gianni88

ho usato quello di default 0x54
Code: [Select]

PixyI2C pixy;
// PixyI2C pixy(0x55); // You can set the I2C address through PixyI2C object


e ho provato anche a decomentare la riga sucessiva e commentando l'altra ma nulla

astrobeed

Infatti la tua Pixy ha l'address 0x54, devi inserirlo nel codice: PixyI2C pixy(0x54).

Scientia potentia est

gianni88

risolto risolto, era un problema della porta di uscita, era impostata come 0 e ho risolto impostando la 2,

ultima domanda: le sda e scl sono i pin 20 e 21, dove collego l'altra sempre in i2c?

brunello22

sempre lì.
devi solo assegnare un diverso address alla seconda pixy

gianni88

ah, "sdoppio" le uscite diciamo?

brunello22

si.
l'I2C e' un BUS, quindi vanno tutte in parallelo

gianni88

capito, grazie mille, xo mi sfugge la sintassi per dichiarare i due indirizzi

Code: [Select]
PixyI2C pixy(0x54), (0x55);

questa mi da errore

brunello22

Code: [Select]
PixyI2C pixy   (0x54) ;
PixyI2C pixy_2 (0x55) ;



gianni88

avrò quindi anche delle "istanze" diverse a seconda da dove arrivano gli input quindi?

Go Up