在荔枝派nanoo上尝试将F1C100s超频运行,基于论坛Keil裸机工程上测试,测试结果如下:
(在SPL阶段还是按默认频率CPU 408M、 DDR 312M运行,SPL结束后进行CPU频率调整和DDR频率调整。USB电源5V2A)
开启定时器0 1000HZ中断情况下:
1.CPU 744MHz DDR 312MHz 接4.3寸 480*272屏,全亮度持续刷屏运行半小时一切正常
2.CPU 744MHz DDR 480MHz 接4.3寸 480*272屏,全亮度持续刷屏运行半小时一切正常
3.CPU 768MHz DDR 480MHz 接4.3寸 480*272屏,全亮度持续刷屏,运行n秒左右宕机(n在10秒内)
4.CPU 768MHz DDR 312MHz 接4.3寸 480*272屏,全亮度持续刷屏,运行n秒左右宕机(n在10秒内)
5.CPU 768MHz DDR 480MHz 不接显示屏(程序不变),运行半小时一切正常
6.CPU 816MHz DDR 480MHz 不接显示屏(程序不变),运行n秒左右宕机(n在10秒内)
关掉所有中断后
7.CPU 816MHz DDR 480MHz 不接显示屏(程序不变),运行半小时一切正常
8.CPU 864MHz DDR 480MHz 不接显示屏(程序不变),无法进入主程序
测试发现超频运行电源稳定性很重要,而荔枝派nano的电源貌似并不能支撑其达到800MHz的稳定运行,尤其是带了屏以后。至于增加定时器中断后主频稳定性也受影响暂时不知道该怎么解决。
最终我测试我的荔枝派nano稳定运行的最大频率如下(不接屏,接屏再降为744M主频)
极限运行频率(无任何中断)
PS:我下的裸机Keil工程貌似存在一个小BUG,文件sys-dram.c中,对DDR频率的配置宏为#define PLL_DDR_CLK (151000000),但实际读回来DDR频率为312MHz,查看代码和手册发现配置上存在一个小问题,在K和M值相等的情况下,公式里不需要*2的,把*2去掉就行了,而且阴差阳错的,配置为151M然后公式里乘以2后变为312M,正好是默认DDR主频。。
看网上有人说F1C100s能达到900M,不知是怎么实现的呢?
离线
各位大神能否告知怎么改DDR运行频率吗,我发现用F1C100S跑个图像算法耗时太大了,光是拷贝一个VGA的图像数据就花了9毫秒了。主频我都升到900MHZ去了,估计是RAM速度太慢的。
我试了下主频768M,DDR默认312M时,在DDR中拷贝【640*480*4】大小的数据到另一块区域,耗时14ms。。。。将DDR主频设置为480M后,拷贝时间为9ms.。。。我是在裸机环境下开发,因此设置只要修改一下DDR PLL寄存器就行了
离线
ntmusic大哥,我跟你一样都是裸奔的,请问一下那个DDR的PLL怎么配置呢,我看手册来配置了一下挂B了,能否贴一下代码看看呢,新手上路手册看得迷迷糊糊的,还想把DDR配到600MHZ去了,这个DDR最高能跑到多少呢。
参看手册把PLL_DDR_CTRL_REG的值配为:(1<<31)|(1<<20)|(N<<8)|(1<<4)|(1<<0),其中DDR频率为:24*(N+1)MHz,然后等待PLL稳定while(PLL_DDR_CTRL_REG&(1<<28)==0)就可以了啊。如果你使用论坛大神裸机程序,在sys_dram.c文件中有一个#define PLL_DDR_CLK在这里定义一个主频就好了(实际运行频率是这个定义的2倍)。经过持续运行发现,DDR还是不要随便更改主频,可能涉及一些刷新和时序问题。我之前配为480M,跑一小时没问题,但再久就出现花屏之类的问题了。然后我更改为408M,已经运行1天了没问题
离线