Ⅰ 51单片机用定时器计时应该如何计算求大神支招
这个其实很简单的,你只需要知道一个条件即可:晶振频率。
因为51单片机的机器周期计算公式是12/晶振频率MHz,若晶振为12MHz,则机器周期就是12/(12×10^6)=1us,也就是说计数器没1us计数一次。
那么有了这个条件就好办多了,一般来说,12MHz晶振下,16位定时器满计数是65536次,每次1us,最大就能计时65.536ms,则65536减去多少就是定时多少,如(65536-X)/256,就是定时X微秒。
那么如果晶振不是12MHz,就要把上述的X乘以12/晶振,得到的值就是定时时长。原理相同。
有不懂的地方随时回复我。
希望我的回答能帮助到你。
Ⅱ 【单片机】单片机的定时时间是怎样计算
单片机的定时时间的计算公式=计数值(定时值)* 机器周期= 计数值(定时值)* 12 / 晶振频率。
上面的两个等号是等价的,因为,单片机的机器周期=12秒/晶振频率,因此两个公式通用。
完成一个基本操作所需要的时间称为机器周期。一般,一个机器周期由 若干个S周期(状态周期)组成。80C51系列单片机一个机器周期由6个S周期组成。一个S周期(状态周期),由2个时钟周期组成。
若干个机器周期,组成了指令周期。根据指令不同,所需的机器周期数也不同。
(2)单片机可以运算多长的公式扩展阅读
几种典型指令;
1、单字节周期指令(比如 INC A)
2、双字节单周期指令(比如 ADD A,#data)
3、单字节双周期指令 (比如 INC DPTR)
4、单字节双周期指令 (比如MOVX A @DPTR)
Ⅲ 单片机指令周期的计算
计算方法:PIC单片机的每四个时钟周期为一个内部指令周期,例如:8MHz的晶振,则内部指令周期为1/(8/4)= 0.5 uS
实例一:35us, 8MHz的晶振, 8位定时器, 分频比1/2 , 初值 E4
实例二:156.25us , 32768Hz的晶振, 8位定时器, 分频比1/32 , 初值 FC
计算方法一: 35 = =(256-初值)*分频*4/晶振 + 14/分频 =(256-初值)+14/2
计算方法二:0.015625 =(256-初值)*分频*4/晶振 = (256-初值)*32*4/32768
特别注意:分频比1-8 需要加上一个14/分频
指令周期是指令周期执行某一条指令所消耗的时间,它等于机器周期的整数倍。传统的80C51单片机的指令周期大多数是单周期指令,也就是指令周期=机器周期,少部分是双周期指令。
(3)单片机可以运算多长的公式扩展阅读
在MCS-51系统中,有单周期指令,双周期指令。四周期指令只有乘,除两条指令。指令的运算速度和它的机器周期直接相关,机器周期数较小则执行速度快。
在编程时要注意选用具有同样功能而机器周期数小的指令。每一条指令的执行都可以包括取指和执行两个阶段。在取指阶段,CPU从内部或者外部ROM中取出指令操作码及操作数,然后再执行这条指令。
在8051指令系统中,根据各种操作的繁简程度,其指令可由单字节,双字节和三字节组成。从机器执行指令的速度看,单字节和双字节指令都可能是单周期或双周期,
而三字节指令都是双周期,只有乘,除指令占四个周期,一条指令的字节数表征这条指令在存储器中所占空间大小,而周期数表征运行这条指令所花时间长短,即运行速度。
Ⅳ 关于单片机的运算
因为51单片机是8位的,所以只能以最大8位计算,就是说超过了8位(256)会将中间值存到寄存器里,所以你像你这个运算量蛮大的,有些单片机像32位的,就一条乘法指令就完成了,而51需要很多条,而且在执行时间上,51属于低频,速度速度有点慢的,因为51的指令执行周期比较慢
Ⅳ 完整可用的51单片机PID运算公式
没意义。PID是有很强的针对性的,我以前看到的几个网上的PID程序都还是可以用的。但是需要你自己定的,可不只是PID三个数。采样周期是多少?PID计算后打算用多少位的数据,都是要自己定的,等等。
而所谓温度控制的程序,直接套用的(参数不套用,自己调),没有几个能好用的,要么计算量太大,要么调节不够好。
还是看看公式自己写的好。就算我写了一个在我手上好用的,给你,你那也未必好用,因为还要根据实际去修改一些输出、输入量,或加以限制,不同的系统,这些都是不同的。就像是汽车底盘都是4个轮子,你要的是越野车,我给你个轿车的底盘,上面再怎么改也不好用阿!
Ⅵ 单片机的运算速度怎么计算
每一条程序都有所需要的机器周期数,在很多单片机书的附录中都有,你可以根据自己的程序查一下,然后把它们都加起来(注意循环语句)的总机周乘以每个机周的时间(你的是1us),就知道执行所需要的时间了。
Ⅶ 单片机时钟公式
如果是51单片机
时钟周期是机器周期的12倍
机器周期是晶体振荡器频率的倒数
1/6MHz=1/6us
51单片机的时钟周期为12*(1/6us)=2us.
Ⅷ 单片机中用定时器 和计数器来求频率 计算公式是怎么写的
用定时器来及频率,你只需将定时器定时为1秒,1秒内的脉冲个数就是频率了。如果你一定要公式,非常简单,用计数器计到的脉冲个数除以定时时间就是频率了。其中定时器每计一次的时间是晶振的十二分之一,例如,12M晶振就是(12*10^6)*(1/12)=1us.
Ⅸ 单片机频率计算公式
这得看是什么单片机了:
对于精简指令集性能的单片机的工作频率(1/机器周期)=时钟频率(1/时钟周期).
普通的51单片机来说:频率是1MHZ,时钟周期是1/12us(1除以12M),机器周期是12倍的时钟周期--1us.
周期是频率的倒数 或者频率是周期的倒数
1秒:相当于频率是1HZ ,也就是1/1S =1HZ
那么1/1ms =1/0.001S =1000HZ