单片机系统时钟与实时时钟有什么区别?为什么有的系统时钟晶振使用12M,而实时时钟使用32.768K?

 我来答
seuzhouww
2011-03-21 · TA获得超过1386个赞
知道小有建树答主
回答量:658
采纳率:0%
帮助的人:299万
展开全部
1、大多数单片机都只有系统时钟一个。就是CPU的各节拍工作时序的驱动源了。这个频率一般为几MHz。速度比较快,其目的无非是让单片机快点干活。那为啥不是GHz数量呢,这个是集成电路工艺决定的。根据工艺反推出某款单片机的理想工作频率,往往也是最佳工作频率了。系统在这个频率下工作又快(已达最佳极限)又稳定。最好地体现了计算机的高速运算能力。
2、实时时钟,是单片机计时的时钟或独立的可被单片机访问的时钟。它可以外部扩展芯片得到,如1302,1307,12887,3130,12020,m41t81,6902,8025。有并口有串口,有带电池自己玩,有外部供电,看实际需要设计。这些时钟无一例外地用到了32768Hz。这是因为它们用了同一个计时IC核、低频功耗更低、更容易校表和1Hz计时精密实现。大伙在该基础上做了不同的文章,有的搞点稳定晶振放里面,有的搞点备电方案,有的接口不同,有的搞点万年历,有的搞点报警,有的……
3、还有可能你提到的(可能就是430系列单片机),内部集成了RTC这个模块,要求外面接32768Hz。这样就可以独立地计时,单片机睡觉了也和它的时间管理无关,低成本实时方案,又省了好几毛。
综上:
【1】系统时钟就是CPU时钟,RTC时钟就是计时时钟。
【2】系统时钟的目的是高速稳定,而实时时钟目的是低功耗精确。
ATF144X
2011-03-21 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5344
采纳率:77%
帮助的人:4609万
展开全部
系统时钟(System Clock)和实时时钟(Real Time Clock -RTC)完全是两回事啊,打比方说系统时钟就是人的心脏脉搏,实时时钟就是你戴的手表!单片机需要系统时钟才能工作,才能运算。实时时钟需要32.768KHz晶振是为了计时。因为32768=2^15,即分频很方便,只要简单的硬件就能分频为1Hz,所以RTC芯片才用这种频率。
追问
手表对人体不是必要的,实时时钟对单片机有什么必要性吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ch314156
2011-03-21 · TA获得超过4377个赞
知道小有建树答主
回答量:2036
采纳率:100%
帮助的人:1059万
展开全部
实时时钟的频率来源于晶振,但由于晶振不是1HZ,所以要转化,实时时钟的一秒是某个寄存器计数到32768溢出得到,所以实时时钟使用32.768K。

下面是我百度博客里的,是LPC2103的实时时钟的设置方式:
//********************************************************************
//实时时钟RTC基础实验
//用于仿真观察RTC各个寄存器的值
//分频方式: Fpclk/32768=(PREINT+1)……PREFRAC 格式: 被除数/除数=商……余数
#include<LPC2103.H>
#define Fosc 11059200 //晶振 需要和选项里配置一致
#define Fcclk Fosc*5 //系统频率 和启动代码中的参数一致
#define Fpclk Fcclk/4 //PCLK 和启动代码中的参数一致

int main()
{
PREINT = Fpclk/32768-1; //这两行程序时RTC的“一秒”与实际一秒相同
PREFRAC = Fpclk-(Fpclk/32768)*32768;
CCR=1; //启动RTC
while(1);
}
//***********************************************************************
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式