我是ARM初学者,刚学了ARM中的GPIO口,现在想学下定时器匹配中断,其中要涉及到Fpclk、Fcclk什么的,就想了解下MDK中默认设置的P和M以及VPB是多少,查到结果如下:
p=3,M=32
问题就来了。我用的是LPC2103,CPU支持的最大处理器频率是70MHz。我仿真设置的晶振频率是12MHz,按照MDK中设置的那样Fcclk=12*32MHz远超70MHz,那么为什么还能运行?如果说有这样的规定:处理器把超过70MHz就都默认为70MHz。那么按照这样看,如果我把晶体振荡频率调成10MHz,Fcclk依然超过70MHz,那么CPU就会认为它是70MHZ,那么来看,对于同一个延迟函数,延迟时间应该是相同的,可是仿真后却不同。
请大家帮助我分析分析,给我讲解讲解,帮助我消除迷惑,以便继续下面的学习。谢谢 |