[C8051F320]C8051F320的内部时钟工…

原创 2015年07月11日 00:17:32
    问题描述:时钟是MCU的心脏。C8051F320是带有内置时钟的,这个功能非常强大,可以不用外接晶振电路就可以驱动MCU工作。C8051F320的许多功能都是与时钟相关的,像有时序要求的通信:串口,SPI等,以及定时器等。我在电路设计时就考虑用内部时钟的,因此没有设计外部时钟电路,下面也会重点记录内部时钟的使用。
    C8051F320的时钟:可编程内部时钟+外部晶振驱动电路+4倍时钟乘法器(名字有点别扭,暂且这么叫了)。C8051F320的时钟分为系统时钟SYSCLK和USB时钟USBCLK。
    可编程内部时钟:这是系统复位后的默认时钟,通过OSCICL寄存器编程。
[C8051F320]C8051F320的内部时钟工作机制学习
    f_BASE是复位后的内部时钟,C8051F320是12MHz,deta_T是时钟周期。系统时钟可以由内部时钟1分频/2分频/4分频/8分频,具体的分频设置在OSCICN寄存器的IFCN位,系统复位后默认使用的是8分频。
    OSCICL复位值会使内部时钟频率为12MHz(12MHz适用于USB通信),而系统时钟复位后默认是对内部时钟进行8分频,即1.5MHz。可以通过软件修改内部时钟值,但修改后就不适合用于USB通信了。
    内部时钟有挂起模式,当往OSCICN的SUSPEND位写1后内部时钟就挂起了。
    外部时钟驱动电路:可以是外部晶振,陶瓷谐振器,电容或RC网络。CMOS时钟也可以提供时钟输入。使用外部时钟时需要配置对应的端口引脚的功能。
    4倍时钟乘法器:由名字可知,能将12MHz的时钟乘以4倍变成48MHz,这个时钟是用于全速USB通信的。当然对这个乘以4倍的时钟分频后也可以为系统提供时钟的。4倍时钟乘法器的配置要通过CLKMUL寄存器。如果用外部时钟作为4倍时钟乘法器的源,则要保证外部时钟足够稳定。
    系统时钟和USB时钟的选择:配置CLKSEL寄存器的CKLSL[1:0]位决定了使用哪个时钟源作为系统时钟。配置CLKSEL寄存器的USBCLK[2:0]位决定了使用哪个时钟源作为USB时钟(USB0工作于全速模式时需要48MHz时钟,工作于低速模式时需要6MHz时钟)。
版权声明:本文为博主原创文章,未经博主允许不得转载。

[C8051F320]C8051F320的内部时钟工…

问题描述:时钟是MCU的心脏。C8051F320是带有内置时钟的,这个功能非常强大,可以不用外接晶振电路就可以驱动MCU工作。C8051F320的许多功能都是与时钟相关的,像有时序要求的通信:串口,S...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:17
  • 814

配置AD9512

///////////////////////////////////// //  // Function: 配置AD9512 // Date  :   2012.09.20 // Autho...
  • a379039233
  • a379039233
  • 2014年01月12日 13:17
  • 734

[C8051F320]完全在Keil下进行C8051…

问题描述:之前写过在Silicon Laboratories IDE下进行C8051Fxx单片机程序开发以及在Keil下编程调试,然后将生成的hex文件用Silicon的Flash Program烧写...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:16
  • 1511

[C8051F320]串口UART0全双工调试过…

问题描述:由于应用需要,将C8051F320的UART0作为数据通信接口,与上位机之间进行通信并实现简单的控制功能。程序大概是:由串口定时发送数据到上位机,这个定时时间用定时器控制,可由上位机通过串口...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:17
  • 1200

ADF4106配置

#include sbit clk   =  P0^0; sbit dat   =  P0^2; sbit le    =  P0^3; unsigned char send1...
  • a379039233
  • a379039233
  • 2015年05月20日 09:21
  • 1016

C8051F与80C51系列单片机的初始化比较

熟悉MCS—51系列单片机的工程技术人员可以很容易地掌握C8051Fxxx的应用技术并进行软件移植。但不能将8051的程序直接应用于C8051F单片机中,因为这两种系列的单片机内部资源存在较大的差异,...
  • xiaoshengyige
  • xiaoshengyige
  • 2012年08月01日 16:48
  • 925

[C8051F320]SiLabs的USBXpress的安…

问题描述:现有一块C8051F320的板子,用于实现USB数据传输的单片机电路板,打算熟悉其代码以及开发过程,便于在上位机编程实现一些应用。于是下载安装了USBXpress开发包并进行了了解。    ...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:16
  • 1334

[C8051F320]C8051F320的定时器学习

问题描述:现打算用定时器来控制数据传输的速率,有点类似数据采集的采样速率,即控制1S内传输多少组数据,而且用到串口,而且C8051F320串口已经使用Timer1作为波特率发生器了,因此定时就得考虑其...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:17
  • 814

C8051F与80C51系列单片机的初始化比较

熟悉MCS—51系列单片机的工程技术人员可以很容易地掌握C8051Fxxx的应用技术并进行软件移植。但不能将8051的程序直接应用于C8051F单片机中,因为这两种系列的单片机内部资源存在较大的差异,...
  • xiaoshengyige
  • xiaoshengyige
  • 2012年08月01日 16:48
  • 925

配置AD9512

///////////////////////////////////// //  // Function: 配置AD9512 // Date  :   2012.09.20 // Autho...
  • a379039233
  • a379039233
  • 2014年01月12日 13:17
  • 734
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[C8051F320]C8051F320的内部时钟工…
举报原因:
原因补充:

(最多只允许输入30个字)