您的位置 首页 系统

单片机机器周期的核算

单片机的定时器的周期怎么算?就是比如定时器TF0置1的时间,我的晶振是11。0592MHz的怎么算还有就是时钟周期,状态周期,机器周期的概…

单片机的守时器的周期怎样算?便是比方守时器TF0置1的时刻,我的晶振是11。0592MHz的 怎样算 还有便是时钟周期,状况周期,机器周期的概念和联络及换算?

你的不明白其实便是关于守时器的初值问题,11.0592是一直的晶振,时钟周期便是1/11.0592M 而守时器的周期便是12/11.0592 咱们51单片机是12分频的
还有许多......
假如你写的是C的话主张这样写
TMOD=0X01// 守时器0方法1
TH0=(65535-50000)/256;//咱们是16位计数 假定晶振为12MHZ 11.0592的是4600多吧,自己算算...
TL=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
首要的核算便是其间的50000 中止一次所需求的时刻便是50000乘以方才所算的守时器的周期 (这个是50MS) 
也便是你说的:便是比方守时器TF0置1的时刻 中止的时分TF0 要求CPU中止而引起中止
好了
12倍的时刻周期便是机械周期,(方才说过是12分频的)
时钟周期:

 时钟周期也称为振动周期,界说为时钟脉冲的倒数(能够这样来了解,时钟周期便是单片机外接晶振的倒数,例如12M的晶振,它的时刻周期便是1/12 us),是核算机中最根本的、最小的时刻单位。

 在一个时钟周期内,CPU仅完结一个最根本的动作。关于某种单片机,若选用了1MHZ的时钟频率,则时钟周期为1us;若选用4MHZ的时钟频率,则时钟周期为250us。咱们时钟脉冲是核算机的根本作业脉冲,它操控着核算机的作业节奏(使核算机的每一步都统一到它的步骤上来)。明显,对同一种机型的核算机,时钟频率越高,核算机的作业速度就越快。

 8051单片机把一个时钟周期界说为一个节拍(用P一共),二个节拍界说为一个状况周期(用S一共)。


机器周期:

 在核算机中,为了便于管理,常把一条指令的碑文进程划分为若干个阶段,每一阶段完结一项作业。例如,取指令、存储器读、存储器写等,这每一项作业称为一个根本操作。完结一个根本操作所需求的时刻称为机器周期。一般情况下,一个机器周期由若干个S周期(状况周期)组成。

 8051系列单片机的一个机器周期同6个 S周期(状况周期)组成。前面已说过一个时钟周期界说为一个节拍(用P一共),二个节拍界说为一个状况周期(用S一共),8051单片机的机器周期由6个状况周期组成,也便是说一个机器周期=6个状况周期=12个时钟周期。 
例如外接24M晶振的单片机,他的一个机器周期=12/24M 秒;



指令周期

 碑文一条指令所需求的时刻,一般由若干个机器周期组成。指令不同,所需的机器周期也不同。 
关于一些简略的的单字节指令,在取指令周期中,指令取出到指令寄存器后,当即译码碑文,不再需求其它的机器周期。关于一些比较杂乱的指令,例如搬运指令、乘法指令,则需求两个或许两个以上的机器周期。
 一般含一个机器周期的指令称为单周期指令,包括两个机器周期的指令称为双周期指令。


总线周期:

 咱们存贮器和I/O端口是挂接在总线上的,CPU对存贮器和I/O接口的拜访,是经过总线完结的。一般把CPU经过总线对微处理器外部(存贮器或 I/O接口)进行一次拜访所需时刻称为一个总线周期。


总结一下,时钟周期是最小单位,机器周期需求1个或多个时钟周期,指令周期需求1个或多个机器周期;机器周期指的是完结一个根本操作的时刻,这个根本操作有时或许包括总线读写,因此包括总线周期,可是有时或许与总线读写无关,所以,并无清晰的彼此包括的联系。

指令周期:是CPU的要害目标,指取出并碑文一条指令的时刻。一般以机器周期为单位,分单指令碑文周期、双指令碑文周期等。现在的处理器的大部分指令(ARM、DSP)均选用单指令碑文周期。
机器周期:完结一个根本操作的时刻单元,如取指周期、取数周期。
时钟周期:CPU的晶振的作业频率的倒数。
(转)


 以51为例,晶振11.0592M,时钟周期(晶振周期)便是(1/11.0592)μs,一个机器周期包括12个时钟周期(6个状况周期),一个机器周期便是 1μs。一个机器周期一般是一条指令花费的时刻,也有些是2个机器周期的指令,DJNZ,是双周期指令. 

