天嵌 ARM开发社区

 找回密码
 注册
查看: 1906|回复: 4

TQ2440运行速度怎么那么慢?

[复制链接]
cecil 发表于 2014-12-8 13:25:09 | 显示全部楼层 |阅读模式
#include "S3C2440.h"
#define MPLL_400MHz ((92 << 12)|(2 << 4)|(1 << 0))


void delay(unsigned int t)
{
        for(;t>0;t--);
}
void clock_init(void)
{
        int r1;
        LOCKTIME = 0xffffffff;
        CLKDIVN  = 0x05;
        __asm
        {
                mrc   p15, 0, r1, c1, c0, 0
                orr     r1, r1, #0xc0000000
                mcr p15, 0, r1, c1, c0, 0
        }
        MPLLCON = MPLL_400MHz;
}
int main()
{
        int a= 50000;
        clock_init();//初始化时钟为400MHz
        GPBCON = 0x15400;
        while(1)
        {
                GPBDAT = 0x00;//点亮LED
                delay(a);
                GPBDAT = 0x1e0;//关闭LED
                delay(a);
        }
}
LED闪烁的程序,把这代码烧进Nor Flash中运行,用万用表测出LED每秒闪4.2次,也就是说delay(50000)都用了不少时间,怎么会这么慢?我用STM32F4测试delay(a),延时一秒a的值都要几千万。
天嵌技术支持03 发表于 2014-12-9 14:47:21 | 显示全部楼层
建议用示波器测一下周期;
或者delay的值设大一些,确保测准了。
 楼主| cecil 发表于 2014-12-10 16:18:54 | 显示全部楼层
用频率计测得,LED闪烁频率是4.2HZ,dealy的值在大点闪的更慢了
 楼主| cecil 发表于 2014-12-27 12:09:15 | 显示全部楼层
问题解决了,把代码复制到SDRAM中运行,速度提高了几倍,再开启MMU运行速度就很快了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-5-3 14:19 , Processed in 1.046875 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表