问题描述
例如;我正在测量我的体温。我读取的值为(tP [2] + tP [3] * 256)= 182或181。因为MSB字节始终为0。但是传感器的体温还可以,没错。
bus.write_byte(DEVICE_ADDRESS,0x02)
bus.write_byte(DEVICE_ADDRESS,0x00)
bus.write_byte(DEVICE_ADDRESS,0x01)
bus.write_byte(DEVICE_ADDRESS,0xEE)
bus.write_byte(DEVICE_ADDRESS,0x05)
bus.write_byte(DEVICE_ADDRESS,0x90)
bus.write_byte(DEVICE_ADDRESS,0x3A)
bus.write_byte(DEVICE_ADDRESS,0xB8)
bus.write_byte(DEVICE_ADDRESS,0x03)
bus.write_byte(DEVICE_ADDRESS,0x8B)
bus.write_byte(DEVICE_ADDRESS,0x07)
bus.write_byte(DEVICE_ADDRESS,0x97)
bus.write_byte(DEVICE_ADDRESS,0xE9)
a = bus.read_i2c_block_data(DEVICE_ADDRESS,0x05,2)
b = bus.read_i2c_block_data(DEVICE_ADDRESS,0x03,2)
readbuff = bus.read_i2c_block_data(DEVICE_ADDRESS,0x4C,19)
bus.close()
tPTAT = 256 * readbuff[1] + readbuff[0]
tP[0] = ((readbuff[3] * 256) + readbuff[2])
.
.
tP[7] = ((readbuff[17] * 256) + readbuff[16])
tPEC = readbuff[18]