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:GPIO 切换速度仅为2MHz

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/581593/tm4c1294ncpdt-gpio-toggle-speed-only-2mhz

器件型号:TM4C1294NCPDT

您好!

在切换 GPIO 引脚的速度方面存在一些问题。

下面的代码是我们使用逻辑分析仪运行和查看的测试-我们看到2MHz 似乎非常慢。  

这是准确的还是我们犯了明显的错误?  

#include 
#include 
include "inc/tm4c1294ncppdt.h"
#include "driverlib/sysctl.h"

int main (void)
{
volatile uint32_t ui32Loop;
SysCtlClockFreqSet ((SYSCTL_XTAL_25MHz |
SYSCTL_OSC_MAIN | SYSCTL_USE_PLL |
SYSCTL_CFG_VCO_480)、120000000);

SYSCTL_RCGCGPIO_R = SYSCTL_RCGCGPIO_R7;
ui32Loop = SYSCTL_RCGCGPIO_R;

GPIO_Porth_AHB_DIR_= 0x01;
GPIO_Porth_AHB_DEN_R = 0x01;

while (1)
{
GPIO_Porth_AHB_DATA_R = 1;
GPIO_Porth_AHB_DATA_R = 0;

}
}

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

    您是否为编译器启用了优化? 右键点击项目名称并选择"Show Build Settings..."。 然后将优化级别设置为至少2、全局优化。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果请求"最高频率"输出(不一定是通过 GPIO、只能通过 GPIO)-为 PWM 输出配置了计时器的计时器引脚-可能会证明(接近)最优...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复-事实证明这是一个愚蠢的错误-电路板切换速度快得多、我们的逻辑分析仪是问题所在。  

    如果我浪费了任何人的时间、我深表歉意。 太多的深夜导致一些非常愚蠢的错误!

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

    无需道歉(至少对我)。 了解您实现的切换速度会很有用。   和- Bob 的"优化"建议如何影响您的结果...

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

    [引用 USER="CB1_MOBILE "]

    无需道歉(至少对我)。 了解您实现的切换速度会很有用。   和- Bob 的"优化"建议如何影响您的结果...

    [/报价]
    当我看到这条建议时、我们已经确定这不是 TM4C129的问题、也是我们工具的问题。  
    我们使用逻辑 IC 通过基本的分立式计数器电路确定了这一点、这很好地表明逻辑分析仪 是问题所在。  
    由于逻辑分析仪无法胜任任务、我无法准确地告诉您我们正在获得的结果、但我相信它在30MHz 范围内。 我在寻找精确规格时所做的研究似乎表明、当电路板的时钟频率为120MHz 时、~60MHz 是真实的。  
    我们从未尝试过该建议、因为我们已经确定了根本问题 -但需要记住的是、虽然我不确定它会产生什么影响、因为当我们查看汇编代码时、我认为是4条指令。  
    此代码是使用 Makefiles 和 GCC 构建的、而不是使用 CCS 构建的。
    jjrh