A. 80c51单片机晶振频率分别为6MHz、11.059 2MHz、12MHz时,机器周期分别为多少
一、时钟周期
时钟周期也称为振荡周期,定义为时钟脉冲的倒数(时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12 us),是计算机中最基本的、最小的时间单位。
在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟周期为250us。由于时钟脉冲是计算机的基本工作脉冲,它控制着计算机的工作节奏(使计算机的每一步都统一到它的步调上来)。显然,对同一种机型的计算机,时钟频率越高,计算机的工作速度就越快。但是,由于不同的计算机硬件电路和器件的不完全相同,所以其所需要的时钟周频率范围也不一定相同。常用的8051单片机的时钟范围是1.2MHz-12MHz。
在8051单片机中把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)。
二、机器周期
在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如:取指令、读存储器、写存储器等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。一般情况下,一个机器周期由若干个S周期(状态周期)组成。8051系列单片机的一个机器周期同6个S周期(状态周期)组成。前面已经说过一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示),8051单片机的机器周期由6个状态周期组成,也就是说一个机器周期=6个状态周期=12个时钟周期。
三、指令周期
指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成。指令不同,所需的机器周期数也不同。对于一些简单的的单字节指令,在取指令周期中,指令取出到指令寄存器后,立即译码执行,不再需要其它的机器周期。对于一些比较复杂的指令,例如:转移指令、乘法指令,则需要两个或者两个以上的机器周期。
通常含一个机器周期的指令称为单周期指令,包含两个机器周期的指令称为双周期指令。
所以如果你的晶振频率为f,那么一个时钟周期为1/f,机器周期为12*1/f。将你的频率带入公式即可算出……
B. 单片机的晶振频率为6mhz,执行下列程序需要多少时间(请详细说明,并说明每个步骤需要花多少时间)
(1+100*5+2)*12/6=1006(微秒)
C. 若单片机的晶振频率为6MHZ,则下列子程序的延时时间是
总指令周期数=1+(1+(2+2)*200+2)*15+2=12048。如果一个指令周期=12机器周期,那么延时时间为12048*12/6000000=0.024096s.
D. 若单片机的晶振频率为6MHZ,则下列子程序的延时时间是:
楼上的算法忽略了循环外部的几条指令的执行时间,精度影响不大。
但是对循环内部的指令的执行时间,计算有误。
指令 DJNZ R3,$ 的指令周期为2个机器周期!
晶振频率为6MHz,则机器周期为2微秒;
Y=62248×2×2微秒=124496×2微秒=124.496×2毫秒=0.249秒。
E. 单片机晶振频率为6mhz,用定时器0方式1产生20ms定时,请编程实现其初始化
voidinit(void)
{
TMOD=0x01;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
TR0=1;
ET0=1;
EA=1;
}
F. 已知单片机晶振频率为6MHz,采用查询方式编写程序,求答案
;
ORG 0000H
MOV TMOD, #01H ;T0方式1定时
SETB TR0 ;启动T0
LOOP:
MOV TH0, #(65536-35000/2/2) / 256 ;送入初始值
MOV TL0, #(65536-35000/2/2) MOD 256 ;定时17500us@6MHz
JNB TF0, $ ;等待定时完成
CLR TF0 ;清除标志
CPL P3.7 ;输出方波
SJMP LOOP ;无限循环
END ;完
G. 若单片机的晶振频率为6MHz,求下列延时子程序的延时时间。
你这个计算不行吗?
H. 单片机时钟频率为6MHZ,机器周期为多少
也称时钟周期,是指为单片机提供时钟信号的振荡源的周期(也叫时钟周期),当采用6MHz晶振时,一个振荡周期是1/6M秒。
状态周期:每个状态周期为时钟周期的2倍,一个状态周期为,2/6M秒。
机器周期:一个机器周期包含6个状态周期,也就是12个时钟周期,一个状态周期为12/6M秒。
指令周期:它是指CPU完成一条操作的所需的全部时间。每条指令执行时间都是有一个或几个机器周期组成。MCS-51系统中,有单周期指令、双周期指令和四周期指令。
(8)单片机晶振频率为6mhz扩展阅读:
微处理器内通过内部总线把ALU、计数器、寄存器和控制部分互联,并通过外部总线与外部的存储器、输入输出接口电路联接。外部总线又称为系统总线,分为数据总线DB、地址总线AB和控制总线CB。通过输入输出接口电路,实现与各种外围设备连接。
接外部晶振和微调电容的一端,在片内它是振荡器反相放大器(该放大器构成片内振荡器振荡器的频率是晶体振荡频率)和时钟发生器的输入端;若使用外部时钟时,该引脚接地(对于HMOS单片机)或悬空(对于CHMOS单片机)。
I. 已知单片机的晶振频率为6mhz,试编写程序利用定时器t0的工作方式3,使p1.0
#include<reg51.h>
sbit p10=P1^0;
sbit p11=P1^1;
void t0isr() interrupt 1
{
TL0=6;
p10=!p10;
}
void t1isr() interrupt 3
{
TH0=156;
p11=!p11;
}
main()
{
TMOD=0x03;
TH0=156;
TL0=6;
ET0=1;
ET1=1;
TR0=1;
TR1=1;
EA=1;
while(1);
}
J. 已知单片机系统晶振频率为6mhz,若要求定时值为10ms时,定时器T0工作方
晶振频率为6M,则机器周期为2us,定时10ms,溢出值为5000,TMOD可以设置为方式0或者1,一般设置为1,初始设置如下:
TMOD=0x01;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;