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/UCD3138064A:如何使用 UCD3138064A 中的内部温度传感器

Guru**** 2529560 points
Other Parts Discussed in Thread: UCD3138, UCD3138064A

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/737879/ccs-ucd3138064a-how-to-use-the-internal-temperature-sensor-in-ucd3138064a

器件型号:UCD3138064A
主题中讨论的其他器件:UCD3138

工具/软件:Code Composer Studio

您好,
我不想打扰你,但我确实有一个问题无法解决。
当我使用 UCD3138时、我知道我必须使用 AD12(ch14)。并且代码"MiscAnalogRegs.TEMPSENCTRL.bit.TEMP_SENSE_DIS = 0;"是必需的。

//====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
//其他模拟模块寄存器文件
========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
结构 MISC_ANALOG_REGS{
UNION CLKTRIM_REG CLKTRIM;
UNION BGTRIM_REG BGCTRIM;
UNION AFECCTRL_REG AFECCTRL;
UNION AFEISC_REG AFEMISC;
UNION PKGID_REG pkgid;
UNION 欠压_REG 欠压;
UNION GLBION_REG GLBIOEN;
UNION GLBIOOE_REG GLBIOOE;
UNION GLBIOOD_REG GLBIOOD;
UNION GLBIOVAL_REG GLBIOVAL;
UNION GLBIOREAD_REG GLBIOREAD;
UNION TEMPSENCTRL_REG TEMPSENCTRL;
UNION IOMUX_REG IOMUX;
UNION CSTRIM_REG CSTRIM;
UNION CSCTRL_REG CSCTRL;
UNION TEMPREF_REG TEMPREF;
UNION PWRDISCTRL_REG PWRDISCTRL;
UNION BIASTRIM_REG BIASTRIM;
}; 

但是、当我使用 UCD3138064A (我知道通道变为 AD15)时、 我在 cyclone_misc_analogue.h 中找不到 TEMPSENCTRL 寄存器。只有保留位域。

//====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
//其他模拟模块寄存器文件
========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
结构 MISC_ANALOG_REGS{
uint32.rsvd0;
uint32.rsvd1;
uint32.rsvd2;
uint32.保留3;
UNION PKGID_REG pkgid;
UNION 欠压_REG 欠压;
UNION GLBION_REG GLBIOEN;
UNION GLBIOOE_REG GLBIOOE;
UNION GLBIOOD_REG GLBIOOD;
UNION GLBIOVAL_REG GLBIOVAL;
UNION GLBIOREAD_REG GLBIOREAD;
uint32.保留4;
UNION IOMUX_REG IOMUX;
uint32.rsvd5;
UNION CSCTRL_REG CSCTRL;
UNION TEMPREF_REG TEMPREF;
UNION PWRDISCTRL_REG PWRDISCTRL;
uint32.保留6;
UNION DTCUARTSEL_REG DTCUARTSEL;
}; 

您能告诉我为什么?Meanwhile、如何启用温度传感器?  

谢谢、

hly_rookie

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

    问得好。 我还没有使用过这个位、我会尽快返回给您。

    谢谢、
    肖恩
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 UCD3138064A 中、温度传感器默认启用。
    因此、您无需启用它。

    希望这对您有所帮助。
    此致、
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、 Bolurian,先生

    我直接!!内部温度传感器,、但原始值仅为12 μ A。它太小了。您能告诉我它有什么问题吗?(代码很简单:我启动 ADC、并使用 POLL_ADC())。我没有 进行任何转换。

    void init_adc_polled (void)
    {
    AdcRegs.ADCCTRL.bit.MAX_CONV = NUMBER_OD_ADC_CHANNELS_ACTIVE - 1;
    AdcRegs.ADCCTRL.bit.SAMPLING_SEL = 6;//268KS/s
    AdcRegs.ADCCTRL.bit.SINGLE_SE= 1;/为单环路设置 ADCQ0.SET.SEQ0
    ;ADCSRT.SET.SET.SEQ0 = 1; //temperature
    AdcRegs.ADCCTRL.bit.ADC_EN = 1;
    AdcRegs.ADCAVGCTRL.bit.AVG0_CONFIG = 3;//平均32个样本
    AdcRegs.ADCAVGCTRL.bit.AVG0_EN = 1;//启用 ADC 平均模块0
    
    } 
    #pragma FUNC_ALWAYS_INLINE (POLL_ADC)
    void POLL_ADC (void)
    {
    if (AdcRegs.ADCSTAT.bit.ADC_INT = 1)//找到转换结束中断
    {
    ADC_RAW_[0]= AdcRegs.ADCRESULT[0];ADC_avg [0].ADCRESULT.RESPULT[0]= ADC_ADCR0.RESPUT.ADCR0.RESPUT]
    ;ADCR.ADCR.ADCR.ADCRG.AG.ADCRESCR.ADCR.ADCR.AD //读取 AD15
    }
    
    AdcRegs.ADCCTRL.bit.SW_START = 1;//触发扫描
    
    } 

    谢谢、

    Larry

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

    我可以重现您报告我的设置的问题。
    温度信号似乎连接到通道14!
    这很奇怪;我已经开始调查这一点并仔细检查为什么会发生这种情况。

    同时、请在以下情况下检查配置:
    AdcRegs.ADCSEQSEL0.bit.SEQ0 = 14;//temperature
    然后查看您是否可以读取温度。

    此致、

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

    我已经仔细检查了这一点、实际上温度传感器已连接到通道14。
    我们将相应地更改文档。
    是否解决了您的问题。
    请将此帖子的状态设置为已解决。

    此致、