主题中讨论的其他器件:DAC53204、 TPS7A57
您好!
我们使用了 DAC53204 传输机制。
通信的 TI
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我们使用了 DAC53204 传输机制。
通信的 TI
您好!
GUI 旨在与 DAC63204EVM 配合使用。 我们尚未使用 FT4222EV 对其进行测试。 您能否提供具有精确配置的 FT422EV (或更好的 FT4222EV 图片)的更高分辨率图像。 我需要查看是否有任何跳线或电阻器已组装/未组装。 首先、我要从电路板上断开 FT4222EV。 将 EV 连接到计算机、并使用示波器测量 I2C 引脚。 当您在 GUI 中开始读取或写入时、您看到 I2C 信号了吗? GUI 是在演示模式下运行、还是显示它已连接?
目前我们没有 python 库、但如果你 google FT4222 python、则可以在线获得许多 I2C 示例。 以下是我找到的一个: https://pypi.org/project/ft4222/
此致!
K·琼斯
尊敬的 Katlynne Jones:
感谢您的提示回答。
它显示了 已连接 。
请点击以下链接获取 EV 数据表以供参考。
UMFT4222EV - USB2.0至 QuadSPI/I2C 桥接器开发模块(ftdichip.com)
在模式3下运行
此外、我还将遇到以下错误代码、
此致、
Dhanabal. K
尊敬的 Katlynne Jones:
我们是否可以在 python 中使用该脚本?
我需要转换吗?
从数据表中获取:
尊敬的 Dhanabal:
我认为 GUI 期望 DCNF0和 DCNF1连接到 GND。 您能否尝试将它们连接到 GND? 然后对 EV 下电上电、关闭并重新启动 GUI、然后尝试再次读取。
数据表示例是用伪代码编写的。 它告诉您需要写入寄存器和相应的数据。 如果 I2C 在 python 中正常工作、则只需要发送总计4个字节且格式为1的 I2C 命令。 I2C 地址、2. 寄存器地址、3。 寄存器数据(MSB)、4. 寄存器数据(LSB):
此致!
卡琳恩
尊敬的 Dhanabal:
这些触发器是自复位的。 复选框不是要保持选中状态。 发送触发条件后、器件会自动清除触发条件:
您是否未看到 电路的正确输出?
我在 SAMRT-DAC-EVM-GUI 中修复了触发按钮错误。 由于 GUI 会在器件准备好清除触发前清除触发、错误仅在转换时间很长时影响触发。 考虑到您没有使用转换器、我认为这不是您的问题、但为了安全起见、您可以尝试使用新的 GUI。
https://www.ti.com/tool/download/SMART-DAC-EVM-GUI
好的。
K·琼斯
尊敬的 Dhanabal:
DAC63204EVM 上的 I2C 信号首先通过电平转换器、然后进入板载 FT4222控制器。 我查看了电平转换器的数据表、看起来 VCCB 引脚的最小电压为2.3V。 这可能是1.8V 电源在 EVM 上无法正常工作的原因。
看起来您可以在 FT4222EV 板上连接外部 VCCIO 电压:
您可以尝试将其连接到1.8V、从而为 DAC 降低至1.8V IO 电压。
此致!
K·琼斯
尊敬的 Katlynne Jones:
感谢你的评分
我们尝试 在电流 O/P 模式下使用 DAC53204RTER 来调节 LDO (TPS7A5701RTER) O/P 的裕量。
当我们尝试实现1.8V +10%的裕量调节时。 它不起作用。
但我们能够为 LDO O/P 留出1.8V 的裕量- 10%。
DAC 的 VDD 由1.8V 电源供电。
我们将使用内部 REF。
请告知此电路是否正常工作?
尊敬的 Dhanabal:
感谢确认您可以留出-10%的裕量。 此处的问题是您的 VDD 电压。 DAC 电流输出需要 VDD 提供400mV 的顺从电压。 因此、如果 输出引脚上的电压 > 1.8V - 400mV、则 DAC 将无法调节电流输出。
您需要将 VDD 提高到 想要裕量加上顺从 电压的最大 TPS7A57输出电压。 根据该数据表图、25uA 范围的顺从电压可能会接近100mV、因此您可以尝试(所需的最大 TPS7A57输出+ 100mV)。
您能否将 DAC VDD 连接到系统中的5V 电源? DAC 的数字 IO 电压可以保持在1.8V 逻辑电平。
此致!
K·琼斯
尊敬的 Katlynne Jones:
感谢您的答复。
由于我们的电路板是制造的、因此 我们现在无法更改 VDD 电压电平。 它永久 连接到1.8V 电平。
此外、 根据 LDO 数据表、我们只需要调节+/- 1.25uA 的电流裕量。
无需配备+/-25uA。
关于 Python 脚本、
我们如何使用 Python 发送注释。
我们能举几个例子吗?
我们采用以下格式编写
从器件= 0x70
MuxChnEnb[0]= 0x06
writedata =字节(MuxChnEnb)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_DATA===>0x93195540
Dac53204[0]= 0X93
Dac53204[1]= 0x19
Dac53204[2]= 0x55
Dac53204[3]= 0x40
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
尊敬的 Dhanabal:
从 IOUT 引脚到 VDD 仍需要一些余量。 当未满足余量时、引脚不会输出任何更多电流。 您无法使用1.8V VDD 在 IOUT 引脚上达到1.8V 以上。
在 DAC53204[0]中,它们的字节0x93是什么? 接下来的三个数据字节正确、可将 数据写入 DAC-0-DATA 寄存器。 第一个字节应该是 I2C 地址0x49、但看起来这已经包括在此行中:
slave = 0x49
我认为在这种情况下、您只需要写入这三个字节:
Dac53204[1]= 0x19
Dac53204[2]= 0x55
Dac53204[3]= 0x40[/引号]您是否能够在示波器上运行此代码并捕获输出? 这对我来说是验证格式是否正确的最佳方式。
此致!
K·琼斯
尊敬的 Katlynne:
这是在上述 Python Code 的示波器中捕获的波形。
Python 代码、
将 sys、ftd2xx 作为 ft 导入
''
通道0 = 0x04
通道1 = 0x05
通道2=0x06
通道3 = 0x07
''
默认 I2cDrv ():
导入 ft4222
导入 ft4222.I2CMaster
从阵列导入阵列
#列出设备
nbDev = ft4222.createDeviceInfoList()
对于 I in range (nbDev):
打印(ft4222.getDeviceInfoDetail (I、False))
#打开设备,默认描述为"FT4222 A"
dev = ft4222.openByDescription ('FT4222 A')
#初始 i2c 主机,时钟速度100kHz
DEV.i245g Master_Init (100000)
MuxChnEnb =数组('B'、[ 0x00])
从器件= 0x70
MuxChnEnb[0]= 0x06
writedata =字节(MuxChnEnb)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_DATA===>0x93195540
Dac53204[0]= 0X93
Dac53204[1]= 0x19
Dac53204[2]= 0x55
Dac53204[3]= 0x40
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_VOUT_CMP===>0x93030800
Dac53204[0]= 0X93
Dac53204[1]= 0x03
Dac53204[2]= 0x08
Dac53204[3]= 0x00
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_funing_config===>0x93060017
Dac53204[0]= 0X93
Dac53204[1]= 0x06
Dac53204[2]= 0x00
Dac53204[3]= 0x17
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_MARG_HIGH===>0x9301A540
Dac53204[0]= 0X93
Dac53204[1]= 0x01
Dac53204[2]= 0xA5
Dac53204[3]= 0x40
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_Marg_low==>0x93020500
Dac53204[0]= 0X93
Dac53204[1]= 0x02
Dac53204[2]= 0x05
Dac53204[3]= 0x00
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
Dac53204 = array ('B'、[ 0x00、0x00、0x00、0x00])
从器件= 0x49
#DAC0_CMN_TRI===>0x93200002
Dac53204[0]= 0X93
Dac53204[1]= 0x20
Dac53204[2]= 0x00
Dac53204[3]= 0x02
writedata =字节(Dac53204)
打印("数据"、"写入数据")
dev.i245g Master_Write (slave, writedata)
I2cDrv ()
谢谢。此致、
R·S·拉贾·苏曼