W karcie katalogowej BMP085 pisze:
Cytuj:
The BMP085 has a master clear (XCLR) low-active input that is used to reset the BMP085 and initializes internal registers and counters. The device is automatically reset by power on reset (POR) circuitry. XCLR can be left floating if not used. The pad has an internal pull-up resistor of typ. 120kOhm.
Czyli muszę pin XCLR podpiąć pod jakiś port ATmegi i w momencie, gdy ten czujnik nie jest używany, to ustawić stan niski na tej lini?
Natomiast nie wiem co zrobić w przypadku, gdyby jakieś urządzenie miało taki sam adres jak HMC5883l.
W jego nocie pisze tak:
Cytuj:
I2C COMMUNICATION PROTOCOL
The HMC5883L communicates via a two-wire I2C bus system as a slave device. The HMC5883L uses a simple protocol with the interface protocol defined by the I2C bus specification, and by this document. The data rate is at the standard-mode 100kbps or 400kbps rates as defined in the I2C Bus Specifications. The bus bit format is an 8-bit Data/Address send and a 1-bit acknowledge bit. The format of the data bytes (payload) shall be case sensitive ASCII characters or binary data to the HMC5883L slave, and binary data returned. Negative binary values will be in two’s complement form. The default (factory) HMC5883L 8-bit slave address is 0x3C for write operations, or 0x3D for read operations.
The HMC5883L Serial Clock (SCL) and Serial Data (SDA) lines require resistive pull-ups (Rp) between the master device (usually a host microprocessor) and the HMC5883L. Pull-up resistance values of about 2.2K to 10K ohms are recommended with a nominal VDDIO voltage. Other resistor values may be used as defined in the I2C Bus Specifications that can be tied to VDDIO.
i jeśli dobrze rozumiem, to nic nie pisze co zrobić w takim przypadku. Czyli w tym przypadku jedynie trzeba zastosować jakiś przełącznik?