单片机C51执行一条简单语句要多久?

作者&投稿:巢初 (若有异议请与网页底部的电邮联系)
51单片机执行一条指令需多久?~

这个与单片机型号、指令类型和使用的晶振频率有关,比如AT89C51,是一个12个时钟周期等于1个机器周期的单片机,如果使用的晶振是12MHz的话,执行一条单指令的 NOP 需要 12x(1/12M)=1微秒的时间,

那要看你这条语句的步数了,
用汇编解释这条语句,再查对应会变语句的步数,
晶振频率的倒数再乘以12再乘以得到的步数就是该条语句执行的时间

看是哪种单片机,有快有慢

时钟周期T又称为状态周期,是时序中最小的时间单位。具体计算就是1/fosc。也就是说如果晶振为1MHz,那么时钟周期就为1us;6MHz的话,就是1/6us。EDA中国门户网站0Y+MZ8iuB;xt2R3f4V

q ` M5l,H t0 2、机器周期

&utF&G Q%`0pN0 EDA中国门户网站 W:E vsQ5`*U
机器周期定义为实现特定功能所需的时间,或完成某一规定操作所需的时间,通常由若干时钟周期构成。具体计算为:时钟周期 X cycles。如果单片机是12周期的话,那么机器周期就是T×12。假设晶振频率为12M,单片机为12周期的话,那么机器周期就是1us。EDA中国门户网站;RqCk @ F

+\3P c$h-Qu0 3、指令周期

kI%f)jn5z0
1My6Qco3Cc0 置零周期是时序中的最大时间单位,定义为执行一条指令所需的时间。通常,包含一个机器周期的指令成为单周期指令,比如CLR,MOV等等。包含两个机器周期的指令称为双周期指令。另外还有4周期指令,比如乘法和除法指令。

$`z|w)G+s6Q0 EDA中国门户网站2Brl/d&s-IO2`
而我现在使用的晶振为22.1184MHz,单片机为4时钟周期,所以机器周期为1/5.5296 us。

'{n+E%{1HB]4@0 EDA中国门户网站8` `"L+B3v*?%]&`-QW
-------------------

2H\*Om5P3D8lz'pZ0 EDA中国门户网站s,e%L4DL(M3J
时钟周期 X cyclesEDA中国门户网站])P-B fFm&B

EDA中国门户网站prGS,\
标准8051单片机为12时钟周期,即一个机器周期为标准的12个系统时钟周期(时钟周期 X 12)。EDA中国门户网站UQfO$]1mKE

