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:不带 CMSIS 库的 ADC 转换

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/744250/tm4c1294ncpdt-adc-conversion-without-cmsis-library

器件型号:TM4C1294NCPDT
Thread 中讨论的其他器件: EK-TM4C1294XL

尊敬的 TI 社区。

我正在尝试创建一个程序、其中 ADC 转换器执行转换、结果存储在变量中。

这没有 CMSIS 库、可以提高我对微控制器的了解。

我已经阅读了 ADC 章节、15.4节甚至提供了配置不同寄存器的分步计划。

但是、我的程序看起来不错、但在调试时、它会一直等待转换完成(代码中的第49行)。

是否有人知道我缺少什么/做了什么错? 我已执行数据表中的所有步骤4次、没有成功。 代码是   

该代码甚至包含有关参考数据表中第15.4节的步骤的注释。

请帮助! 我已经在这方面投入了足够的时间、不能让它继续下去。

编辑:

这里是源代码。

e2e.ti.com/.../7762.main.c

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

    我们无法看到您的代码、您能否通过插入代码、附加文件等方式将其发布到 E2E? 发布框右下角的功能。 单击此按钮将显示丰富的文本编辑器,您应该使用类似于" "以弹出一个对话框、您可以在其中粘贴代码。

    一般而言、您是否了解过 TivaWare ADC 外设示例? 您是否为此使用 TivaWare? TivaWare 应该能够执行所有配置、而无需对数据表进行大量回复。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Ralph Jacobi。

    这很奇怪。 如果我在第一篇帖子中按大 CPP 图标、我可以查看源代码。
    我已编辑了原始帖子、以便您现在可以将文件下载到您的计算机。

    正如我之前说过的、我没有使用 CMSIS 库。 这意味着我不使用 TivaWare 库。
    这有一个具体的原因、即练习阅读数据表和生成代码。

    为了使 ADC 正常工作、我已经按照数据表中提到的步骤操作了。
    我卡在第49行、while 循环等待转换完成。 指示完成的标志永远不会被置位。

    如果您查看我的代码和数据表、并告诉我我缺少什么/做了什么错误、我将不胜感激。
    我在其中投入了很多时间来生成该代码、但它不起作用。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jan、

    根据我们的论坛指南、我们不支持直接寄存器编程-仅支持 TivaWare、请参阅第4点: e2e.ti.com/.../695568

    如果您使用 TivaWare、则无需使用 CMSIS、因为它们是完全独立的。

    TivaWare 会为您处理所有这些配置、这就是进行配置的原因。 如果您想获得实践、这就是您应该的做法、我们的所有客户都应该使用 TivaWare。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Ralph:

    您能给我举几个使用 TivaWare 库的 ADC 示例吗?
    如果我转到 Code Composer 中的 Resource Explorer 并搜索"EK-TM4C1294XL-"、我将看不到对 ADC 进行编程的任何示例。
    我想获取一个使用内部 PIOSC 作为时钟源的示例。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Jan、

    首先、我建议从 http://www.ti.com/tool/SW-TM4C 下载 TivaWare

    Resource Explorer 对您查找的内容不是很有帮助、因为我们的 ADC 示例保持非常通用、因为 ADC 有太多用途、无法像其他外设那样将其缩小、但 Resource Explorer 没有一种好的反映方法。

    在 TivaWare 中、我们在示例文件夹内有一个名为"外设"的文件夹、这是我们的 ADC 示例所在的位置。

    我们没有一个使用 PIOSC 作为 ADC 时钟的示例、但这是实现此目的所需的 API (您需要确保 ADC 基址与所需的 ADC 相匹配、此示例用于 ADC0):

    ADCClockConfigSet (ADC0_BASE、ADC_CLOCK_SRC_PIOSC |ADC_CLOCK_RATE_FULL、1); 

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

    这似乎是一个愚蠢的问题、但是如果我尝试下载完整的 TivaWare、我会进入一个页面
    其中大多数文件是.exe 文件(software-dl.ti.com/.../index_FDS.html)
    我使用 GNU/Linux 操作。 是否可以下载.zip 文件或类似文件?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jan、

    我看到、在这种情况下、您可以通过在线 TI REX 下载它、它应该作为 Linux 的.zip 文件提供。

    您可以访问的链接是: dev.ti.com/.../

    查找"TM4C ARMRegisteredCortexRegistered-M4F MCU"的"Download All"选项
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ralph:

    非常感谢。 我现在已经获得了 TivaWare 的源代码。