×
单片机 > 单片机程序设计 > 详情

ARM7单片机(学习ing)—(KZ)、ARM7系列的相关频率的介绍

发布时间:2020-06-15 发布时间:
|

我之前做的实验中,好多都不知道那个pclk是怎么出来的~~我还纳闷的~~呵呵,这篇就详细介绍了我之前的那个大漏洞~~

这篇虽然说是篇介绍,但是ARM7里面的频率还是很重要的,尤其是UART~~

很多人都说FIFO是个大重点~~

在LPC210X系列的单片机中,IIC、SPI、UART、PWM、定时/计数器还有就是在Startup.s文件里的初始化频率等等都是有关频率的~~

所以就想把我现在用到的频率的相关知识总结一下~~

由于前面已经介绍过PLL(锁相环),这里也就不说了~~

不过可以参考一下PLL的介绍:

http://blog.sina.com.cn/s/blog_7ec8fc2c01013b5j.html

 

ARM7系列的相关频率的介绍:

这里首先介绍一下存储器的映射,之所以要介绍它,可能都会认为与这些频率有什么关系?!

但是不然,这里的VPB和AHB(对于AHB我还是不太理解,所以我也就不介绍了~~重点就是VPB了~~)以我个人的理解来说,他们的频率是不一样的,VPB是有个与外设有关的频率(看下图的VPB存储器的映射),要有专门的寄存器控制!!就是VPBDIV这个寄存器,会在后面专门介绍的~~

然后微控制器又有一个自己的是时钟~~我猜应该是应用在SRAM或者Flash这些东西吧~~

系统存储器映射:





然后就是VPB的存取器的映射:




显然从VPB外设的映射可以看出,VPB区域有着定时器、UART、PWM、IIC、SPI等等外设相关的寄存器来控制和检测外设的状态改变,这时就需要用到频率了~~

频率从哪里来呢(这里我主要说在开启PLL锁相环时的频率的情况)~~



正如上图所示,下面我就一个一个频率来说~~

1、Fosc

这个就比较简单了,它就是晶振或者外部时钟源~~

范围:10~25MHz

2、Fcco

PLL电流控制振荡器的频率(这个寄存器我感觉没什么用,具体我也不知道有什么用~~)

范围:156~320MHz

3、cclk

 PLL输出频率,也就是处理器的时钟频率

这里我也不想介绍,因为在PLL那一节已经介绍过了,请看:

http://blog.sina.com.cn/s/blog_7ec8fc2c01013b5j.html

然后我就举个例子(就是拿Keil 4中的Startup.s文件中的设置来举例的~~):

系统设计需要Fosc=12MHz,cclk=60MHz。

依照这个要求,M=cclk/Fosc=60/12=5。

因此,将M-1=4写入PLLCFG[4:0]。

P值可由P=Fcco/(cclk*2)得出,但是Fcco必须在156~320MHz之间内。

假设Fcco最低频率为156MHz,则P=156/(2*60)=1.3;若Fcco为最高频率320MHz,则P=320/(2*60)=2.67。

由此可知满足Fcco最低和最高频率要求的P值只能是2。

因此,PLLCFG[6:5]=01。

好了,上面的就是Keil中的启动文件的关于上面三个频率的介绍~~

4、pclk

外设器件所使用的时钟~~

正如上图所示:一个是处理器时钟(cclk),一个是VPB时钟(pclk),这两个才是时钟里面咱们真正用到的~~

控制pclk的正是VPB分频器~~
下面就介绍一下VPB分频器:





然后在Keil中的启动文件设置就是那个00喽~~

~~

至于AHB~~没有头绪~~是不是软件中断用的,但是跟VPB又有什么关系呢~~

等以后用到了~~再说吧~~


关键字:ARM7  单片机  频率

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
51单片机CO2检测显示程序解析