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.

[参考译文] DAC161S997EVM:初始化失败、不是固件

Guru**** 2578945 points
Other Parts Discussed in Thread: DAC161S997EVM, DAC161S997

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/720964/dac161s997evm-initialization-fail-not-firmware

器件型号:DAC161S997EVM
主题中讨论的其他器件: DAC161S997

  n´t 您好、我想使用 DAC161S997EVM 开发一个 RS485-4_20mA 接口、但我无法 在 DA161S997的输出中添加新的电流值、 但 我怀疑 我没有正确启动 DAC、您能为我提供帮助吗?   

我要启动 DAC 的步骤是

a)设置 DAC161

b)延迟  

c)设置初始输出

具有相同值或新值(modubus RS485值)的每秒刷新输出

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Miguel、

    我的同事 Garrett 明天将能够为您提供帮助。

    谢谢!
    Paul
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Miguel、

    在启动后的默认配置中、您应该能够直接写入 DACCODE 寄存器(0x04)来设置 DAC 输出。 这是通过发送一个24位 SPI 帧来完成的、其中高8位是寄存器地址、低16位是要写入寄存器的数据。

    我确实会看到默认寄存器值的更新速率有问题。 默认情况下、器件期望每100ms 由 SPI_TIMEOUT 寄存器设置一次 SPI 写入。 如果在此期间未接收到写操作、则将转至 ERRLVL 引脚设置的错误电流值。 由于您每秒写入器件、此错误将会发生、并且可能会显示为器件不会更改其输出。 为避免这种情况、请设置 MASK_SPI_ERR、以便 SPI 超时不会影响环路电流、或以小于 SPI_TIMEOUT 寄存器设置的超时值的间隔向器件写入 NOP。

    如果这不能解决问题、则可能是您的硬件设置或 SPI 帧出现问题。 如果可能、请提供原理图和 SPI 波形、其中包括每次在一个示波器捕获上写入的 SDO、SCLK 和 CS。

    谢谢、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     您好、Garret

    我使用的是 DAC161S997EVM

     星号代码是

    **

      DAC_CS_PORTOUT |= DAC_CS_N;  //低电平有效、因此设置为高电平

      DAC_CS_PORTDIR |= DAC_CS_N;

      USCIB0_setupMasterSPI ();

      P2DIR &=~(DAC_ERROR_N);   //输入引脚

      P2IES |= (DAC_ERROR_N );   //从高到低边沿

      P2IFG &=~0xFF;         //清除所有挂起的中断

      P2IE |= (DAC_ERROR_N );

      SETUP_DAC161 (DAC161_STD_ERR_CONFIG_STOPEND、3370、21800);

      DAC161_SET_OUT_VALUE (0);

    **

    // DAC161_STD_ERR_CONFIG_STOPEND

    #define DAC161_STD_ERR_CONFIG_MASKD    (DAC161_DISABLE_RETRY + DAC161_LOOP_ERR_Maintain _DACCODE + DAC161_LOOP_ERR_DO_NOT_DRIVE_ERRB + DAC161_MASK_SPI_ERR + DAC161_MASK_SPI_TIMEOUT)

    (二

    设置 SPI 主例程

    空 USCIB0_setupMasterSPI (空)

    DAC_USCIB0_PORTSEL |=(USCIB0_SIMO + USCIB0_SOMI+ USCIB0_CLK);       /

    DAC_USCIB0_PORTSEL2 |=(USCIB0_SIMO + USCIB0_SOMI+ USCIB0_CLK);

    DAC_CS_PORTOUT |= DAC_CS_N;

    DAC_CS_PORTDIR |= DAC_CS_N;

    UCB0CTL1 |= UCSWRST;                            //启用 SW 复位

    UCB0CTL0 |=(UCMST + UCMSB + UCSYNC + UCCKPH);              

    UCB0CTL1 |= UCSSEL_2;                           //SMCLK=16MHz

    UCB0BR0 = 8;                                // SMCLK/8 = SCLK (2MHz)

    UCB0BR1 = 0;

    UCB0CTL1 &=~UCSWRST;                            //清除 SW 复位,恢复操作

       n`t 修改了 DAC161S997EVM 的固件以控制 DAC161S997,但无法 控制 DE 输出。 该图显示了由 EVM 供电的唯一值

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Miguel、

    您是否能够使用 EVM 软件控制回路电流? 这将验证您的硬件设置。 如何连接 LOP+和 LOP-以及如何连接附加电路板?

    您是否能够读回已写入的寄存器? 如果您可以提供包括 SCLK、SDO 和 CSB 的 SPI 示波器捕获、以确保 SPI 帧正确、那将非常有用。

    谢谢、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Miguel、

    您对此有任何更新吗?

    谢谢、
    Garrett