2017-02-04 49 views
0

我正在进行机器人项目和联合位置反馈我正在使用AMS的AS5048B芯片。我连接到我的arduino mega的I2C总线时遇到了一些奇怪的行为,所以我决定将它作为测试连接到我的arduino uno。AS5048B I2C问题

我只能使一个编码器通过I2C进行通话,但是它看起来像我在执行OTP命令时编写了错误的地址,而不是0x40而不是0x40。有两个硬件引脚A1和A2,它们设置I2C地址的最后2位,但我不确定是否将它们连接到5V线,3V3线或其中一个带有下拉电阻的设备以便设置地址为0x41,42或43.我已经有4K7电阻将SDA和SCL拉到5V,但不确定是否正确。有人能给我一些指点吗?

回答

1

我回答我自己的问题...这可能帮助你的一些其他人的...

看看登记表,如下地址的结构:

1+(4 OTP地址的位)+(A1/A2跳线地址的2位)

这使得如果我在地址0x02的0010编程,我现在真的有(没有跳线)1001000这是0x48。我发现这首先使用可用的地址扫描器代码在这里:http://forum.arduino.cc/index.php?topic=197360

而且我想我已经炸我的编码器...