Other Parts Discussed in Thread: ALP
部件号: DS90UB960-Q1
主题中讨论的其他器件: ALP
尊敬的 TI 团队:
我们希望提高 I2C 链路的通信速率。 并尝试添加以下 commond:
board.WriteI2C (devAddr、0x02、0x3E)#Enable Proxy
board.WriteI2C (devAddr、0x0A、0x13)
board.WriteI2C (devAddr、0x0B、0x25)
board.WriteI2C (serAlias[i]、0x0B、0x13)
board.WriteI2C (serAlias[i]、0x0C、0x26)
但它似乎影响了沟通的准确性。
您可以帮助确认并通知我们配置它的正确方法吗?
我们希望使用快速和快速+ I2C 模式、您能为我们提供这两种配置吗?
以下是我们现在使用的配置:
#填写 I2C 地址和别名
devAddr = 0x7A #960 解串器 8 位 I2C 地址
serAddr =[0x30、0x30、0x30]#连接到 960 RX 端口 0、端口 1、端口 2、端口 3 的 953 串行器 8 位 I2C 地址
serAlias =[0x1A、0x2A、0x3A、0x4A]# 8 位 I2C 别名、用于读取/写入连接到 960 RX 端口 0、端口 1、端口 2、端口 3 的串行器
imgAddr =[0x20、0x20、0x20]#成像仪 8 位 I2C 地址连接到 960 RX 端口 0、端口 1、端口 2、端口 3
imgAlias =[0x20、0x22、0x24、0x26]# 8 位 I2C 别名、用于读取/写入连接到 960 RX 端口 0、端口 1、端口 2、端口 3 的成像仪
ispAddr =[0x78、0x78、0x78、0x78]#连接到 960 RX 端口 0、端口 1、端口 2、端口 3 的 ISP 8 位 I2C 地址
ispAlias =[0x40、0x42、0x44、0x46]# 8 位 I2C 别名、用于读取/写入连接到 960 RX 端口 0、端口 1、端口 2、端口 3 的 ISP
导入时间
board.WriteI2C (devAddr、0x02、0x3E)#Enable Proxy
对于 I IN 范围 (0.4):
如果 I=0:
board.WriteI2C (devAddr、0x4C、0x01)#选择 RX 端口 0
Elif i=1:
board.WriteI2C (devAddr、0x4C、0x12)#选择 RX 端口 1
Elif i=2:
board.WriteI2C (devAddr、0x4C、0x24)#选择 RX 端口 2
Elif i==3:
board.WriteI2C (devAddr、0x4C、0x38)#选择 RX 端口 3
#自动确认设置
board.WriteI2C (devAddr、0x5B、serAddr[i]+ 1)#设置带有冻结功能的串行器地址
board.WriteI2C (devAddr、0x5C、serAlias[i]+ 1)#设置 SER 别名和自动确认
board.WriteI2C (devAddr、0x58、0x7A)#启用具有自动 ACK 的 I2C 直通、BC 速率= 10Mbps
board.WriteI2C (devAddr、0x0A、0x13)
board.WriteI2C (devAddr、0x0B、0x25)
board.WriteI2C (serAlias[i]、0x0B、0x13)
board.WriteI2C (serAlias[i]、0x0C、0x26)
# 953 配置
board.WriteI2C (serAlias[i]、0x02、0x73)#连续时钟、4 个通道
board.WriteI2C (serAlias[i]、0xE、0xF0)#禁用 935 GPIO0 输入并启用输出
board.WriteI2C (serAlias[i]、0xD、0x10)#在本地 GPIO0 上启用远程 DES GPIO0 数据;下拉 GPIO2(ISP 复位)
board.WriteI2C (serAlias[i]、0x03、0x12)#模式覆盖异步外部时钟
board.WriteI2C (serAlias[i]、0x01、0x01)#软复位
时间睡眠 (0.01)
# I2C 地址和别名设置
board.WriteI2C (devAddr、0x58、0x5A)#禁用自动确认
board.WriteI2C (devAddr、0x5B、serAddr[i])#移除冻结
board.WriteI2C (devAddr、0x5C、serAlias[i])#禁用自动确认
board.WriteI2C (devAddr、0x5D、imgAddr[i])#配置成像仪地址
board.WriteI2C (devAddr、0x65、imgAlias[i])#配置成像仪别名
board.WriteI2C (devAddr、0x5E、ispAddr[i])#配置 ISP 地址
board.WriteI2C (devAddr、0x66、ispAlias[i])#配置 ISP 别名
#960 配置
board.WriteI2C (devAddr、0x6D、0x7C)# FPD3 CSI-2 输入模式
board.WriteI2C (devAddr、0x6E、0x8A)#将 Fsync 信号映射到 953 GPIO0 输出
#board.WriteI2C (devAddr、0x72、0x00)#将 I2C-ID 映射 VC 到 0
board.WriteI2C (devAddr、0x72、I)#将 I2C-ID 映射 VC 到 I
#帧同步: 25Hz, 10%/90%占空比
board.WriteI2C (devAddr、0x19、0x05)# FS_HIGH_TIME_1
board.WriteI2C (devAddr、0x1A、0x34)# FS_HIGH_TIME_0
board.WriteI2C (devAddr、0x1B、0x2E)# FS_LOW_TIME_1 25fps
board.WriteI2C (devAddr、0x1C、0xDF)# FS_LOW_TIME_0 25fps
board.WriteI2C (devAddr、0x18、0x01)#启用内部生成的帧同步
#清除错误/状态
Time.sleep (0.1)
#board.ReadI2C (devAddr、0x4D)
#board.ReadI2C (devAddr、0x4E)
#board.ReadI2C (devAddr、0x55)
#board.ReadI2C (devAddr、0x56)
#board.ReadI2C (devAddr、0x7A)
#board.ReadI2C (devAddr、0x7B)
# CSI 输出/转发配置
board.WriteI2C (devAddr、0x1F、0x00)#1.472 - 1.664Gbps 串行速率
board.WriteI2C (devAddr、0x32、0x01)#选择 CSI 端口 0
#board.WriteI2C (devAddr、0x34、0x01)
board.WriteI2C (devAddr、0x34、0x31)#启用偏移
board.WriteI2C (devAddr、0x33、0x43)#启用偏移校准、4 个通道、连续时钟、启用 CSI 输出
#board.WriteI2C (devAddr、0x21、0x04)# CSI 端口 0 上的基本同步转发
#board.WriteI2C (devAddr、0x20、0x00)#将所有 RX 端口转发到 CSI 端口 0、启用转发
board.WriteI2C (devAddr、0x21、0x03)# CSI 端口 0 上的基本同步转发
board.WriteI2C (devAddr、0x20、0x00)#将所有 RX 端口转发到 CSI 端口 0、启用转发




。 







