AS5048B I2C问题

时间:2017-02-04 21:17:23

标签: arduino arduino-uno i2c

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

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

1 个答案:

答案 0 :(得分:1)

我回答了我自己的问题......这可能对你们其他人有所帮助......

看看寄存器表,地址结构如下:

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

这使得如果我在0010中为地址0x02编程,我现在真的有(没有跳线)1001000,即0x48。我首先使用地址扫描程序代码找到了这个代码:http://forum.arduino.cc/index.php?topic=197360

我以为我炒了我的编码器......