![](/tpl/common/images/warning-icon.png)
5.9 锁相环PLL1(Phase Locked Loop 1)
PLL1仅从主晶振获得自己的时钟频率,并且可以用于仅为USB子系统提供混合48MHz的时钟频率,这可以看作由PLL0提供USB时钟源以外的另一个选择。
PLL1在复位后是禁用并且处于关闭状态,如果PLL1被停用,USB的时钟可以由完成提供48MHz信号状态设定后的PLL0提供,如果PLL1通过PLL1CON寄存器使能并且连接,那么PLL1将自动的作为USB子系统的时钟源。
PLL1的激活由PLL1CON寄存器控制,它的倍频和分频值由PLL1CFG寄存器控制,为了防止PLL1参数发生意外改变或者PLL1失效,对这两个寄存器进行了保护,完成保护的馈送顺序类似于看门口定时器。图5.13为LPC17xx的PLL1的结构框图。
图5.13 PLL1结构框图
以下将描述PLL1涉及的寄存器及其功能描述。
1.PLL1控制寄存器PLL1 Control register(PLL1CON,0x400F C0A0)
PLL1CON寄存器可以用于使能和连接PLL1,使能PLL1锁定到当前倍频器和分频器值设定的频率上,连接PLL1将使USB子系统功能根据PLL1的输出时钟来工作,对PLL1CON的更改只有在对PLL1FEED寄存器执行了正确的PLL馈送序列后才生效。
表5.15 PLL1控制寄存器
PLL1在作为USB子系统时钟源之前必须进行设置、使能并锁定。
2.PLL1配置寄存器PLL1 Configuration register(PLL1CFG,0x400F C0A4)
PLL1CFG寄存器是最新的PLL1配置值的保存寄存器,包含PLL倍频器和分频器的值。在执行正确的PLL1馈送序列之前改变PLL1CFG寄存器的值不会生效。
表5.16 PLL1配置寄存器
3.PLL1状态寄存器PLL1 Status Register(PLL1STAT,0x400F C0A8)
PLL1STAT为只读寄存器,它是PLL1控制和配置信息的回读寄存器,反映了正在使用的真实PLL1的参数和状态。PLL1STAT可能和PLL1CON和PLL1CFG中的值不同,这是因为没有执行正确的PLL1馈送序列,这两个寄存器中的值并未生效。
表5.17 PLL1状态寄存器
PLL1STAT寄存器中的PLOCK1位连接到中断控制器,这样可以使用软件打开PLL1并连接到其他功能,不需要等待PLL1锁定,当发生中断时(PLOCK1=1),可以连接PLL1并禁止中断。
PLL1有3种可能的工作方式,由PLLE1和PLLC1位组合获得。
表5.18 PLL1的工作模式
4.PLL1馈送寄存器PLL1Feed register(PLL1FEED,0x400F C0AC)
必须将正确的馈送序列写入PLL1FEED寄存器才能使PLL1CON和PLL1CFG寄存器的更改生效。馈送序列如下:
将值0xAA写入PLL1FEED
将值0x55写入PLL1FEED
这两个写操作的顺序必须正确,而且在两次操作之间必须没有其他的寄存器访问相同的地址空间(从0x400F C000到0x400F FFFF),这就意味着尽量在执行PLL1馈送的操作的时候禁止中断。不管写入的值不正确还是没有满足前两个条件,对PLL1CON或者PLL1CFG寄存器的更改都不会生效。
表5.19 PLL1馈送寄存器
5.PLL1和掉电模式
掉电模式会自动关闭并断开PLL1,从掉电模式唤醒不会自动恢复PLL1的设置,PLL1的恢复必须由软件来完成。通常,一个将PLL1激活并等待锁定,然后将PLL1连接的子程序可以在任何中断服务程序的开始调用,有一点非常重要,那就是不要试图在掉电唤醒后简单的执行馈送序列来重新启动PLL1,这会出现在PLL1锁定建立之前同时使能并连接PLL1的危险。
6.PLL1频率计算
表5.20 PLL1所需变量表
PLL1的输出频率公式为:USBCLK=M×FOSC或者USBCLK=FCCO/(2×P)
确定PLL1为USB提供时钟配置的方法如下:
* PLL1需要输出的时钟频率是USBCLK=48MHz;
* 选择时钟频率(FOSC)。FOSC可以是12MHz,16MHz以及24MHz;
* 计算配置MSEL1的M值;
* 计算配置PSEL1的P值。
声明:本内容为作者独立观点,不代表电源网。本网站原创内容,如需转载,请注明出处;本网站转载的内容(文章、图片、视频)等资料版权归原作者所有。如我们采用了您不宜公开的文章或图片,未能及时和您确认,避免给双方造成不必要的经济损失,请电邮联系我们,以便迅速采取适当处理措施;欢迎投稿,邮箱∶editor@netbroad.com。
微信关注 | ||
![]() |
技术专题 | 更多>> | |
![]() |
研发工程师的工具箱 |
![]() |
智慧生活 创新未来 |