,[ O9q"QqW&b X0 PHILIPS单片机为6时钟周期。

3lzh/XN6@0 EDA中国门户网站r&FMNZe'Qd1f"c
AVR单片机为单时钟周期。

F(w8R3q#xI |B0
{5`#o+{NN/H0 C8051FXXX单片机为单时钟周期,即1个机器周期为1个系统时钟周期(时钟周期 X 1)。故比51至少快12倍。EDA中国门户网站?]$uHwz%P

3秒


C51问题,怎么样在一个程序给P0,P1口一同输出。
51单片机是8位机,数据输出一次最多8位,P0和P1口或P1和P2口是不可能同时输出的。只能采用16位的内部变量管理数据,然后分高8位和低8位分别输出,好在运算并不复杂。比如:int temp;P1 = temp%0x100; \/\/得到temp变量的低8位,并从P1口输出 P2 = ((temp\/0x100)%0x04); \/\/得到te...

设单片机系统如何编写一个完整的C51程序使P1.6和P1?
三、C51编程: 1、C语言是一种高级程序设计语言,它提供了十分完备的规范化流程控制结构。因此采用C51语言设计单片机应用系统程序时,首先要尽可能地采用结构化的程序设计方法,这样可使整个应用系统程序结构清晰,易于调试和维护。 2、对于一个较大的程序,可将整个程序按功能分成若干个模块,不同的模块完成不同的功能。...

80c51单片机 1 到20 数码管显示程序
5、FrankLin For Windows使用经验谈 6、AT89C 系列单片机解密原理 7、一个C51讨论组的压缩包 8、微型打印机的C语言源程序 9、6B595或74HC595的C语言源程序 10、24C02串行EEPROM的C语言源程序 11、日历时钟DS12887或146818的C语言源程序 12、串行4路DAC TLC5620的C语言源程序 13、串行8位ADC TLC0...

采用单片机的c语言开发时,只能利用c51语言书写程序,不能嵌套汇编语言...
像这种语言开发的话,那么是只能利用这个书写程序完成这个流程。

跪求单片机c51用汇编语言写的程序,功能为:8只发光二极管依次点亮,从...
跪求单片机c51用汇编语言写的程序,功能为:8只发光二极管依次点亮,从左向右移动,时间间隔0.5秒。 30 跪求单片机c51用汇编语言写的程序,功能为:8只发光二极管依次点亮,从左向右移动,时间间隔0.5秒。 最好加上注释每一步在做什么,急用,好人一生平安!萌の残念 | 浏览914 次 |举报 我有更好的答案...

单片机 msp430 与c51 的区别
c51单片机比较有代表性的如64KB的flash和1KB的ram算是很大了。51单片机和430单片机的主要区别是51是8位的,430是16位的。开发环境都有相应的c开发环境。C 51 单片机是 8 位单片机。其指令是采用的被称为“ CISC ”的复杂指令集,共具有 111 条指令。而 MSP430 单片机是 16 位的单片机,采用了...

单机片C51完全学习手册内容简介
《单片机C51完全学习手册》是一本专注于单片机C51语言的详尽教程。它首先从基础讲起,深入剖析C51程序设计的基本要素,如语法、函数和数据结构,确保读者对语言有全面理解。接着,书中详细讲解了Keil C51这一调试软件的运用和调试技巧,这对于提升程序设计的精准度至关重要。此外,手册还涵盖了Keil C51集成...

单片机求编写程序,C51
1.答:执行时间短。1个机器周期指令有64条,2个机器周期指令有45条,而4个机器周期指令仅有2条(即乘法和除法指令);指令编码字节少。单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;位操作指令丰富。这是80C51单片机面向控制特点的重要保证。2.答:80C51单片机的寻址方式有七种。即:寄存器寻址、...

单片微机原理汇编与C51及接口技术基本信息
《单片微机原理汇编与C51及接口技术》是一本由朱定华、戴颖颖等编著的专业书籍,旨在深入解析单片微机的工作原理,以及C51编程语言在微控制器开发中的应用,以及接口技术的基础知识。这本书的内容涵盖了从微处理器基本概念到实际操作的各个环节,对于理解和掌握微电子技术的学生和工程师来说,具有很高的...

c51单片贩定时计数器t0有几种工作方式
51单片机定时计数器T0有四种工作方式:方式0: 13位定时计数方式,最大计数值为2^13=8192,定时8192个机器周期;方式1: 16位定时计数方式,最大计数值为2^16=65536,定时65536个机器周期;方式2: 8位自动重装计数方式,最大计数值为2^8=256,定时256个机器周期;方式3: 特殊工作方式。将定时器0分成...

绵阳市19779016203: c51单片机中,每条c语言需要的时间是多少啊,是一个机器周期还是时钟周期!谢谢啦! -
鄢爽葵严: 你说的是指令周期,根据指令的不同,一般一个指令需要1-4个机器周期来完成(比如乘法或除法就需要48个时钟周期来完成),一般的51单片机都是12分频,也就是说1个机器周期分为12个时钟周期.请你好好理解时钟周期--机器周期--指令周期三者之间的关系. 目前STC有不少型号的单片机有单时钟周期指令,一个时钟周期即为一个机器周期,不进行12分频,就是在1个时钟周期内可以执行一条指令,但只是部分指令可以单时钟周期执行,大多指令需要1-6个时钟周期来完成,相比较而言,已经比普通的12分频单片机速度快多了.

绵阳市19779016203: 单片机执行一条语句需要多少时间 -
鄢爽葵严: 这个跟单片机的指令周期有关系,跟晶振频率都有关系,一般在几us左右

绵阳市19779016203: 51单片机执行一条语句的时间是多久
鄢爽葵严: 得看是什么语句,也要看单片机晶振是多少,另外是多少T的. 通常对12M晶振,12T(一个机器周期是12个时钟周期)的51单片机,有的指令(汇编)是1个机器周期,有的是2个,还有两条指令是4个(乘,除),这样对应的就需要1us,2us,4us 如果是C的语句,就要看编译成的机器指令是什么样的

绵阳市19779016203: 单片机C51执行一条简单语句要多久? -
鄢爽葵严: 看是哪种单片机,有快有慢 时钟周期T又称为状态周期,是时序中最小的时间单位.具体计算就是1/fosc.也就是说如果晶振为1MHz,那么时钟周期就为1us;6MHz的话,就是1...

绵阳市19779016203: 51单片机执行一条语句的时间是多久 -
鄢爽葵严: 0.0000005us差不多吧!仿真运行一下就知道了啦!设置断电就可以看到了

绵阳市19779016203: 51单片机执行一条指令需多久?
鄢爽葵严: 这个与单片机型号、指令类型和使用的晶振频率有关,比如AT89C51,是一个12个时钟周期等于1个机器周期的单片机,如果使用的晶振是12MHz的话,执行一条单指令的 NOP 需要 12x(1/12M)=1微秒的时间,

绵阳市19779016203: 51单片机执行正常一条语句和执行一条延迟是不是所需要时间不同? -
鄢爽葵严: P0=0xFE一个指令周期 i++,要看i是什么变量,8位和16位不一样,还要看其存放在什么地方,如果是8 位变量,又刚好存放在Rn寄存器中,也是一个指令周期,如果是16位变量,一般需2到3个指令周期.

绵阳市19779016203: 单片机执行用c编译的程序时,每执行一行语句所需要的时间是多少? -
鄢爽葵严: 不确定,这个和单片机的性能,编译器性能,语句复杂度都有关系.就像你不能要求1.8G的CPU运行速度和2.8G的同样快,单片机的性能很重要.同样一条C语句,不同的编译器可能翻译成不同条数的机器码指令,当然,一般一个单片机只认识很有限编译器编出来的目标码,这条基本可以忽略.还有就是C语句是什么语句,比如运行i++一般只需要一个指令周期,i=i+1却最少需要三个.所以你的问法应该是“核心频率是XXXHz的单片机,每秒能执行多少汇编指令?”

绵阳市19779016203: 单片机c语言程序执行时间 -
鄢爽葵严: 一个机器周期=12个时钟周期=12*(1/(12*10^6))=1*10^-6 s即一个机器周期既是1微秒 如果用的是定时器或汇编语言 可以很精确的计算 单周期指令执行一次即1微秒 如果用C语言 只能估算也可以用keil仿真计算 大概是105微秒左右吧

绵阳市19779016203: 单片机一条语句只在执行的时候执行一次完之后,只保持该值一个指令周期吗? -
鄢爽葵严: 这是C语言的程序,对于单片机的主程序必须有while(1)语句,应该是由while(1)语句构成主循环结构.而你这个主程序只有一个语句,LED=0; 那就必须保留while(1); 一行,这是一个无限循环语句,单片机才能在这个语句上无限循环下去,相当于停止在这一行上.如果没有这一行,编译时就当成子程序,执行完点灯一句要返回,可无处返回,造成错误,程序会混乱.有一个关键问题你没理解,就是单片机执行指令是永远不会停止的,虽然你只写一条语句,但是单片机执行完却不会停止的,还要继续执行,因没有程序了,就会执行ROM中乱码,造成了小灯闪亮.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网