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.

[参考译文] TM4C123GH6PM:tm4C7h6PM ADC 采样序列发生器 ss0

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1522113/tm4c123gh6pm-tm4cgh6pm-adc-sample-sequencer-ss0

器件型号:TM4C123GH6PM

工具/软件:

你(们)好  

如何对 ss0执行如下所示的代码  
因为 ss0将连续对8个通道进行采样  
如何从 ssfifo0缓冲区获取8个示例数据、我无法在代码中继续操作  

所有示例均显示、仅适用于 SS3单通道

while (1){


ADC0->PSSI |=(1<<3);/*启用 SS3转换或从 AN0开始采样数据*/

while ((ADC0->RIS & 8)==0);/*等待直到所有样本转换完成*/

ADC_VALUE = ADC0->SSFIFO3;/*从 SS3 FIFO*/读取 ADC 协版本结果

ADC0->ISC = 8;/*清除协版本清除标志位*/

以上示例适用于单通道 SS3

我不想使用 ADCSequenceDataGet  

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

    您好、

     SS3只能采集一个样本。 如果要采集八个样本、则需要使用 SS0。 下面是一个为三个通道配置 SS0的示例。 可以扩展到八个通道。 我还注意到、您正在使用 DRM (直接寄存器操作)样式编写代码。 不建议采用这种编码方法。 TivaWare SDK 提供附带 API 的驱动程序、可轻松配置外设、并且这些驱动程序经过了良好的测试和验证。 以 DRM 样式写入容易出错、提供驱动程序时无需重新创建驱动程序。

    GPIOPinTypeADC(GPIO_PORTE_BASE, GPIO_PIN_3 | GPIO_PIN_2 | GPIO_PIN_1);

    ADCSequenceConfigure(ADC0_BASE, 0, ADC_TRIGGER_PROCESSOR, 0);

    ADCSequenceStepConfigure(ADC0_BASE, 0, 0, ADC_CTL_CH0 );

    ADCSequenceStepConfigure(ADC0_BASE, 0, 1, ADC_CTL_CH1 );

    ADCSequenceStepConfigure(ADC0_BASE, 0, 2, ADC_CTL_CH2 | ADC_CTL_IE |
    ADC_CTL_END);

    ADCSequenceEnable(ADC0_BASE, 0);

    ADCIntClear(ADC0_BASE, 0);

      

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

    你(们)好

    查尔斯,我明白,  

    感谢您的答复