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.

[参考译文] TM4C1294NCPDT:模拟比较器故障

Guru**** 2546490 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/979807/tm4c1294ncpdt-analog-comparator-failure

器件型号:TM4C1294NCPDT

您好!

我们确实有采用 TM4C1294的 PCB 、如所示  

故障

-有时会失败

- 总是失败

故障描述:

-比较器输入在2V 和2V 上保持稳定(没有使用示波器测量的噪声)

-比较器有时会提示错误状态

  -复位后 或  

  -上电后

这就是代码:

初始化()

//...

//------------------
//设置 GPIO 和比较器
//------------------

//端口 P
SysCtlPeripheralEnable (SYSCTL_Periph_COMP0);
SysCtlPeripheralEnable (SYSCTL_Periph_GPIOP);
while (!SysCtlPeripheralReady (SYSCTL_Periph_COMP0))


GPIOPinTypeComparator (GPIO_PORTP_BASE、(GPIO_PIN_0 | GPIO_PIN_1));
ComparatorRefSet (COMP_BASE、COMP_REP_OFF);
比较器配置(COMP_BASE,0,COMP_TRIG_NONE | COMP_OUTPUT_NORMAL);

//...


空 idle100HzCallback( xTimerHandle xTimer )

静态 uint32_t 计数器= 0;

bool b = ComparatorValueGet (COMP_BASE、0);
gesSetLed2(1);
如果(!b)

COUNTER++;
//等待10次出现
if (计数器>= 10)

//打开测试 LED
gesSetLed3(1);
//执行断电过程
//...


其他

计数器= 0;


//...

 

在勘误表中、我们找不到任何提示。

任何想法都是错误的。

感谢您的支持。

此致、

重做

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

    您似乎将 GPIO PP0和 PP1配置为比较器输入。 这些输入用于比较器2。 然后您调用比较器0的 ComparatorConfigure()和 ComparatorValueGet ()。 比较器0 (PC6和 PC7)的引脚尚未配置、因此您要比较两个内部浮动节点。  

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

    尊敬的 Bob:

    干得好,谢谢!!!  

    此致、

    重做