我试图通过I2C连接和Python2.7将HMC5983数字罗盘集成到我的Raspberry Pi3中。我还使用Adafruit_GPIO库来管理与SMBus的交互。在
我试图为HMC5983编写一个简单的Python库。在测试库时,我尝试读取模式寄存器(0x02)。我选择这个寄存器是因为我希望代码返回一个已知值(per datasheet,模式字节是0x01或0x02),以验证我是否正确实现了I2C通信。但是,我的代码没有返回预期值。这些值在寄存器的读数之间也会发生变化。在
你觉得我做错什么了吗?在
测试程序:
# Import HMC5983 library
import HMC5983
# Device default addresses
HMC5983_I2CADD = 0x42
# Create new HMC5983 object and provide the default address
# Note: address has been verified through Terminal (i2cdetect -y 1)
HMC5983 = HMC5983.HMC5983(HMC5983_I2CADD,1, None)
while True:
# Call the read_mode() method and print the results in binary
print 'Mode = {0:b}'.format(HMC5983.read_mode())
time.sleep(1)
HMC5983库:
^{pr2}$输出(每次变化):
Mode = 11111111
Mode = 100100
Mode = 11000111
Mode = 11001110
Mode = 10
目前没有回答
相关问题 更多 >
编程相关推荐