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.

stellaris LM4F120 IO口速度问题



由于最近要用高速AD进行采样,stellaris自带AD不够用,需要外接更快的AD,但是今天在测试IO口电平翻转速度时发现LM4的在频率调到80MHZ的情况下才翻转速度才1.4兆,对比了一下和430launchpad 的翻转速度相差不算大,这是什么情况,在如此慢的情况下,高速AD接上去可以直接读取数据么?还有我驱动TFT发现刷新速度和别人avr差不多,感觉是不是因为IO翻转速度根本上不去的原因?看数据手册说IO在低速总线是两个时钟周期翻转一次,那是不是应该达到40MHZ翻转速度?我是新手,希望高手解答,我怎样才能用高速AD,提高TFT刷新率

  • 你对GPIO口操作的时候不要调用库函数,直接用位带操作GPIO对应的位。

    如果你需要高速的GPIO翻转,要使能AHB功能,即高速总线访问模式.理论上可单周期翻转GPIO。

     

  • 你好,谢谢你的回答,我想即使调用函数,也不可能在吧晶振倍频到80M的情况下翻转才1M吧,而且AHB我是用总会偶尔出现问题,我也在社区问过,关于不调用库函数的方法我暂时还不会,因为一直看例程这些都是用库函数

  • GPIO速度取决于两个参数,一个是主频,第二是GPIO的翻转速度。

    在主频较低的时候,影响GPIO速度的往往是执行GPIO翻转的代码数,主频上升后,执行代码的时间越来越小,影响GPIO的更多因素就是GPIO的翻转速度了,

    到了一定频率,主频的提供根本影响不了GPIO的速度。

    实际测试TIVA-M4的芯片,在50M和80M的速度都大概为4M左右。

    代码如下:

      GPIO_PORTF_DATA_R = 0Xaa;     GPIO_PORTF_DATA_R = 0x55;     GPIO_PORTF_DATA_R = 0xAA;     GPIO_PORTF_DATA_R = 0x55;         GPIO_POR

    测试的波形如下:

    如果要想个更高的GPIO速度就需要使用AHB高速总线访问。