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.

[参考译文] MSP430F413:用于测试不同输入电平并给出相同读取值的代码

Guru**** 2577385 points
Other Parts Discussed in Thread: MSP430F413

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/600735/msp430f413-code-to-test-different-input-level-and-give-the-same-readout

器件型号:MSP430F413

我有一个测试探针、用于读取溶液的导电性并编写代码

读取电导率并在 LCD 上显示。

每次使用探头时、都需要将其校准到5 ppt 级别。

我遇到过、在测量了大约20个探头后、每个探头都会给出不同的结果

以5.0ppt、5.2ppt、6ppt 为例。

是否有代码可以调整不同探头的输入读数以读取相同的读数

相同的解决方案。

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

    感谢您的请求。

    由于 MSP430F413没有任何 ADC 模块、我假设它与外部 ADC 一起用于测试探针内部、以测量解决方案的电导率。 这是真的吗? 我对模数转换实现很好奇。 理想情况下、当您校准多个测试探头时、对于特定解决方案、读数应具有相同的导率、但这似乎不适合您。

    您能解释"ppt"单位代表什么吗? 它是每兆位数还是其他什么? 这一点很重要、因为如果您已达到系统的分辨率限制、这将解释为什么即使在校准器件后也会出现不同的结果。

    我可能无法完全理解您的问题、因此请提供更多详细信息或更正我的假设。

    此致、

    James

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

    作为后续行动、MSP430F413是用于现有产品还是用于开发新产品? 我提出这一要求的原因是、该器件是我们的旧器件之一、我们提供了许多新器件、这些器件具有许多附加功能、更重要的是、具有可能对您的应用更有利的功能(例如集成 ADC、非易失性 FRAM 存储器)。

    此致、

    James

    MSP 客户应用

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

    您好!

    是的、我们使用外部 ADC 进行测量。 它会将输入转换为数字。

    然后馈送到 P16/CA0引脚。

    固件写为:

    MEAS_ADC;   子例程:Meaure A/D 转换器、BCD A/D 结果-> ADCData
    ;           R15用作工作寄存器,未保存
    ;------------------------------------------------------------------

     BIC.b  #CAPD3、&CAPD  
     MOV.B #CAON、&CACTL1   ;比较器打开
     BIS.B  #P2CA0、和 CACTL2   ;P2.3+ P2.4-

     MOV #01440h、COUNTER5   ;参考启动的30mS 延迟。
    W_DELAY  
     DEC COUNTER5    ;有关详细信息,请参见数据表。
     JNZ W_DELAY
     CLR ADCData   ;清除 ADCData 寄存器

     调用 #Sample_ADC   ;采样->ADCData+上一个
     调用 #Sample_ADC   ;采样->ADCData+上一个
     RRA ADCData
    测量值
     CLR.B 和 CACTL1   ;比较器关闭
     BIC.B  #P2CA0、和 CACTL2  ;P2.3+ P2.4-
     BIS.b  #CAPD3、&CAPD  

     可重置

    SAMPLE_ADC

     MOV #04096、R15  ;12位 3月10日

    ;预充电电容器
    PRE_ADC
     BIS.B #DAC_OUT、&P1OUT  ;设置电容器的功率
    C1
     bit.B #CAOUT、和 CACTL2  ;比较器输出高电平/低电平?
     JNZ C1
          ;调整和集成 DAC 脉冲
    TEST_DAC
     bit.B #CAOUT、&C CACTL2  ;比较器高电平/低电平?
     JNZ Low1    ;Jump --> Low
    高1.   
     BIC.B #DAC_OUT、&P1OUT  ;将电源重置为电容器
     JMP 测量_
    低1
     BIS.B #DAC_OUT、&P1OUT  ;设置电容器的功率
     NOP
     INC ADCData   ;Increment ADCData
    测量_  
     DEC R15    ;减量循环计数
     JNZ Test_DAC   ;测量环路?
     BIC.B #DAC_OUT、&P1OUT  ;将电源重置为电容器
     XOR.B #CAEX,&CACTL1   ;反相比较器端子
     可重置

    PPT 是指每千片的器件数。 我们将测量液体的导电性、以 ppt 为单位。

    Rgds

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

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    MSP430F413可以捕获模拟信号、将其转换为数字值并对其进行处理。 电流
    应用模拟输入通过引脚47 (P16/CA0)。 固件由我们的前工程师编写、他已经离开了我们。
    由于我在这些领域相对较新、因此编写的代码似乎对 MSP430内部的电容器进行充电和再充电。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    感谢您提供更多详细信息。 这有助于我更好地理解您问题的背景。

    根据上述代码、MSP430F413中的比较器似乎被用于读取分立式 ADC 的数字输出。 您能否分享这部分原理图和 ADC 的器件型号?

    此外、该应用非常有趣。 我肯定不是化学家、因此我想知道测量液体的导电性会有多一致。 我确信这取决于解决方案(现在我了解了为什么您使用此术语)和颗粒分布(例如、我假设随着时间的推移、导电性会随着时间的推移而变化、因为事物会沉降到底部而不是发生摇晃)。 作为一名电气工程师、我已经使用恒定电压和恒定电流对器件进行了校准、这似乎比解决方案更稳定。 您是否知道此解决方案的预期 ppt 变化是多少? 我之所以提出这一问题、是因为您观察到的问题可能取决于解决方案、而不是感应侧。 我在这里可能会错、尤其是如果您在校准之前观察到测量结果一致的话。

    此致、

    James

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

    从原理图中可以看出、P16/CO 的输入来自滤波器电路。 滤波后、馈入模拟信号

    P16/CO 输入。

    我是一个输入范围内的东西、在馈送到 MSP430的 P16/CA0输入引脚后、它将产生1个输出。 随着探头读数的变化、

    但是、在滤波和通过编码后、只会显示单个读数。

    示例探头1读取5.0 ppt、探头2读取6.0 ppt 以获得5 ppt 的解决方案。 探头2读数为1ppt。 我正在试图缩小这一范围

    读取到0.2 ppt、即读取的内容最多为5.2 ppt、而不是6.0 ppt。

    是通过更改一些编码来查看它是否可以减少这种情况。

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

    抱歉、您的帖子未附带原理图。 单击"答复"后、单击答复窗口右下角的"使用丰富的格式"。 加载此新视图后、单击"插入/编辑媒体"按钮、如下所示。

    此致、

    James

    MSP 客户应用

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

    在查看 MSP430F413's 用户指南中的第23.2.3节后、它提到了比较器的输出可在具有或不具有内部滤波的情况下使用。 当控制位 CAF 被置位时、输出由一个片载 RC 滤波器进行滤波。 如果输入端子上的电压差很小、任何比较器输出都会振荡。  内部和外部寄生效应以及信号线、电源线和系统其他部件之间的交叉耦合导致了这种行为、如图23−2所示。

    比较器输出振荡会降低比较结果的精度和分辨率。 选择输出滤波器可以减少与比较器振荡相关的误差。 在上面共享的汇编代码中、我看不到 CACTL2寄存器中 CAF 位被置位。 这样做会改善您的结果。

    此致、

    James

    MSP 客户应用

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

    您的问题是否已解决?

    此致、

    James

    MSP 客户应用