TI论坛
直播中

徐胤

8年用户 1144经验值
私信 关注
[问答]

UB954/953不接Sensor时,写入Sensor寄存器无返回错误且观察953端I2C无波形,为什么?怎么解决?


  •      我们系统为 Sensor->UB953->UB954->SOC, 我们用的Sensor ID是 0x60,  0x60>>1 = 0x30, 当954寄存器ti954_REG_SLAVE_ID0 设为0x30, TI954_REG_ALIAS_ID0 为0x60 时,写Sensor初始化寄存器序列只有0x0100寄存器会返回错误,其余都成功,在写期间用示波器观察953端i2c无波形,也观察到在未对TI954_REG_SLAVE_ID0寄存器写入前,读出的缺省值也为0x30,所以我怀疑对0x30的写入没有到达953端的I2C上?
    当Sensor ID 为 0x30 时 TI954_REG_SLAVE_ID0和TI954_REG_ALIAS_ID0如何设置才能让命令到达953端的I2C上?还有其它需要设置吗?

回帖(2)

李琳

2024-11-30 11:35:04
您好, sensor的地址应该是左移一位,您这里是右移了一位,7bit sensor address 是不是1100000?这样的话sensor地址应该为0XC0才对。
举报

笑尽往事

2024-11-30 16:25:14
根据您提供的信息,您遇到的问题是在不连接传感器时,写入传感器寄存器没有返回错误,同时在953端的I2C没有观察到波形。这可能是由于以下几个原因导致的:

1. **硬件连接问题**:确保所有硬件连接都是正确的,包括电源、地线和数据线。检查是否有短路或断路的情况。

2. **I2C总线冲突**:如果I2C总线上有多个设备,可能会发生地址冲突。确保所有设备的地址都是唯一的。

3. **寄存器配置错误**:检查TI954_REG_SLAVE_ID0和TI954_REG_ALIAS_ID0的配置是否正确。根据您的描述,当Sensor ID为0x60时,您需要将TI954_REG_SLAVE_ID0设置为0x30,TI954_REG_ALIAS_ID0设置为0x60。请确保这些寄存器的值被正确写入。

4. **传感器初始化问题**:如果传感器没有正确初始化,可能会导致I2C通信失败。确保传感器的初始化序列是正确的,并且所有必要的初始化步骤都已完成。

5. **I2C控制器问题**:可能是UB953或UB954的I2C控制器存在问题。检查这些控制器的配置和状态,确保它们能够正常工作。

6. **示波器设置问题**:确保示波器的设置是正确的,包括探头的连接方式、触发设置和时间基准。

为了解决这个问题,您可以尝试以下步骤:

- **重新检查硬件连接**:确保所有的连接都是正确的,没有松动或损坏的连接。
- **检查I2C地址**:确保没有地址冲突,并且所有设备的地址都是唯一的。
- **重新配置寄存器**:重新检查TI954_REG_SLAVE_ID0和TI954_REG_ALIAS_ID0的配置,确保它们被正确设置。
- **检查传感器初始化**:确保传感器的初始化序列是正确的,并且所有必要的初始化步骤都已完成。
- **检查I2C控制器**:检查UB953和UB954的I2C控制器的配置和状态,确保它们能够正常工作。
- **调整示波器设置**:确保示波器的设置是正确的,以便能够观察到I2C波形。

如果问题仍然存在,您可能需要进一步检查硬件或寻求专业的技术支持。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分