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.

[参考译文] CCS/DAC102S085:DAC102S085的 DAC_B 被清零。

Guru**** 670150 points
Other Parts Discussed in Thread: DAC102S085, LM339
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/831218/ccs-dac102s085-the-dac_b-of-dac102s085-is-shify

器件型号:DAC102S085
主题中讨论的其他器件: LM339

工具/软件:Code Composer Studio

您好!  

当我写入 DAC102S085时、例如、我写入一个字0x5E1C 来将 DAC_B 设置为输出一个电压、该值是转换的、不是稳定的。  

接下来是我的程序和波形。

请帮我解决问题。

#include

unsigned char RXData = 0;
unsigned char TXData;

int main (空)

WDTCTL = WDTPW | WDTHOLD;

P1SEL0 |= BIT5 | BIT6 | BIT7;//将3-SPI 引脚设置为第二功能
P1DIR |= BIT1;
P1OUT |= BIT1;

UCA0CTLW0 |= UCSWRST;//**将状态机置于复位状态**
UCA0CTLW0 |= UCMST|UCSYNC|UCMSB|UCCKPL|UCCKPH;// 3引脚、8位 SPI 主器件
//时钟极性高,MSB
UCA0CTLW0 |= UCSSEL_ACLK;//选择 ACLK
UCA0BR0 = 0x02;// BRCLK = ACLK/2
UCA0BR1 = 0;//
UCA0MCTLW = 0;//无调制
UCA0CTLW0 &=~UCSWRST;//**初始化 USCI 状态机**
UCA0IE |= UCRXIE;//启用 USCI_A0 RX 中断

PM5CTL0 &=~LOCKLPM5;//禁用 GPIO 上电默认高阻抗模式
//激活先前配置的端口设置


while (1)

P1OUT &=~ BIT1;
UCA0IE |= UCTXIE;
_bis_SR_register (LPM0_bits | GIE);//启用全局中断,进入 LPM0
TXData = 0x1C;


UCA0IE |= UCTXIE;//启用 TX 中断
_bis_SR_register (LPM0_bits | GIE);//启用全局中断,进入 LPM0
TXData = 0x5E;
_DELAY_CYCLES (100);

P1OUT |= BIT1;
_DELAY_CYCLLES (60);


#if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
#pragma vector=USCI_A0_Vector
_interrupt void USCI_A0_ISR (void)
#Elif defined (_GNU_)
void __attribute__((中断(USCI_A0_Vector)) USCI_A0_ISR (void)
其他
错误编译器不受支持!
#endif

开关(__evo_in_range (UCA0IV、USCI_SPI_UCTXIFG))

案例 USCI_NONE:中断;//向量0 -无中断
USCI_SPI_UCRXIFG 案例:
RXData = UCA0RXBUF;
UCA0IFG &=~UCRXIFG;
_BIC_SR_REGISTER_ON_EXIT (LPM0_BITS);//唤醒以设置下一个 TX
中断;
USCI_SPI_UCTXIFG 案例:
UCA0TXBUF = TXData;//发送字符

UCA0IE &=~UCTXIE;
中断;
默认值:break;

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

    我的同事 Uttam 今晚会回来。

    谢谢、
    Paul

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

    感谢您的帮助、Paul。

    道嘉

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

    尊敬的道嘉:

    感谢您的查询。 SPI 波形看起来不错。 虽然放大版有助于更好地分析时序。 我假设其他一些电路会定期将输出拉低。 它可能会拉取 DAC 输出或基准输入。

    请分享原理图的 DAC 部分吗? 如果存在机密性问题、我们可以通过电子邮件进行讨论。

    此致、

    Uttam Sahu

    应用工程师、精密 DAC

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

    你(们)好、Uttam

    原理图中的 DAC 部分如下所示:

      

    DAC102S085的功能仅用于生成两个阈值电压、分别为3.7V (DAC_A)和4.2V (DAC_B)。  

    然后使用3.7V 和4.2V 作为 LM339中的比较电压、如下所示:

    我只想知道5、6和7、8引脚上的两个输入电压是否在范围内:3.7V~4.2V、输出 ping 将上拉至5V。

     放大版图片如下:第一张图片是将0x1C60写入 DAC102S085。

    第二张图片是将0x5E0C 写入 DAC102S085。

    当我检测到 DAC102S085的输出电压时、它不等于我想要设置的值。

     

     

    道嘉

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

    你(们)好、Uttam

    添加了一个信息、我使用 MSP_EXP430FR2311 lanuchpad 来设置与 DAC102S085的 SPI 三线通信。

    道嘉

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

    尊敬的道嘉:

    对延迟答复表示歉意。 是否可以将 SPI 模式更改为模式1并尝试? 这当前处于模式2。

    此致、

    Uttam

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

    您对此有更新吗?

    此致、

    Uttam