完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
Mc9s12单片机PWM模块为什么要初始化锁相环?
如果有可能,可否解释一下下面程序 初始化锁相环 */ /*************************************************************/ void INIT_PLL(void) { CLKSEL &= 0x7f; //set OSCCLK as sysclk PLLCTL &= 0x8F; //Disable PLL circuit CRGINT &= 0xDF; #if(BUS_CLOCK == 40000000) SYNR = 0x44; #elif(BUS_CLOCK == 32000000) SYNR = 0x43; #elif(BUS_CLOCK == 24000000) SYNR = 0x42; #endif REFDV = 0x81; //PLLCLK=2×OSCCLK×(SYNR+1)/(REFDV+1)=64MHz ,fbus=32M PLLCTL =PLLCTL|0x70; //Enable PLL circuit asm NOP; asm NOP; while(!(CRGFLG&0x08)); //PLLCLK is Locked already CLKSEL |= 0x80; //set PLLCLK as sysclk } /*************************************************************/ /* 初始化PWM */ /*************************************************************/ void init_pwm(void) { PWMCTL_CON01= 1; //联结通道0,1为16位的PWM PWMPOL_PPOL1= 1; //通道01的极性为高电平有效 PWMPRCLK = 0x55; //A时钟和B时钟的分频系数为32,频率为1MHz PWMSCLA = 25; //SA时钟频率为20KHz PWMCLK =0x02; //通道01用SA时钟作为时钟源 PWMPER01 = 200; //通道01的周期为100Hz PWMDTY01 = 0; //通道01的占空比为0% PWME_PWME1 = 1; //使能通道01 } |
|
相关推荐
10个回答
|
|
|
|
回帖奖励 +1 分积分 |
|
|
|
|
|
|
|
|
|
又一个最佳答案,呵呵
|
|
|
|
不错不错,学到了
|
|
|
|
对着程序把寄存器功能过一遍,就差不多清楚了
|
|
|
|
看你使用外部晶振时钟,还是用锁相环时钟
|
|
|
|
那是为了超频,不初始化也可以吧
|
|
|
|
提供系统时钟。
|
|
|
|
只有小组成员才能发言,加入小组>>
1907个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36358 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4395 浏览 0 评论
6050 浏览 1 评论
6763 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4212 浏览 0 评论
619浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
614浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
606浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
694浏览 2评论
798浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 13:37 , Processed in 1.238308 second(s), Total 74, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号