But I guess there can't be one i2c address per specific device, or you'd run out of addresses quickly... If the same device is used several times, maybe a higher protocol (above i2c) should handle this by checking its device ID.
Seb 2011/4/4 mattschinkel <[email protected]> > I guess they never thought someone would want to use two SHT21's in > the same circuit. > > They should have used the two NC pins for setting the address, like > microchip does. > > Matt. > > On Apr 4, 5:32 am, "Serdar K." <[email protected]> wrote: > > But that address is same for all SHT21 s. Everyone has an unique serial > ID > > also, but that has nothing to do with I2C protocol. > > > > 2011/4/4 mattschinkel <[email protected]> > > > > > > > > > > > > > from SHT21 datasheet: > > > > > Sending a Command > > > > > After sending the Start condition, the subsequent I2C > > > header consists of the 7-bit I2C device address ‘1000’000’ > > > and an SDA direction bit (Read R: ‘1’, Write W: ‘0’). > > > > > On Apr 4, 4:52 am, Sebastien Lelong <[email protected]> > > > wrote: > > > > If you can access the device using i2c protocol, it inevitably has a > i2c > > > > address as it's inner part of the procotol itself. > > > > > > Cheers, > > > > Seb > > > > > > 2011/4/4 Serdar K. <[email protected]> > > > > > > > The thing is, i can't find any data on the datasheet of SHT21 to > > > address > > > > > them. > > > > > It has an ID, and you can read the ID, but no specific I2C address, > and > > > no > > > > > match mechanism is shown for the SHT21 ID as far as i could see. > > > > > > > 2011/4/4 mattschinkel <[email protected]> > > > > > > >> Why do you need 2 I2C ports? I2C is addressable and you may put > more > > > > >> then one device on one I2C port. > > > > > > >> Matt. > > > > > > >> On Apr 4, 3:13 am, "Serdar K." <[email protected]> wrote: > > > > >> > 2011/3/27 mattschinkel <[email protected]> > > > > > > >> > > > > MSSP2 will require a separate SPI library, or a constant > in > > > the > > > > >> > > > > current lib to choose between 1 and 2. > > > > > > >> > > > OK. I guess this is the same for serial hardware with > RX1/TX2 > > > and > > > > >> > > RX2/TX2. > > > > >> > > > Preprocessor to the rescue ? > > > > > > >> > > Someday we all need to decide on either using the same library > > > twice, > > > > >> > > or create a 2nd library. A preprocessor doesn't seem like the > > > right > > > > >> > > solution. Again, pointers would be nice. > > > > > > >> > I even do need it now. > > > > >> > Not only to decide which module, registers, i need to use > seperate > > > ports > > > > >> for > > > > >> > two different > > > > >> > devices simultaneously. > > > > > > >> > My need for now is to select different two similar (better > > > equivalent) > > > > >> i2c > > > > >> > devices. > > > > >> > I use software I2C, my work is to be easier in this way, but it > > > isn't. > > > > >> Or i > > > > >> > haven't enough knowledge about JAL. > > > > > > >> > .......................... > > > > >> > ..... > > > > > > >> > var byte I2C_PortIndex = 1 > > > > > > >> > ............................. > > > > > > >> > --- > > > > > > //============================================================================== > > > > >> > --- //Initializes the ports for I2C interface > > > > >> > --- > > > > > > //============================================================================== > > > > >> > procedure i2c_initialize() is > > > > >> > --- > > > > > > //============================================================================== > > > > > > >> > if (I2C_PortIndex == 1) then > > > > >> > i2c_SHT21_sda_direction = low; // Set port as > > > output > > > > >> for > > > > >> > configuration > > > > >> > i2c_SHT21_scl_direction = low; // Set port as > > > output > > > > >> for > > > > >> > configuration > > > > > > >> > i2c_SHT21_sda = low; // Set SDA level as low for > output > > > mode > > > > >> > i2c_SHT21_scl = low; // Set SCL level as low for > output > > > mode > > > > > > >> > i2c_SHT21_sda_direction = high; // I2C-bus idle > mode > > > SDA > > > > >> > released (input) > > > > >> > i2c_SHT21_scl_direction = high; // I2C-bus idle > mode > > > SCL > > > > >> > released (input) > > > > >> > end if > > > > > > >> > if ( I2C_PortIndex == 2 ) then > > > > >> > i2c_SHT21_sda_direction_2 = low; // Set port as > > > output > > > > >> for > > > > >> > configuration > > > > >> > i2c_SHT21_scl_direction_2 = low; // Set port as > > > output > > > > >> for > > > > >> > configuration > > > > > > >> > i2c_SHT21_sda_2 = low; // Set SDA level as low for > > > output > > > > >> mode > > > > >> > i2c_SHT21_scl_2 = low; // Set SCL level as low for > > > output > > > > >> mode > > > > > > >> > i2c_SHT21_sda_direction_2 = high; // I2C-bus > idle > > > mode > > > > >> SDA > > > > >> > released (input) > > > > >> > i2c_SHT21_scl_direction_2 = high; // I2C-bus > idle > > > mode > > > > >> SCL > > > > >> > released (input) > > > > >> > end if > > > > > > >> > end procedure > > > > > > >> > ..... > > > > > > >> > .... > > > > > > >> > This is only the shortest procedure. > > > > > > >> > This perspective is not tested OK yet, but i haven't be able to > find > > > > >> another > > > > >> > way. > > > > >> > And all procedures are multiplied like this by the sensor count > > > (and > > > > >> also > > > > >> > the code size is multiplied). > > > > > > >> > If i could be able to dynamically change the alias to point > another > > > > >> > register, this would never be a problem. > > > > > > >> > > Maybe you can ask William if you can add a optional constant > for > > > > >> > > choosing what SPI port to use (after you test with ENC28J60 of > > > > >> > > course). > > > > > > >> > > Matt. > > > > > > >> > > -- > > > > >> > > You received this message because you are subscribed to the > Google > > > > >> Groups > > > > >> > > "jallib" group. > > > > >> > > To post to this group, send email to [email protected]. > > > > >> > > To unsubscribe from this group, send email to > > > > >> > > [email protected]. > > > > >> > > For more options, visit this group at > > > > >> > >http://groups.google.com/group/jallib?hl=en. > > > > > > >> > -- > > > > >> > *Serdar KIZILTOPRAK > > > > >> > Intelligence **Technology Systems > > > > >> > [email protected]http://www.its3k.com > > > > >> > +90(216) 518 15 00* > > > > >> > **- Hide quoted text - > > > > > > >> > - Show quoted text - > > > > > > >> -- > > > > >> You received this message because you are subscribed to the Google > > > Groups > > > > >> "jallib" group. > > > > >> To post to this group, send email to [email protected]. > > > > >> To unsubscribe from this group, send email to > > > > >> [email protected]. > > > > >> For more options, visit this group at > > > > >>http://groups.google.com/group/jallib?hl=en. > > > > > > > -- > > > > > *Serdar KIZILTOPRAK > > > > > Intelligence **Technology Systems > > > > > [email protected] > > > > >http://www.its3k.com > > > > > > > +90(216) 518 15 00 > > > > > * > > > > > **- Hide quoted text - > > > > > > - Show quoted text - > > > > > -- > > > You received this message because you are subscribed to the Google > Groups > > > "jallib" group. > > > To post to this group, send email to [email protected]. > > > To unsubscribe from this group, send email to > > > [email protected]. > > > For more options, visit this group at > > >http://groups.google.com/group/jallib?hl=en. > > > > -- > > *Serdar KIZILTOPRAK > > Intelligence **Technology Systems > > [email protected]http://www.its3k.com > > +90(216) 518 15 00* > > **- Hide quoted text - > > > > - Show quoted text - > > -- > You received this message because you are subscribed to the Google Groups > "jallib" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/jallib?hl=en. > > -- Sébastien Lelong http://www.sirloon.net http://sirbot.org -- You received this message because you are subscribed to the Google Groups "jallib" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/jallib?hl=en.
