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.

[参考译文] TM4C1230H6PM:使用 TM4C1230H6PM PE3 ADC 引脚时出现问题

Guru**** 2482105 points
Other Parts Discussed in Thread: TM4C1230H6PM

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/712426/tm4c1230h6pm-problem-using-tm4c1230h6pm-pe3-adc-pin

器件型号:TM4C1230H6PM

你(们)好

我的客户使用 TM4C1230H6PM ADC 引脚 PE2 (CH1)、PE3 (CH0)、PE4 (CH9)、PE5 (CH8)、四个通道被采样10次、发现 PE3引脚 有问题、

测试1:如果 ADC  PE3 (CH0) 接地,其它通道 ADC 日期如下,数据正确。

CH1:0x7283 CH0:0x0007 CH9:0x6DF0 CH8:0x2A29

CH1:0x7262 CH0:0x0017 CH9:0x6E01 CH8:0x2A08

CH1:0x726D CH0:0x0008 CH9:0x6DFB CH8:0x2A08

CH1:0x7263 CH0:0x0007 CH9:0x6E06 CH8:0x29ED

CH1:0x724B CH0:0x0006 CH9:0x6DF2 CH8:0x2A10

CH1:0x7260 CH0:0x0009 CH9:0x6DFE CH8:0x29F7

CH1:0x725A CH0:0x0003 CH9:0x6DF6 CH8:0x2A2E

CH1:0x7247 CH0:0x0004 CH9:0x6DFA CH8:0x2A22

CH1:0x7276 CH0:0x0007 CH9:0x6DF9 CH8:0x2A1E

CH1:0x7269 CH0:0x000A CH9:0x6DFB CH8:0x2A20

--------------------------------------

2.如果 PE3 (CH0)有电压,将影响其它 ADC 管脚的数据,其它 ADC 通道的数据不 正确, 其它通道的数据将增加

CH1:0xAFF5 CH0:0xAD7A CH9:0xADCC CH8:0xAB0

CH1:0xAFF5 CH0:0xAD86 CH9:0xADCF CH8:0xAB38

CH1:0xAFF5 CH0:0xAD5C CH9:0xADB8 CH8:0xAB14

CH1:0xAFF5 CH0:0xAD64 CH9:0xADB9 CH8:0xAB2B

CH1:0xAFF5 CH0:0xAD52 CH9:0xADB0 CH8:0xAB1E

CH1:0xAFF5 CH0:0xAD7C CH9:0xADCF CH8:0xAB16

CH1:0xAFF5 CH0:0xAD8A CH9:0xADCE CH8:0xAB1B

CH1:0xAFF5 CH0:0xAD6F CH9:0xADBD CH8:0xAB20

CH1:0xAFF5 CH0:0xAD8C CH9:0xADC9 CH8:0xAB31

CH1:0xAFF5 CH0:0xAD80 CH9:0xADCA CH8:0xAB24

--------------------------------------

我在 fift允许 中附加了我的客户代码。 你有什么建议吗?

感谢大家

///--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
静态空 SetADCFunction (空)

SysCtlPeripheralEnable (SYSCTL_Periph_ADC0);
GPIOPinTypeADC (GPIO_Porte _BASE、GPIO_PIN_2);
GPIOPinTypeADC (GPIO_Porte _BASE、GPIO_PIN_3);
GPIOPinTypeADC (GPIO_Porte _BASE、GPIO_PIN_4);
GPIOPinTypeADC (GPIO_Porte _BASE、GPIO_PIN_5);
ADCSequenceConfigure (ADC_base、0、ADC_TRIGGER_PROCESSOR、0);
ADCSequenceStepConfigure (ADC_base、0、0、ADC_CTL_CH1);//| ADC_CTL_IE | ADC_CTL_END);
ADCSequenceStepConfigure (ADC_base、0、1、ADC_CTL_CH0);//| ADC_CTL_IE | ADC_CTL_END);
ADCSequenceStepConfigure (ADC_base、0、2、ADC_CTL_CH9);//| ADC_CTL_IE | ADC_CTL_END);
ADCSequenceStepConfigure (ADC_base、0、3、ADC_CTL_CH8 | ADC_CTL_IE | ADC_CTL_END);
ADCSequenceEnable (ADC_base、0);
ADCIntClear (ADC0_BASE、0);
ADCProcessorTrigger (ADC0_BASE、0);

///--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
空测量(空)

静态字节 ADC_Cnt = 0;
静态字 Temp1 = 0;
静态字 Temp2 = 0;
静态字 Temp3 = 0;
静态字 Temp4 = 0;
if (ADCIntStatus (ADC0_BASE、0、false)// ADC 完成

TEMP1 += HWREG (ADC_base + ADC_O_SSFIFO0);
TEMP2 += HWREG (ADC_base + ADC_O_SSFIFO0);
Temp3 += HWREG (ADC_base + ADC_O_SSFIFO0);
Temp4 += HWREG (ADC_base + ADC_O_SSFIFO0);
if (adc_cnt < 10) adc_cnt++;
其他

ADC_Data1 = Temp1;
ADC_Data2 = Temp2;
ADC_Data3 = Temp3;
ADC_Data4 = Temp4;

ADC_Cnt = 0;
TEMP1 = 0;Temp2 = 0;
温度3 = 0;温度3 = 0;

ADCIntClear (ADC0_BASE、0);
ADCProcessorTrigger (ADC0_BASE、0);

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

    PE3是否可能(甚至可能)是一个“邪恶的 pin”... 需要"特殊处理?"   (即解锁!)  

    通过论坛(顶部)的"搜索框"、可以很好地覆盖(如果可以证明问题)这一点。   (以及 MCU 手册的"带主键的阅读"-"按键措辞"PE3 !)

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

    首先、我看到的代码可能有错误、如果没有、那么我看不到足够的信息。

    我最初注意到两件事、请对这些进行评论:

    1) 1) SysCtlPeripheralEnable (SYSCTL_Periph_GPIOE)的调用在哪里;? 我在 ADC 配置中看不到它。 这是在它之外完成的吗?

    2) 2) ADC_base 有多个引用、"ADC_base"是什么、我认为我们没有针对 TM4C 的定义。

    接下来、我不确定我是否真正理解您所做的工作流程。 ADC ISR 在哪里? 为什么 DRM 会在您所在的位置调用 ADC FIFO? 我觉得这里的流程不是很干净。

    关于 CB1的反馈、我认为 PE3没有提到过的任何问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哎呀-但请注意(摆动室)"是不可能的"-收到建议后、"正确阅读/审查针脚 PE3的说明。"    (该 PIN 最近已到达此处(论坛)-我的(一次)照片存储器。 可能"泄漏"。)  

    注意-如海报中 ADC 结果列表所示、"其他三个渠道"似乎"正常/可信"-"PE3"(单独)出现故障 -这是否 不会将"PE3"提升 为 "PRIME 可疑?"   (和"环境"(又称为"NMI")-是一种已知的、肯定的瘟疫...)

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

    您好 、Ralph Jacobi、

       我的客户将 Keil 代码修改为 TI CCS 和 Tivaware 版本、然后再次测试并延迟更新。

    谢谢、

    Andy