完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-14 09:56 编辑
各位: F28035使用外部有源晶振时和使用内部晶振在寄存器的配置上除了选择外部晶振源还有其他的注意事项吗? 我在实验时,同样的程序代码控制PWM波形,使用外部有源晶振(20MHz)时的PWM频率刚好是使用片内晶振时PWM波形的两倍,想问下各位F28035使用外部有源晶振都需要做哪些配置?谢谢。 |
|
相关推荐
6个回答
|
|
都是有寄存器配置的 内部集成两个10M的晶振
默认启动时是有效的且晶振1作为默认时钟源,若为省电,晶振需由用户手动关闭,震荡频率可由各自寄存器配置;内部振荡1和内部振荡器2均可独立选择为看门狗、核心电路和CPU定时器2提供时钟 |
|
|
|
因为片内晶振是10M,所以你使用外部晶振就会是片内的两倍,首先你要注意片外晶振或者时钟源只能是5-30M,然后通过F28035 的PLL倍频再分频到最高60M。
在初始化时钟源的时候调用以下函数就可以了。 void XtalOscSel (void) [ EALLOW; SysCtrlRegs.CLKCTL.bit.XTALOSCOFF = 0; // Turn on XTALOSC DELAY_US(1000L); // 1mS delay to ensure crystal // oscillator is up and running. // Adjust as needed. SysCtrlRegs.CLKCTL.bit.XCLKINOFF = 1; // Turn off XCLKIN SysCtrlRegs.CLKCTL.bit.OSCCLKSRC2SEL = 0; // Switch to external clock SysCtrlRegs.CLKCTL.bit.OSCCLKSRCSEL = 1; // Switch from INTOSC1 to INTOSC2/ext clk SysCtrlRegs.CLKCTL.bit.WDCLKSRCSEL = 0; // Clock Watchdog off of INTOSC1 SysCtrlRegs.CLKCTL.bit.INTOSC2OFF = 1; // Turn off INTOSC2 SysCtrlRegs.CLKCTL.bit.INTOSC1OFF = 0; // Leave INTOSC1 on EDIS; ] |
|
|
|
muuwfwr 发表于 2018-6-14 05:20 你好,谢谢,回复。 我用的是外部有源晶振,可以自动产生20MHz振荡的那种,不是石英晶振,是不是应该调用下面这个函数? 还有就是除了调用这个函数之外还需要对倍频和分频的寄存器进行操作吗? 我之前用的F28035开发板进行软件开发,那个用的是内部10MHz晶振,现在设计了自己的线路板,用的是外部20MHz有源晶振,想要把之前的软件直接下载到现在的线路板上使用,因此想问一下是不是还需要额外的配置倍频、分频寄存器? void ExtOscSel (void) [ EALLOW; SysCtrlRegs.XCLK.bit.XCLKINSEL = 1; // 1-GPIO19 = XCLKIN, 0-GPIO38 = XCLKIN SysCtrlRegs.CLKCTL.bit.XTALOSCOFF = 1; // Turn on XTALOSC SysCtrlRegs.CLKCTL.bit.XCLKINOFF = 0; // Turn on XCLKIN SysCtrlRegs.CLKCTL.bit.OSCCLKSRC2SEL = 0; // Switch to external clock SysCtrlRegs.CLKCTL.bit.OSCCLKSRCSEL = 1; // Switch from INTOSC1 to INTOSC2/ext clk SysCtrlRegs.CLKCTL.bit.WDCLKSRCSEL = 0; // Clock Watchdog off of INTOSC1 SysCtrlRegs.CLKCTL.bit.INTOSC2OFF = 1; // Turn off INTOSC2 SysCtrlRegs.CLKCTL.bit.INTOSC1OFF = 0; // Leave INTOSC1 on EDIS; ] |
|
|
|
60user65 发表于 2018-6-14 05:27 是的你需要重新分配PLL的倍频和分频数。 |
|
|
|
|
|
|
|
muuwfwr 发表于 2018-6-14 05:20 竟然使用了外部晶振,为什么最后一句话要打开INTOSC1时钟呢?? |
|
|
|
只有小组成员才能发言,加入小组>>
585 浏览 1 评论
422 浏览 1 评论
617 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
906 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
708 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
190浏览 29评论
1152浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
323浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
284浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
135浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-2 14:40 , Processed in 0.789860 second(s), Total 55, Slave 49 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号