单片机守时器守时核算方法

对12MHz1个机器周期 1us 12/fosc = 1us

方法0 13位守时器最大时刻距离 = 2^13 =8.192ms
方法1 16位守时器最大时刻距离 = 2^16 =65.536ms
方法2 8位守时器最大时刻距离 = 2^8 =0.256ms =256 us

守时5ms,核算计时器初值 M =2^K-X*Fosc/12 12MHz
方法0: K=13,X=5ms,Fosc=12MHz 则 M = 2^13 -5*10^(-3)*12*10^6/12= 3192 = 0x0C78
THx = 0CH,TLx = 78H,
方法1: K=16,X=5ms,Fosc=12MHz 则 M = 2^16 -5*10^(-3)*12*10^6/12= 60536 = 0xEC78
THx = ECH,TLx = 78H,

50ms 12MHz THx = 3CH,TLx = B0H,
10msTHx = D8H,TLx = F0H,
方法2: 最大时刻 2^8Fosc/12 = 0.256ms

十进制数是怎样来的?
6MHz 一个机器周期 12/6 = 2us
守时1ms 计数初值x
(2^16-x)*2us = 1000us
x = 2^16 – 500 ,TH,TL 可置 -500

12MHz 一个机器周期 12/12 = 1us
12MHz 一个机器周期 12/12 = 1us
守时50ms 计数初值x
(2^16-x)*1us = 50000us
x = 2^16 – 50000 ,TH,TL 可置 -500

守时器 计内部晶振频率
计数器 计外部输入CPU脚上的脉冲个数 P3.4(T0) P3.5(T1) 负跳变加一
当晶振为6MHz时,最高计数频率500KHz

寄存器
1 TH TL
2 TCON
TR0 TR1 其他位是中止操控位

TMOD
GATE C/T1 M1 M0 GATE C/T0 M1 M0

2009年2月26日

C8051F00X
守时器:每个时钟加1 时钟可为体系时钟或体系时钟的1/12
CKCON

当引脚上呈现电平常发动T0 当不满足时,中止T0,读出今后清零

51 单片机指令周期,机器周期,时钟周期详解

51单片机有指令周期,机器周期,时钟周期的说法,看似附近,可是又都不太相同,很简单混杂。仍是详细分析一下。

时钟周期:单片机外接的晶振的振动周期便是时钟周期,时钟周期=振动周期。比方说,80C51单片机外接了一个11.0592M的晶体振动器,那咱们就说这个单片机体系的时钟周期是1/11.0592M,这儿要注意11.0592M是频率,周期是频率的倒数。

机器周期:单片机碑文指令所耗费的最小时刻单位。咱们都知道51单片机选用的CISC(杂乱指令指令集),所以有许多条指令,而且各条指令碑文的时刻也或许不相同(有相同的哦),可是它们碑文的时刻有必要是机器周期的整数倍,这便是机器周期的含义地点。8051系列单片机又在这个基础上进行细分,将一个机器周期划分为6个状况周期,也便是S1-S6,每个状况周期又由两个节拍组成,P1和P2,而P1=P2=时钟周期。这也便是常常说的8051系列单片机的的时钟频率是晶振频率的12分频,或许是1/12,便是这个意思。现在(到2012)新的单片机现已能做到不分频了,便是机器周期=时钟周期。

指令周期:指令周期碑文某一条指令所耗费的时刻,它等于机器周期的整数倍。传统的80C51单片机的指令周期大多数是单周期指令,也便是指令周期=机器周期,少部分是双周期指令。现在(到2012)新的单片机现已能做到不分频了,而且尽量单指令周期,便是指令周期=机器周期=时钟周期。

来看这张8051单片机外部数据,这儿ALE和$PSEN$的改变频率现已小于一个机器周期,假如运用C言语模仿这个信号是没有办法做到的一一对应的,所以只能尽量和上面的时序相同,周期延伸。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/xitong/263818.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部