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:使用 Tiva tm4c129NCPDT 板实现均匀的 ADC 采样

Guru**** 2455560 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/641358/tm4c1294ncpdt-uniform-adc-sampling-using-tiva-tm4c129ncpdt-board

器件型号:TM4C1294NCPDT

您好!

 我想使用 Tiva 板获取 ADC 样本,我尝试使用 Tiva TM4C129板上的 Tiva 示例代码,因为我要从 ADC 获取样本,同时从休眠模块获取时间戳(秒:亚秒)

我以460800波特率将数据发送到 UART,我能够获得样本,但问题是采样时间不一致(我观察到亚秒计数器,每个样本之间的间隔正在变化)。 如何使其尽可能均匀。

提前感谢您。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Rupendra、
    显然、您的问题与 ADC 无关(实际上、它肯定与 ADC 无关)。 相反、这是您如何构建代码执行的问题。
    -仔细查看您的代码、了解每个函数何时被调用。
    -您何时获得时间戳? 将文本输出消息放在一起的同时? 还是刚刚完成 ADC 读数的那一刻?
    -考虑为值的每个"视觉"输出执行一个 ADC 读数是没有意义的:您通常需要以更快的速度对其进行采样、应用一些滤波或其他处理、并以更低的速率输出结果。
    绘制一些代码块、可视化中断、时间控制等、然后您将了解如何创建定期、稳定的计时执行。
    谢谢
    布鲁诺
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Bruno、

    明智之选-尽管"段落/要点"会使这些声音想法(更具视觉吸引力)具有吸引力。    (更多-待定)

    您建议:

    • "整体"的"分解"成单独探测/分析的组成部分
    • 观察和可能的代码执行时间变化
    • 通过方框图(可能是流程图)(突出关系、互连和序列)提高"速度、易用性、增强"此类"代码设计和分析"

    这就是"亲吻规则"----它直接关注"一次一个小而"可衡量"的步骤----只有在"步骤得到证明/核实"时----才可以继续!  

     的敏锐分析(对我而言)未能充分强调"激光聚焦"(一个小步骤)和测试/验证(通过"仔细"选择的可测量方法)、以及最佳的推动(并产生)用户成功的动力。

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

    感谢您的回答、

      但我无法理解您的说法、无法提供有关我的问题的更多信息。我附加了我正在获取的代码和输出、

     如果您观察输出,则每样本(时间间隔)的亚秒计数器值之间的差值不相同,如何使其一致,是否可以通过更改代码来实现 。

    e2e.ti.com/.../code.txt

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

    Rupendra、

    感谢您发布图片。 我相信最初的解释已经很好了、我已经了解了您的问题是什么。 对于值、周期差异不会太大。

    请再次阅读我最初发布的内容、没有"正在偏离它":您需要了解其中写入的内容、即使您必须阅读几次并在其他站点中搜索有关计时器和嵌入式编程的更多信息以帮助您。

    您需要控制代码的时序。 您是否了解 MCU 中的计时器硬件? 您是否正在使用计时器? 您是否在 ADC 上使用中断?  您是否有示波器来帮助您练习这一点? 您只需生成定时脉冲并在示波器上测量它们、即可更清楚地了解情况。

    您需要回答的另一个问题是"您何时记录这些时间计数器值"? 是否在准备文本输出消息时? 样品何时完成? 之间的某个时间?

    有很多可能的解决方案-现在我们甚至不知道是否存在问题、因为数字足够接近、您还没有说明您的项目需要哪种精度。 进入开玩笑的一边、您只需使用 sprintf (outputString、"2033 10:10:7:%04d"、adcValue);并且您将始终保持一个常规间隔、不会? 这只是一种无礼的说法、即只有在目标明确的情况下才能制定解决方案。

    此致

    布鲁诺

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

    您好、Bruno、

    [引用 user="Bruno Saraiva">您的问题显然与 ADC 无关(实际上、它肯定不相关)。 相反、这是您如何构建代码执行结构的问题。

    实际上、海报问题可能与可   用于对 模拟 输入信号进行采样的多种类型的 ADC 触发方法直接相关。 正如您(评论) 所说   、我的观点似乎表明、应用软件执行与 ADC 采样的硬件时序控制密切相关(窗口)。  因此 、如何 排除 ADC 不是导致随后打印各种时间戳的海报所指出的情况的原因。

     这张海报展示了某种 ADC 触发采样窗口时序、然后问题就变成了触发的类型、频率和时间作为关键点。 为了满足我们的好奇心、海报可能会展示一小部分 ADC 配置?

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

    您好 Brett、

    Google 地图显示了您的"感恩节土耳其"的"最后几个小时"-允许"自由范围"-您的(我敢说)(近乎)原始-但(绿色)"死亡 FET 条纹"(墓地/后院)。

    也许未来的组合:

    • 这只“FET 鸣叫”鸟
    • 和其他"餐前准备"-由您的紧凑型"加热炉"(通常(早期)用作 BP 的"回流焊器件")管理  

    以某种方式"减少"您的假日精神/享受?   (我们被告知您的快速拨号上有本地 ER)

    该地图绘制系统的强大功能始终令人惊叹-我们注意到(几乎)绿色返回-在(每个)您邻居的院子上...    (即丢弃的 FET 可能必须"埋入"更深!)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    布鲁诺,这应该是一个样子,也许甚至是一个荣誉。 您正在撰写一些出色的内容。

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

    布鲁诺(Bruno)、及时/主题/EPA (土耳其/FET)对此类"漏义"有何评论?    (即使是 Tho (尤其是 Tho)要点也能提高清晰度!)